X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=Makefile;h=e078b3a4a2500cbf9de98aac01f417a409124c90;hb=975933a9f57835385489ecdeda04a65894705eca;hp=ea97557353d38741e1fb378ee3f96fbb0fbe841a;hpb=daab1c4b9ec9146053f6d4f16ca2b92222104ddc;p=cparser diff --git a/Makefile b/Makefile index ea97557..e078b3a 100644 --- a/Makefile +++ b/Makefile @@ -1,33 +1,40 @@ GOAL = cparser -#FIRM_CFLAGS = `pkg-config --cflags libfirm` -#FIRM_LIBS = `pkg-config --libs libfirm` -FIRM_CFLAGS = -I$(HOME)/projects/firm/libfirm/include -I$(HOME)/projects/firm/libcore -FIRM_LIBS = -L$(HOME)/projects/firm/build/i686-pc-linux-gnu/debug -lfirm -llpp -lcore -lm +FIRM_HOME = $(HOME)/jambuild/ +FIRM_BUILD = $(FIRM_HOME)/build/i686-pc-linux-gnu/debug/ +FIRM_CFLAGS = -I$(FIRM_HOME)/libfirm/include -I$(FIRM_HOME)/obstack -I$(FIRM_HOME)/libcore -I$(FIRM_HOME)/libcore/libcore -I$(FIRM_HOME) +FIRM_LIBS = -L$(FIRM_BUILD) -lfirm -llpp -lcore -lm -lz -ldl -CFLAGS += -Wall -W -Wextra -Werror -O0 -g3 -std=c99 -CFLAGS += -DHAVE_CONFIG_H -CFLAGS += -I . -CFLAGS += $(FIRM_CFLAGS) +CPPFLAGS = -DHAVE_CONFIG_H -DFIRM_BACKEND +CPPFLAGS += -I. +CPPFLAGS += $(FIRM_CFLAGS) -LFLAGS = $(FIRM_LIBS) -llpp -ldl --export-dynamic -g3 +CFLAGS += -Wall -W -Wstrict-prototypes -Wmissing-prototypes -Werror -std=c99 -pedantic +CFLAGS += -O0 -g3 +ICC_CFLAGS = -O0 -g3 -std=c99 -Wall -Werror +#CFLAGS += -O3 -march=pentium4 -fomit-frame-pointer -DNDEBUG + +LFLAGS = $(FIRM_LIBS) SOURCES := \ adt/hashset.c \ - adt/pset.c \ adt/strset.c \ adt/xmalloc.c \ ast.c \ + ast2firm.c \ lexer.c \ main.c \ parser.c \ symbol_table.c \ token.c \ type.c \ - type_hash.c + type_hash.c \ + write_fluffy.c OBJECTS = $(SOURCES:%.c=build/%.o) +SPLINTS = $(addsuffix .splint, $(SOURCES)) + Q = @ .PHONY : all clean dirs @@ -40,11 +47,17 @@ endif .depend: $(SOURCES) @echo "===> DEPEND" - @rm -f $@ && touch $@ && makedepend -p "$@ build/" -Y -f $@ -- $(CFLAGS) -- $(SOURCES) 2> /dev/null && rm $@.bak + @rm -f $@ && touch $@ && makedepend -p "$@ build/" -Y -f $@ -- $(CPPFLAGS) -- $(SOURCES) 2> /dev/null && rm $@.bak $(GOAL): build/adt $(OBJECTS) @echo "===> LD $@" - $(Q)$(CC) -rdynamic $(OBJECTS) $(LFLAGS) -o $(GOAL) + $(Q)$(CC) $(OBJECTS) $(LFLAGS) -o $(GOAL) + +splint: $(SPLINTS) + +%.c.splint: %.c + @echo '===> SPLINT $<' + $(Q)splint $(CPPFLAGS) $< build/adt: @echo "===> MKDIR $@" @@ -52,7 +65,8 @@ build/adt: build/%.o: %.c @echo '===> CC $<' - $(Q)$(CC) $(CFLAGS) -c $< -o $@ +# $(Q)icc $(CPPFLAGS) $(ICC_CFLAGS) -c $< -o $@ + $(Q)$(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@ clean: @echo '===> CLEAN'