# HG changeset patch # User Mike Becker # Date 1471946741 -7200 # Node ID 1a67185e5496ac17ccea9377ed6610d49a9ab757 # Parent be60c22cddfef24611370185f64535db4c7cde44 adds version number and changes build system diff -r be60c22cddfe -r 1a67185e5496 Makefile --- a/Makefile Fri Mar 04 15:02:22 2016 +0100 +++ b/Makefile Tue Aug 23 12:05:41 2016 +0200 @@ -26,17 +26,31 @@ # POSSIBILITY OF SUCH DAMAGE. # -include conf.mk +# available configs: gcc, clang +CONF=gcc -all: clean compile +include $(CONF).mk + + +SRC = c2html.c +SRC += codegens.c +SRC += ccodegen.c +SRC += javacodegen.c + +OBJ = $(SRC:%.c=build/%$(OBJ_EXT)) + +all: build build/$(BIN) -compile: build - cd src; $(MAKE) - +build/$(BIN): $(OBJ) + $(LD) -o $@ $^ $(LDFLAGS) + +build/%$(OBJ_EXT): src/%.c + $(CC) -o $@ $(CFLAGS) -c $< + build: $(MKDIR) build -test: compile +test: build/$(BIN) ./build/$(BIN) test/ctestfile.c -o build/ctest.html \ -H test/header.html -F test/footer.html ./build/$(BIN) -j test/javatestfile.java -o build/javatest.html \ @@ -46,4 +60,4 @@ ./build/$(BIN) -p test/plain.csp -o build/plain.html \ -H test/header.html -F test/footer.html clean: - $(RM) -f -R build + $(RM) $(RMFLAGS) build diff -r be60c22cddfe -r 1a67185e5496 clang.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/clang.mk Tue Aug 23 12:05:41 2016 +0200 @@ -0,0 +1,40 @@ +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. +# +# Copyright 2016 Mike Becker. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# + +# system related +MKDIR = mkdir +RM = rm +RMFLAGS = -fR + +# build related +BIN = c2html +CC = clang +CFLAGS = -O2 +LD = clang +LDFLAGS = +OBJ_EXT = .o diff -r be60c22cddfe -r 1a67185e5496 conf.mk --- a/conf.mk Fri Mar 04 15:02:22 2016 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,39 +0,0 @@ -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. -# -# Copyright 2016 Mike Becker. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -# system related -MKDIR = mkdir -RM = rm - -# build related -BIN = c2html -CC = gcc -CFLAGS = -O2 -std=gnu99 -LD = gcc -LDFLAGS = -OBJ_EXT = .o diff -r be60c22cddfe -r 1a67185e5496 gcc.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gcc.mk Tue Aug 23 12:05:41 2016 +0200 @@ -0,0 +1,40 @@ +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. +# +# Copyright 2016 Mike Becker. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# + +# system related +MKDIR = mkdir +RM = rm +RMFLAGS = -fR + +# build related +BIN = c2html +CC = gcc +CFLAGS = -O2 -std=gnu99 +LD = gcc +LDFLAGS = +OBJ_EXT = .o diff -r be60c22cddfe -r 1a67185e5496 src/Makefile --- a/src/Makefile Fri Mar 04 15:02:22 2016 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,44 +0,0 @@ -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. -# -# Copyright 2016 Mike Becker. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. -# - -include ../conf.mk - -SRC = c2html.c -SRC += codegens.c -SRC += ccodegen.c -SRC += javacodegen.c - -OBJ = $(SRC:%.c=../build/%$(OBJ_EXT)) - -all: $(OBJ) - $(LD) -o ../build/$(BIN) $^ $(LDFLAGS) - - -../build/%$(OBJ_EXT): %.c - $(CC) -o $@ $(CFLAGS) -c $< - diff -r be60c22cddfe -r 1a67185e5496 src/c2html.c --- a/src/c2html.c Fri Mar 04 15:02:22 2016 +0100 +++ b/src/c2html.c Tue Aug 23 12:05:41 2016 +0200 @@ -111,9 +111,8 @@ " -F