From 7e0622f31e19fea0cf50dea09b5ddc783d20a742 Mon Sep 17 00:00:00 2001 From: Jeremy Harris Date: Mon, 26 Aug 2024 15:45:46 +0100 Subject: [PATCH 1/1] Build: trim un-needed dependency --- src/OS/Makefile-Base | 93 +++++++++++++++++++++++++++++++++------- src/src/auths/Makefile | 14 +----- src/src/lookups/Makefile | 7 +-- src/src/routers/Makefile | 17 +------- 4 files changed, 83 insertions(+), 48 deletions(-) diff --git a/src/OS/Makefile-Base b/src/OS/Makefile-Base index 05979f6cb..2e8728ae2 100644 --- a/src/OS/Makefile-Base +++ b/src/OS/Makefile-Base @@ -508,15 +508,12 @@ OBJ_EXPERIMENTAL = arc.o \ # Targets for final binaries; the main one has a build number which is # updated each time. We don't bother with that for the auxiliaries. -OBJ_LOOKUPS = lookups/lf_quote.o lookups/lf_check_file.o lookups/lf_sqlperform.o -OBJ_ROUTERS = routers/rf_change_domain.o routers/rf_expand_data.o \ - routers/rf_get_errors_address.o \ - routers/rf_get_munge_headers.o routers/rf_get_transport.o \ - routers/rf_get_ugid.o routers/rf_lookup_hostlist.o \ - routers/rf_queue_add.o routers/rf_self_action.o routers/rf_set_ugid.o -OBJ_AUTHS = auths/auth-spa.o auths/call_pam.o auths/call_pwcheck.o \ - auths/call_radius.o auths/check_serv_cond.o auths/get_data.o \ - auths/get_no64_data.o auths/pwcheck.o +OBJ_LOOKUPS = lf_quote.o lf_check_file.o lf_sqlperform.o +OBJ_ROUTERS = rf_change_domain.o rf_expand_data.o rf_get_errors_address.o \ + rf_get_munge_headers.o rf_get_transport.o rf_get_ugid.o \ + rf_lookup_hostlist.o rf_queue_add.o rf_self_action.o rf_set_ugid.o +OBJ_AUTHS = call_pam.o call_pwcheck.o call_radius.o check_serv_cond.o \ + get_data.o get_no64_data.o pwcheck.o OBJ_EXIM = acl.o base64.o child.o crypt16.o daemon.o dbfn.o debug.o deliver.o \ directory.o dns.o drtables.o enq.o exim.o expand.o filter.o \ @@ -921,13 +918,79 @@ xclient.o: $(HDRS) xclient.c drtables.o: $(HDRS) drtables.c -# We depend upon object files built as part of building the lookups library -# When using parallel make, we don't have the dependency to force building -# in the sub-directory unless we force that dependency: +# Some sources live in the lookups, routers or auths directory + +$(OBJ_LOOKUPS) $(OBJ_ROUTERS) $(OBJ_AUTHS): $(HDRS) + +$(OBJ_LOOKUPS): lookups/lf_functions.h +lf_check_file.o: lookups/lf_check_file.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +lf_quote.o: lookups/lf_quote.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +lf_sqlperform.o: lookups/lf_sqlperform.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< + +$(OBJ_ROUTERS): routers/rf_functions.h +rf_change_domain.o: routers/rf_change_domain.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_expand_data.o: routers/rf_expand_data.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_get_errors_address.o: routers/rf_get_errors_address.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_get_munge_headers.o: routers/rf_get_munge_headers.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_get_transport.o: routers/rf_get_transport.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_get_ugid.o: routers/rf_get_ugid.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_lookup_hostlist.o: routers/rf_lookup_hostlist.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_queue_add.o: routers/rf_queue_add.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_self_action.o: routers/rf_self_action.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +rf_set_ugid.o: routers/rf_set_ugid.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< + +auth-spa.o: auths/auth-spa.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +call_pam.o: auths/call_pam.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +call_pwcheck.o: auths/call_pwcheck.c auths/pwcheck.h + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +call_radius.o: auths/call_radius.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +check_serv_cond.o: auths/check_serv_cond.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +get_data.o: auths/get_data.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +get_no64_data.o: auths/get_no64_data.c + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< +pwcheck.o: auths/pwcheck.c auths/pwcheck.h + @echo "$(CC) $<" + $(FE)$(CC) -c $(CFLAGS) -I. $(INCLUDE) $< + -$(OBJ_LOOKUPS): buildlookups -$(OBJ_ROUTERS): buildrouters -$(OBJ_AUTHS): buildauths # The exim monitor's private modules - the sources live in a private # subdirectory. The final binary combines the private modules with some diff --git a/src/src/auths/Makefile b/src/src/auths/Makefile index 5d8c8a001..e6b6abdf2 100644 --- a/src/src/auths/Makefile +++ b/src/src/auths/Makefile @@ -14,10 +14,9 @@ # MAGIC-TAG-MODS-OBJ-RULES-GO-HERE -AF_OBJ = auth-spa.o call_pam.o call_pwcheck.o call_radius.o check_serv_cond.o \ - get_data.o get_no64_data.o pwcheck.o +OBJ += auth-spa.o -all: $(AF_OBJ) auths.a $(MODS) +all: auths.a $(MODS) auths.a: $(OBJ) @$(RM_COMMAND) -f auths.a @@ -37,15 +36,6 @@ SO_FLAGS = -DDYNLOOKUP $(CFLAGS_DYNAMIC) $(CFLAGS) $(INCLUDE) $(DLFLAGS) $(OBJ) $(MOD): $(HDRS) -auth-spa.o: auth-spa.c -call_pam.o: call_pam.c -call_pwcheck.o: call_pwcheck.c pwcheck.h -call_radius.o: call_radius.c -check_serv_cond.o: check_serv_cond.c -get_data.o: get_data.c -get_no64_data.o: get_no64_data.c -pwcheck.o: pwcheck.c pwcheck.h - cram_md5.o: cram_md5.c cram_md5.h cyrus_sasl.o: cyrus_sasl.c cyrus_sasl.h dovecot.o: dovecot.c dovecot.h diff --git a/src/src/lookups/Makefile b/src/src/lookups/Makefile index 12d9d88b4..5193520f9 100644 --- a/src/src/lookups/Makefile +++ b/src/src/lookups/Makefile @@ -10,8 +10,9 @@ # MAGIC-TAG-MODS-OBJ-RULES-GO-HERE +OBJ += spf.o -all: lookups.a lf_quote.o lf_check_file.o lf_sqlperform.o $(MODS) +all: lookups.a $(MODS) lookups.a: $(OBJ) @$(RM_COMMAND) -f lookups.a @@ -26,10 +27,6 @@ lookups.a: $(OBJ) .c.so:; @echo "$(CC) -shared $*.c" $(FE)$(CC) $(LOOKUP_$*_INCLUDE) $(LOOKUP_$*_LIBS) -DDYNLOOKUP $(CFLAGS_DYNAMIC) $(CFLAGS) $(INCLUDE) $(DLFLAGS) $*.c -o $@ -lf_check_file.o: $(HDRS) lf_check_file.c lf_functions.h -lf_quote.o: $(HDRS) lf_quote.c lf_functions.h -lf_sqlperform.o: $(HDRS) lf_sqlperform.c lf_functions.h - cdb.o cdb.so: $(HDRS) cdb.c dbmdb.o dbmdb.so: $(HDRS) dbmdb.c dnsdb.o dnsdb.so: $(HDRS) dnsdb.c diff --git a/src/src/routers/Makefile b/src/src/routers/Makefile index fbca9047a..1980d5c18 100644 --- a/src/src/routers/Makefile +++ b/src/src/routers/Makefile @@ -12,11 +12,7 @@ # MAGIC-TAG-MODS-OBJ-RULES-GO-HERE -RF_OBJ = rf_change_domain.o rf_expand_data.o rf_get_errors_address.o \ - rf_get_munge_headers.o rf_get_transport.o rf_get_ugid.o \ - rf_lookup_hostlist.o rf_queue_add.o rf_self_action.o rf_set_ugid.o - -all: $(RF_OBJ) routers.a $(MODS) +all: routers.a $(MODS) routers.a: $(OBJ) @$(RM_COMMAND) -f routers.a @@ -35,17 +31,6 @@ routers.a: $(OBJ) $(OBJ) $(MOD): $(HDRS) rf_functions.h -rf_change_domain.o: rf_change_domain.c -rf_expand_data.o: rf_expand_data.c -rf_get_errors_address.o: rf_get_errors_address.c -rf_get_munge_headers.o: rf_get_munge_headers.c -rf_get_transport.o: rf_get_transport.c -rf_get_ugid.o: rf_get_ugid.c -rf_lookup_hostlist.o: rf_lookup_hostlist.c -rf_queue_add.o: rf_queue_add.c -rf_self_action.o: rf_self_action.c -rf_set_ugid.o: rf_set_ugid.c - accept.o accept.so: accept.c accept.h dnslookup.o dnslookup.so: dnslookup.c dnslookup.h ipliteral.o ipliteral.so: ipliteral.c ipliteral.h -- 2.30.2