X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=build%2FMakebottom;h=bf9a49e966489e0c5479274212b0ec0c56fcc064;hb=99dbc539d5ce9a0b119e7b59ed943c129f617ec0;hp=49714a754cf13cd97904c273861ace9afc6b4d66;hpb=231e128f91f6cc7f23f5d2392dffaa7857f1dcfa;p=libucw.git diff --git a/build/Makebottom b/build/Makebottom index 49714a75..bf9a49e9 100644 --- a/build/Makebottom +++ b/build/Makebottom @@ -39,13 +39,14 @@ force: # Rules for configuration files -run/cf/%: custom/cf/% $(o)/config.mk $(s)/build/genconf +run/cf/%: $(s)/cf/% $(o)/config.mk $(s)/build/genconf $(M)CF $< $(Q)$(s)/build/genconf $< $@ $(o)/config.mk -run/cf/%: $(s)/cf/% $(o)/config.mk $(s)/build/genconf +$(o)/%.cf: $(s)/%.cf $(o)/config.mk $(s)/build/genconf $(M)CF $< $(Q)$(s)/build/genconf $< $@ $(o)/config.mk + $(Q)cp $@ run/cf/$(basename $(@F)) # Rules for libraries @@ -90,43 +91,43 @@ endif # Rules for compiling C -$(o)/%.o: $(s)/%.c $(o)/lib/autoconf.h +$(o)/%.o: $(s)/%.c $(o)/autoconf.h $(M)CC $< $(Q)DEPENDENCIES_OUTPUT="$(o)/depend.new $@" $(CC) $(CFLAGS) -c -o $@ $< -$(o)/%.o: %.c $(o)/lib/autoconf.h +$(o)/%.o: %.c $(o)/autoconf.h $(M)CC $< $(Q)DEPENDENCIES_OUTPUT="$(o)/depend.new $@" $(CC) $(CFLAGS) -c -o $@ $< -%.o: %.c $(o)/lib/autoconf.h +%.o: %.c $(o)/autoconf.h $(M)CC $< $(Q)DEPENDENCIES_OUTPUT="$(o)/depend.new $@" $(CC) $(CFLAGS) -c -o $@ $< -$(o)/%.oo: $(s)/%.c $(o)/lib/autoconf.h +$(o)/%.oo: $(s)/%.c $(o)/autoconf.h $(M)CC-SO $< $(Q)DEPENDENCIES_OUTPUT="$(o)/depend.new $@" $(CC) $(CFLAGS) $(CSHARED) -c -o $@ $< -$(o)/%.oo: %.c $(o)/lib/autoconf.h +$(o)/%.oo: %.c $(o)/autoconf.h $(M)CC-SO $< $(Q)DEPENDENCIES_OUTPUT="$(o)/depend.new $@" $(CC) $(CFLAGS) $(CSHARED) -c -o $@ $< -%.oo: %.c $(o)/lib/autoconf.h +%.oo: %.c $(o)/autoconf.h $(M)CC-SO $< $(Q)DEPENDENCIES_OUTPUT="$(o)/depend.new $@" $(CC) $(CFLAGS) $(CSHARED) -c -o $@ $< -$(o)/%-tt.o: $(s)/%.c $(o)/lib/autoconf.h +$(o)/%-tt.o: $(s)/%.c $(o)/autoconf.h $(M)CC-TEST $< $(Q)DEPENDENCIES_OUTPUT="$(o)/depend.new $@" $(CC) $(CFLAGS) -DTEST -c -o $@ $< # Rules for testing -$(o)/%-t: $(o)/%-tt.o $(LIBSH) +$(o)/%-t: $(o)/%-tt.o $(TESTING_DEPS) $(M)LD-TEST $@ - $(Q)$(CC) $(LDFLAGS) -o $@ $^ $(shell $(s)/build/lib-flags $^) $(LIBS) + $(Q)$(CC) $(LDFLAGS) -o $@ $(shell $(s)/build/lib-flags $^) $(LIBS) $(o)/%.test: $(s)/%.t $(s)/build/tester $(M)TEST $@ - $(Q)$(s)/build/tester $< && touch $@ + $(Q)$(s)/build/tester --rundir=run $(TESTERFLAGS) $< && touch $@ # Rules for binaries @@ -161,15 +162,17 @@ $(o)/%: %.pl $(o)/config.mk $(s)/build/genconf $(Q)chmod +x $@ $(Q)$(call symlink,$@,run/$(BINDIR)) +PERL_MODULE_DIR=UCW + $(o)/%.pm: $(s)/%.pm - $(M)PM $< + $(M)"PM $< -> run/lib/perl5/$(PERL_MODULE_DIR)/$(@F)" $(Q)cp $^ $@ - $(Q)$(call symlink,$@,run/lib/perl5/Sherlock) + $(Q)$(call symlink,$@,run/lib/perl5/$(PERL_MODULE_DIR)) $(o)/%.pm: %.pm - $(M)PM $< + $(M)"PM $< -> run/lib/perl/$(PERL_MODULE_DIR)/$(@F)" $(Q)cp $^ $@ - $(Q)$(call symlink,$@,run/lib/perl5/Sherlock) + $(Q)$(call symlink,$@,run/lib/perl5/$(PERL_MODULE_DIR)) # Rules for data files @@ -183,7 +186,7 @@ $(DATAFILES): $(o)/%: $(s)/% # Default installation target default-install: - SH_EXTRA_RUNDIRS="$(sort $(EXTRA_RUNDIRS))" SH_INSTALL_RUNDIRS="$(sort $(INSTALL_RUNDIRS))" SH_CONFIGS="$(sort $(CONFIGS))" $(s)/build/installer $(INSTALL_DIR) + SH_EXTRA_RUNDIRS="$(sort $(EXTRA_RUNDIRS))" SH_INSTALL_RUNDIRS="$(sort $(INSTALL_RUNDIRS))" SH_CONFIGS="$(sort $(CONFIGS))" SH_AUTO_CONFIRM="$(CONFIRM)" $(s)/build/installer $(INSTALL_DIR) # Don't delete intermediate targets. There shouldn't be any, but due to bugs # in GNU Make rules with targets in not-yet-existing directories are ignored