X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2FMakefile.in;h=46d0e4c6cd78f92b9582265a15a9c9031417eb96;hb=9827bc4a240593f8a3878a105b217bb587260624;hp=baf48592aa27a46d9c167f9cee2dd16a955cd1ae;hpb=2f566bab0a5fe0bf025d6c892d6fc309966618f1;p=fw%2Fsdcc diff --git a/src/Makefile.in b/src/Makefile.in index baf48592..46d0e4c6 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -20,14 +20,14 @@ ifdef SDCC_SUB_VERSION CFLAGS += -DSDCC_SUB_VERSION_STR=\"$(SDCC_SUB_VERSION)\" endif -SLIBOBJS = SDCCerr.o NewAlloc.o MySystem.o BuildCmd.o +SLIBOBJS = SDCCerr.o NewAlloc.o MySystem.o BuildCmd.o dbuf.o findme.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 SDCCmacro.o SDCCutil.o + SDCClrange.o SDCCptropt.o SDCCpeeph.o SDCCglue.o \ + asm.o SDCCmacro.o SDCCutil.o SDCCdebug.o cdbFile.o SDCCdwarf2.o SPECIAL = SDCCy.h ifeq ($(USE_ALT_LEX), 1) @@ -37,16 +37,19 @@ else OBJECTS += SDCClex.o endif +SLIBSOURCES = $(patsubst %.o,$(SLIB)/%.c,$(SLIBOBJS)) SOURCES = $(patsubst %.o,%.c,$(OBJECTS)) TARGET = $(PRJDIR)/bin/sdcc$(EXEEXT) # Compiling entire program or any subproject # ------------------------------------------ -all: ports checkconf $(TARGET) +all: checkconf version.h $(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) @@ -54,14 +57,14 @@ $(PRJDIR)/support/gc/libgc.a: # Compiling and installing everything and runing test # --------------------------------------------------- install: all installdirs - $(INSTALL) $(TARGET) `echo $(bindir)/sdcc|sed '$(transform)'` - $(STRIP) -s `echo $(bindir)/sdcc|sed '$(transform)'` + $(INSTALL) $(TARGET) `echo $(DESTDIR)$(bindir)/sdcc$(EXEEXT)|sed '$(transform)'` + $(STRIP) `echo $(DESTDIR)$(bindir)/sdcc$(EXEEXT)|sed '$(transform)'` # Deleting all the installed files # -------------------------------- uninstall: - rm -f $(bindir)/sdcc + rm -f $(DESTDIR)$(bindir)/sdcc$(EXEEXT) # Performing self-test # -------------------- @@ -76,15 +79,15 @@ installcheck: # Creating installation directories # --------------------------------- installdirs: - $(INSTALL) -d $(bindir) + $(INSTALL) -d $(DESTDIR)$(bindir) # Creating dependencies # --------------------- -dep: Makefile.dep +dep: version.h Makefile.dep -Makefile.dep: $(SOURCES) $(SPECIAL) *.h $(PRJDIR)/*.h - $(CPP) $(CPPFLAGS) $(M_OR_MM) $(SOURCES) >Makefile.dep +Makefile.dep: version.h $(SOURCES) $(SLIBSOURCES) $(SPECIAL) *.h $(PRJDIR)/*.h + $(CPP) $(CPPFLAGS) $(M_OR_MM) $(SOURCES) $(SLIBSOURCES) >Makefile.dep include Makefile.dep include clean.mk @@ -93,7 +96,7 @@ include clean.mk # My rules # -------- $(TARGET): $(SLIBOBJS) $(OBJECTS) $(PORT_LIBS) - $(CC) -o $@ $(SLIBOBJS) $(OBJECTS) $(PORT_LIBS) $(LIBDIRS) $(LIBS) + $(CC) $(LDFLAGS) -o $@ $(SLIBOBJS) $(OBJECTS) $(PORT_LIBS) $(LIBDIRS) $(LIBS) .c.o: $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ @@ -114,6 +117,9 @@ SDCCy.c: SDCC.y SDCClex.c: SDCC.lex SDCCy.h $(LEX) -t $< >$@ +version.h: ../ChangeLog + $(AWK) -f version.awk $< > $@ + .y.c: rm -f $*.cc $*.h $(YACC) -d $< @@ -134,4 +140,3 @@ checkconf: fi # End of main_in.mk/main.mk -