diff --git a/src/sbbs3/GNUmakefile b/src/sbbs3/GNUmakefile index 18e756d5d6122892752cb8507a85d7c644558c36..d4119e3321004db4b0a0fb4b6c0f27074d25b5d4 100644 --- a/src/sbbs3/GNUmakefile +++ b/src/sbbs3/GNUmakefile @@ -165,28 +165,28 @@ vpath %.c $(XPDEV) $(UIFC) vpath %.cpp $(UIFC) # Implicit C Compile Rule for utils -$(EXEODIR)/%.o : %.c +$(EXEODIR)/%.o : %.c $(BUILD_DEPENDS) ifndef bcc @echo $(COMPILE_MSG) $< endif @$(CC) $(CFLAGS) -o $@ -c $< # Implicit C++ Compile Rule for utils -$(EXEODIR)/%.o : %.cpp +$(EXEODIR)/%.o : %.cpp $(BUILD_DEPENDS) ifndef bcc @echo $(COMPILE_MSG) $< endif @$(CCPP) $(CFLAGS) -o $@ -c $< # Implicit C Compile Rule for SBBS -$(LIBODIR)/%.o : %.c +$(LIBODIR)/%.o : %.c $(BUILD_DEPENDS) ifndef bcc @echo $(COMPILE_MSG) $< endif @$(CC) $(CFLAGS) $(SBBSDEFS) -o $@ -c $< # Implicit C++ Compile Rule for SBBS -$(LIBODIR)/%.o : %.cpp +$(LIBODIR)/%.o : %.cpp $(BUILD_DEPENDS) ifndef bcc @echo $(COMPILE_MSG) $< endif @@ -210,75 +210,75 @@ MONO_OBJS = $(CON_OBJS) $(FTP_OBJS) $(WEB_OBJS) \ $(MAIL_OBJS) $(SERVICE_OBJS) # Monolithic Synchronet executable Build Rule -$(SBBSMONO): $(MONO_OBJS) $(OBJS) $(LIBS) $(LIBODIR)/ver.o +$(SBBSMONO): $(MONO_OBJS) $(OBJS) $(LIBS) $(LIBODIR)/ver.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CCPP) -o $@ $(LFLAGS) $^ endif # Synchronet BBS library Link Rule -$(SBBS): $(OBJS) $(LIBS) $(LIBODIR)/ver.o +$(SBBS): $(OBJS) $(LIBS) $(LIBODIR)/ver.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS $(LD) $(LFLAGS) -S -o $(SBBS) $^ $(LIBS) -o $@ endif # FTP Server Link Rule -$(FTPSRVR): $(LIBODIR)/ftpsrvr.o $(SBBSLIB) +$(FTPSRVR): $(LIBODIR)/ftpsrvr.o $(SBBSLIB) $(BUILD_DEPENDS) ifndef BUILD_DEPENDS $(LD) $(LFLAGS) -S $^ $(LIBS) -o $@ endif # Mail Server Link Rule -$(MAILSRVR): $(MAIL_OBJS) $(SBBSLIB) +$(MAILSRVR): $(MAIL_OBJS) $(SBBSLIB) $(BUILD_DEPENDS) ifndef BUILD_DEPENDS $(LD) $(LFLAGS) -S $^ $(LIBS) -o $@ endif # Synchronet Console Build Rule -$(SBBSCON): $(CON_OBJS) $(SBBSLIB) +$(SBBSCON): $(CON_OBJS) $(SBBSLIB) $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @$(CC) $(CFLAGS) -o $@ $^ endif # Specifc Compile Rules -$(LIBODIR)/ftpsrvr.o: ftpsrvr.c ftpsrvr.h +$(LIBODIR)/ftpsrvr.o: ftpsrvr.c ftpsrvr.h $(BUILD_DEPENDS) @echo $(COMPILE_MSG) $< @$(CC) $(CFLAGS) -DFTPSRVR_EXPORTS -o $@ -c $< -$(LIBODIR)/mailsrvr.o: mailsrvr.c mailsrvr.h +$(LIBODIR)/mailsrvr.o: mailsrvr.c mailsrvr.h $(BUILD_DEPENDS) @echo $(COMPILE_MSG) $< @$(CC) $(CFLAGS) -DMAILSRVR_EXPORTS -o $@ -c $< -$(LIBODIR)/mxlookup.o: mxlookup.c +$(LIBODIR)/mxlookup.o: mxlookup.c $(BUILD_DEPENDS) @echo $(COMPILE_MSG) $< @$(CC) $(CFLAGS) -DMAILSRVR_EXPORTS -o $@ -c $< -$(LIBODIR)/mime.o: mime.c +$(LIBODIR)/mime.o: mime.c $(BUILD_DEPENDS) @echo $(COMPILE_MSG) $< @$(CC) $(CFLAGS) -DMAILSRVR_EXPORTS -o $@ -c $< -$(LIBODIR)/websrvr.o: websrvr.c websrvr.h +$(LIBODIR)/websrvr.o: websrvr.c websrvr.h $(BUILD_DEPENDS) @echo $(COMPILE_MSG) $< @$(CC) $(CFLAGS) -DWEBSRVR_EXPORTS -o $@ -c $< -$(LIBODIR)/base64.o: base64.c base64.h +$(LIBODIR)/base64.o: base64.c base64.h $(BUILD_DEPENDS) @echo $(COMPILE_MSG) $< @$(CC) $(CFLAGS) -DWEBSRVR_EXPORTS -o $@ -c $< -$(LIBODIR)/services.o: services.c services.h +$(LIBODIR)/services.o: services.c services.h $(BUILD_DEPENDS) @echo $(COMPILE_MSG) $< @$(CC) $(CFLAGS) -DSERVICES_EXPORTS -o $@ -c $< # Baja Utility $(BAJA): $(EXEODIR)/baja.o $(EXEODIR)/ars.o $(EXEODIR)/crc32.o \ - $(EXEODIR)/genwrap.o $(EXEODIR)/filewrap.o + $(EXEODIR)/genwrap.o $(EXEODIR)/filewrap.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ endif # Node Utility -$(NODE): $(EXEODIR)/node.o $(EXEODIR)/genwrap.o $(EXEODIR)/filewrap.o +$(NODE): $(EXEODIR)/node.o $(EXEODIR)/genwrap.o $(EXEODIR)/filewrap.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ @@ -287,14 +287,14 @@ $(NODE): $(EXEODIR)/node.o $(EXEODIR)/genwrap.o $(EXEODIR)/filewrap.o SMBLIB = $(EXEODIR)/smblib.o $(EXEODIR)/filewrap.o $(EXEODIR)/crc16.o # FIXSMB Utility -$(FIXSMB): $(EXEODIR)/fixsmb.o $(SMBLIB) $(EXEODIR)/genwrap.o $(EXEODIR)/str_util.o +$(FIXSMB): $(EXEODIR)/fixsmb.o $(SMBLIB) $(EXEODIR)/genwrap.o $(EXEODIR)/str_util.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ endif # CHKSMB Utility -$(CHKSMB): $(EXEODIR)/chksmb.o $(SMBLIB) $(EXEODIR)/conwrap.o $(EXEODIR)/dirwrap.o $(EXEODIR)/genwrap.o +$(CHKSMB): $(EXEODIR)/chksmb.o $(SMBLIB) $(EXEODIR)/conwrap.o $(EXEODIR)/dirwrap.o $(EXEODIR)/genwrap.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ @@ -303,7 +303,7 @@ $(CHKSMB): $(EXEODIR)/chksmb.o $(SMBLIB) $(EXEODIR)/conwrap.o $(EXEODIR)/dirwrap # SMB Utility $(SMBUTIL): $(EXEODIR)/smbutil.o $(SMBLIB) $(EXEODIR)/conwrap.o $(EXEODIR)/dirwrap.o \ $(EXEODIR)/genwrap.o $(EXEODIR)/smbtxt.o $(EXEODIR)/crc32.o $(EXEODIR)/lzh.o \ - $(EXEODIR)/date_str.o $(EXEODIR)/str_util.o + $(EXEODIR)/date_str.o $(EXEODIR)/str_util.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ @@ -328,7 +328,7 @@ $(SBBSECHO): \ $(EXEODIR)/genwrap.o \ $(SMBLIB) \ $(EXEODIR)/smbtxt.o \ - $(EXEODIR)/lzh.o + $(EXEODIR)/lzh.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ @@ -344,7 +344,7 @@ $(ECHOCFG): \ $(EXEODIR)/str_util.o \ $(EXEODIR)/filewrap.o \ $(EXEODIR)/genwrap.o \ - $(EXEODIR)/dirwrap.o + $(EXEODIR)/dirwrap.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ $(UIFC_LFLAGS) @@ -365,7 +365,7 @@ $(ADDFILES): \ $(EXEODIR)/filedat.o \ $(EXEODIR)/filewrap.o \ $(EXEODIR)/dirwrap.o \ - $(EXEODIR)/genwrap.o + $(EXEODIR)/genwrap.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ @@ -386,7 +386,7 @@ $(FILELIST): \ $(EXEODIR)/filedat.o \ $(EXEODIR)/filewrap.o \ $(EXEODIR)/dirwrap.o \ - $(EXEODIR)/genwrap.o + $(EXEODIR)/genwrap.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ @@ -407,7 +407,7 @@ $(MAKEUSER): \ $(EXEODIR)/userdat.o \ $(EXEODIR)/filewrap.o \ $(EXEODIR)/dirwrap.o \ - $(EXEODIR)/genwrap.o + $(EXEODIR)/genwrap.o $(BUILD_DEPENDS) ifndef BUILD_DEPENDS @echo Linking $@ @$(CC) -o $@ $^ @@ -416,7 +416,9 @@ $(MAKEUSER): \ depend: @$(DELETE) $(LIBODIR)/.depend @$(DELETE) $(EXEODIR)/.depend - $(MAKE) BUILD_DEPENDS=1 + $(MAKE) BUILD_DEPENDS=notarealfile + +$(BUILD_DEPENDS): -include $(LIBODIR)/.depend -include $(EXEODIR)/.depend