X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2FMakefile.in;h=1c3d85b228c96532283b58d587ed26dcfd5f3c0e;hb=72b7e8dadd92279596c0f56649775fc056acf449;hp=f2661ed574dd3493c1585192962f80df23241c41;hpb=af592d11b560856f33b6e6a0b2fe64d977cc26a0;p=fw%2Fsdcc diff --git a/src/Makefile.in b/src/Makefile.in index f2661ed5..1c3d85b2 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -8,26 +8,26 @@ include $(PRJDIR)/Makefile.common USE_ALT_LEX = 0 -PORTS = mcs51 z80 avr ds390 +PORTS = $(shell cat ../ports.build) +ALLPORTS = $(shell cat ../ports.all) PORT_LIBS = $(PORTS:%=%/port.a) -LIBS = -lgc -lm @LIBS@ -ifeq ($(HAVE_LIBGC), 1) -else -LIBDIRS = -L$(PRJDIR)/support/gc -LIBGC = $(PRJDIR)/support/gc/libgc.a -endif +LIBS = -lm @LIBS@ + +#CFLAGS += -Werror ifdef SDCC_SUB_VERSION CFLAGS += -DSDCC_SUB_VERSION_STR=\"$(SDCC_SUB_VERSION)\" endif -OBJECTS = SDCCy.o SDCCerr.o SDCChasht.o SDCCmain.o \ +SLIBOBJS = SDCCerr.o NewAlloc.o MySystem.o BuildCmd.o dbuf.o + +OBJECTS = SDCCy.o SDCChasht.o SDCCmain.o \ SDCCsymt.o SDCCopt.o SDCCast.o SDCCmem.o SDCCval.o \ SDCCicode.o SDCCbitv.o SDCCset.o SDCClabel.o \ SDCCBBlock.o SDCCloop.o SDCCcse.o SDCCcflow.o SDCCdflow.o \ - SDCClrange.o SDCCptropt.o SDCCpeeph.o SDCCglue.o spawn.o \ - asm.o + SDCClrange.o SDCCptropt.o SDCCpeeph.o SDCCglue.o \ + asm.o SDCCmacro.o SDCCutil.o SDCCdebug.o cdbFile.o SPECIAL = SDCCy.h ifeq ($(USE_ALT_LEX), 1) @@ -39,15 +39,16 @@ endif SOURCES = $(patsubst %.o,%.c,$(OBJECTS)) -TARGET = $(PRJDIR)/bin/sdcc -PACKIHX = $(PRJDIR)/bin/packihx +TARGET = $(PRJDIR)/bin/sdcc$(EXEEXT) # Compiling entire program or any subproject # ------------------------------------------ -all: ports checkconf $(LIBGC) $(TARGET) $(PACKIHX) +all: checkconf $(TARGET) -ports: - for i in $(PORTS); do $(MAKE) -C $$i; done +$(PORT_LIBS): FORCE + $(MAKE) -C `dirname $@` + +FORCE: $(PRJDIR)/support/gc/libgc.a: cd $(PRJDIR)/support/gc && $(MAKE) @@ -55,15 +56,14 @@ $(PRJDIR)/support/gc/libgc.a: # Compiling and installing everything and runing test # --------------------------------------------------- install: all installdirs - $(INSTALL) -s $(TARGET) $(bindir)/sdcc - $(INSTALL) $(PACKIHX) $(bindir)/packihx + $(INSTALL) $(TARGET) `echo $(bindir)/sdcc$(EXEEXT)|sed '$(transform)'` + $(STRIP) `echo $(bindir)/sdcc$(EXEEXT)|sed '$(transform)'` # Deleting all the installed files # -------------------------------- uninstall: - rm -f $(bindir)/sdcc - + rm -f $(bindir)/sdcc$(EXEEXT) # Performing self-test # -------------------- @@ -94,16 +94,15 @@ include clean.mk # My rules # -------- -$(TARGET): $(OBJECTS) $(PORT_LIBS) - $(CC) -o $@ $(OBJECTS) $(PORT_LIBS) $(LIBDIRS) $(LIBS) - -$(PACKIHX): packihx - $(INSTALL) packihx $(PACKIHX) - +$(TARGET): $(SLIBOBJS) $(OBJECTS) $(PORT_LIBS) + $(CC) $(LDFLAGS) -o $@ $(SLIBOBJS) $(OBJECTS) $(PORT_LIBS) $(LIBDIRS) $(LIBS) .c.o: $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ +$(SLIBOBJS):%.o:$(SLIB)/%.c + $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ + reswords.h: reswords.gperf Makefile gperf -o -k1,2,4 -t -C -N is_reserved_word $< > $@ @@ -137,4 +136,3 @@ checkconf: fi # End of main_in.mk/main.mk -