universe@0: # universe@0: # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. universe@0: # universe@35: # Copyright 2016 Mike Becker. All rights reserved. universe@0: # universe@0: # Redistribution and use in source and binary forms, with or without universe@0: # modification, are permitted provided that the following conditions are met: universe@0: # universe@0: # 1. Redistributions of source code must retain the above copyright universe@0: # notice, this list of conditions and the following disclaimer. universe@0: # universe@0: # 2. Redistributions in binary form must reproduce the above copyright universe@0: # notice, this list of conditions and the following disclaimer in the universe@0: # documentation and/or other materials provided with the distribution. universe@0: # universe@0: # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" universe@0: # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE universe@0: # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE universe@0: # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE universe@0: # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR universe@0: # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF universe@0: # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS universe@0: # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN universe@0: # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) universe@0: # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE universe@0: # POSSIBILITY OF SUCH DAMAGE. universe@0: # universe@0: universe@37: # available configs: gcc, clang universe@37: CONF=gcc universe@0: universe@37: include $(CONF).mk universe@37: universe@55: SRC = frontend.c universe@55: SRC += c2html.c universe@52: SRC += highlighter.c universe@37: universe@37: OBJ = $(SRC:%.c=build/%$(OBJ_EXT)) universe@37: universe@62: all: build build/$(BIN) universe@0: universe@37: build/$(BIN): $(OBJ) universe@37: $(LD) -o $@ $^ $(LDFLAGS) universe@37: universe@37: build/%$(OBJ_EXT): src/%.c universe@37: $(CC) -o $@ $(CFLAGS) -c $< universe@37: universe@0: build: universe@39: $(MKDIR) $@ universe@0: universe@54: test: all universe@30: ./build/$(BIN) test/ctestfile.c -o build/ctest.html \ universe@25: -H test/header.html -F test/footer.html universe@30: ./build/$(BIN) -j test/javatestfile.java -o build/javatest.html \ universe@30: -H test/jheader.html -F test/footer.html universe@30: ./build/$(BIN) test/bigtestfile.c -o build/bigtest.html \ universe@25: -H test/header.html -F test/footer.html universe@30: ./build/$(BIN) -p test/plain.csp -o build/plain.html \ universe@22: -H test/header.html -F test/footer.html universe@41: universe@41: test-v2-regression: test universe@41: diff build/ctest.html test/v2-regression/ctest.html && \ universe@41: diff build/javatest.html test/v2-regression/javatest.html && \ universe@41: diff build/bigtest.html test/v2-regression/bigtest.html && \ universe@41: diff build/plain.html test/v2-regression/plain.html universe@41: universe@0: clean: universe@37: $(RM) $(RMFLAGS) build