From 4c357d4ece5c4729bac1062f0006b09d81e93590 Mon Sep 17 00:00:00 2001 From: Jeremy Harris Date: Sun, 18 Aug 2024 13:54:11 +0100 Subject: [PATCH] manualroute as dynamic module --- doc/doc-txt/NewStuff | 2 +- src/OS/Makefile-Base | 8 +++++++- src/src/routers/Makefile | 8 ++------ 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/doc/doc-txt/NewStuff b/doc/doc-txt/NewStuff index 1910ad002..3abf799dc 100644 --- a/doc/doc-txt/NewStuff +++ b/doc/doc-txt/NewStuff @@ -14,7 +14,7 @@ Version 4.98 3. Events smtp:fail:protocol and smtp:fail:syntax - 4. JSON lookup support, all the router drivers except manualroute, all the + 4. JSON lookup support, all the router drivers, all the transport drivers except smtp, and all the authenticator drivers except plaintext, gsasl and spa can now be built as loadable modules diff --git a/src/OS/Makefile-Base b/src/OS/Makefile-Base index 3f2d4d883..d80adf37f 100644 --- a/src/OS/Makefile-Base +++ b/src/OS/Makefile-Base @@ -509,6 +509,11 @@ OBJ_EXPERIMENTAL = arc.o \ # 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_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 \ @@ -519,7 +524,7 @@ OBJ_EXIM = acl.o base64.o child.o crypt16.o daemon.o dbfn.o debug.o deliver.o \ route.o search.o sieve.o smtp_in.o smtp_out.o spool_in.o spool_out.o \ std-crypto.o store.o string.o tls.o tod.o transport.o tree.o verify.o \ xtextencode.o environment.o macro.o \ - $(OBJ_LOOKUPS) \ + $(OBJ_LOOKUPS) $(OBJ_ROUTERS) \ local_scan.o $(EXIM_PERL) $(OBJ_WITH_CONTENT_SCAN) \ $(OBJ_EXPERIMENTAL) @@ -918,6 +923,7 @@ drtables.o: $(HDRS) drtables.c # in the sub-directory unless we force that dependency: $(OBJ_LOOKUPS): buildlookups +$(OBJ_ROUTERS): buildrouters # 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/routers/Makefile b/src/src/routers/Makefile index 738e35147..fbca9047a 100644 --- a/src/src/routers/Makefile +++ b/src/src/routers/Makefile @@ -14,13 +14,9 @@ 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 + rf_lookup_hostlist.o rf_queue_add.o rf_self_action.o rf_set_ugid.o -OBJ += $(RF_OBJ) - -all: routers.a $(MODS) +all: $(RF_OBJ) routers.a $(MODS) routers.a: $(OBJ) @$(RM_COMMAND) -f routers.a -- 2.30.2