# HG changeset patch # User Matti Hamalainen # Date 1645829939 -7200 # Node ID fdea5e3d727f919ad41440b66b10887270d25859 # Parent 72513168d94e10d885245892ae137d0cffe5212e Use Makefile macros to simplify some of the rules. diff -r 72513168d94e -r fdea5e3d727f Makefile.gen --- a/Makefile.gen Fri Feb 25 15:36:53 2022 +0200 +++ b/Makefile.gen Sat Feb 26 00:58:59 2022 +0200 @@ -465,57 +465,48 @@ ### ### Tests ### -$(TESTS_BINPATH)blittest$(BINEXT): $(OBJPATH)blittest.o $(DMLIB_A) - $(call LINK_C_BIN, $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) -lm) - -$(TESTS_BINPATH)dzlibtest$(BINEXT): $(OBJPATH)dzlibtest.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(SDL_LDFLAGS) $(ZLIB_LDFLAGS)) +define RULE_TESTS_BIN +$$(TESTS_BINPATH)$(1)$$(BINEXT): $$(OBJPATH)$(1).o $(2) $$(DMLIB_A) + $$(call LINK_C_BIN,$$(DM_LDFLAGS) $$(SDL_LDFLAGS) $(3)) -$(TESTS_BINPATH)plrtest$(BINEXT): $(OBJPATH)plrtest.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(SDL_LDFLAGS) $(ZLIB_LDFLAGS) -lm) +endef -$(TESTS_BINPATH)%test$(BINEXT): $(OBJPATH)%test.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS) -lm) +$(eval $(call RULE_TESTS_BIN,blittest,,$$(SDL_TTF_LDFLAGS) -lm)) +$(eval $(call RULE_TESTS_BIN,dzlibtest,,$$(ZLIB_LDFLAGS))) +$(eval $(call RULE_TESTS_BIN,plrtest,,$$(ZLIB_LDFLAGS) -lm)) +$(eval $(call RULE_TESTS_BIN,%test,,$$(TOOL_LDFLAGS) -lm)) ### ### Tools ### -$(TOOL_BINPATH)fontconv$(BINEXT): $(OBJPATH)fontconv.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) $(ZLIB_LDFLAGS) -lm) - -$(TOOL_BINPATH)data2inc$(BINEXT): $(OBJPATH)data2inc.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS)) - -$(TOOL_BINPATH)packed$(BINEXT): $(OBJPATH)packed.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS) $(ZLIB_LDFLAGS)) +define RULE_TOOL_BIN +$$(TOOL_BINPATH)$(1)$$(BINEXT): $$(OBJPATH)$(1).o $(2) $$(DMLIB_A) + $$(call LINK_C_BIN, $$(DM_LDFLAGS) $$(TOOL_LDFLAGS) $(3)) -$(TOOL_BINPATH)mod2wav$(BINEXT): $(OBJPATH)mod2wav.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS) $(ZLIB_LDFLAGS) -lm) - -$(TOOL_BINPATH)xm2jss$(BINEXT): $(OBJPATH)xm2jss.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS) $(ZLIB_LDFLAGS)) - -$(TOOL_BINPATH)dumpmod$(BINEXT): $(OBJPATH)dumpmod.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS) $(ZLIB_LDFLAGS)) +endef - -$(TOOL_BINPATH)ppl$(BINEXT): $(OBJPATH)ppl.o $(OBJPATH)libgutil.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(ZLIB_LDFLAGS) $(SDL_LDFLAGS) -lm) - -$(TOOL_BINPATH)objlink$(BINEXT): $(OBJPATH)objlink.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS)) +$(eval $(call RULE_TOOL_BIN,fontconv,,\ + $$(SDL_LDFLAGS) $$(SDL_TTF_LDFLAGS) $$(ZLIB_LDFLAGS) -lm)) +$(eval $(call RULE_TOOL_BIN,data2inc,,)) +$(eval $(call RULE_TOOL_BIN,packed,,$(ZLIB_LDFLAGS))) +$(eval $(call RULE_TOOL_BIN,mod2wav,,$(ZLIB_LDFLAGS) -lm)) +$(eval $(call RULE_TOOL_BIN,xm2jss,,$(ZLIB_LDFLAGS))) +$(eval $(call RULE_TOOL_BIN,dumpmod,,$(ZLIB_LDFLAGS))) +$(eval $(call RULE_TOOL_BIN,ppl,\ + $$(OBJPATH)libgutil.o,$$(ZLIB_LDFLAGS) $$(SDL_LDFLAGS) -lm)) +$(eval $(call RULE_TOOL_BIN,objlink,,)) +$(eval $(call RULE_TOOL_BIN,fanalyze,,)) -$(TOOL_BINPATH)fanalyze$(BINEXT): $(OBJPATH)fanalyze.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS)) +$(eval $(call RULE_TOOL_BIN,gfxconv,\ + $$(OBJPATH)lib64gfx.o $$(OBJPATH)lib64fmts.o \ + $$(OBJPATH)lib64util.o $$(OBJPATH)libgfx.o,\ + $$(LIBPNG_LDFLAGS) $$(ZLIB_LDFLAGS))) -$(TOOL_BINPATH)gfxconv$(BINEXT): $(OBJPATH)gfxconv.o $(OBJPATH)lib64gfx.o \ - $(OBJPATH)lib64fmts.o $(OBJPATH)lib64util.o $(OBJPATH)libgfx.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(TOOL_LDFLAGS) $(LIBPNG_LDFLAGS) $(ZLIB_LDFLAGS)) - -$(TOOL_BINPATH)64vw$(BINEXT): $(OBJPATH)64vw.o $(OBJPATH)lib64gfx.o \ - $(OBJPATH)lib64fmts.o $(OBJPATH)lib64util.o $(OBJPATH)libgfx.o $(DMLIB_A) - $(call LINK_C_BIN, $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(ZLIB_LDFLAGS) $(SDL_LDFLAGS)) +$(eval $(call RULE_TOOL_BIN,64vw,\ + $$(OBJPATH)lib64gfx.o $$(OBJPATH)lib64fmts.o \ + $$(OBJPATH)lib64util.o $$(OBJPATH)libgfx.o,\ + $$(LIBPNG_LDFLAGS) $$(ZLIB_LDFLAGS) $$(SDL_LDFLAGS))) ###