Skip to content

Commit

Permalink
Parallel build fixes for lookups
Browse files Browse the repository at this point in the history
Make lookups depend upon PHDRS not HDRS.
Make parent dir depend upon child build target for lookups
  • Loading branch information
Phil Pennock committed Nov 10, 2011
1 parent ccee179 commit c6fa5df
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 38 deletions.
11 changes: 10 additions & 1 deletion src/OS/Makefile-Base
Original file line number Diff line number Diff line change
Expand Up @@ -303,6 +303,8 @@ OBJ_EXPERIMENTAL = bmi_spam.o spf.o srs.o dcc.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_EXIM = acl.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 \
filtertest.o globals.o dkim.o \
Expand All @@ -311,7 +313,7 @@ OBJ_EXIM = acl.o child.o crypt16.o daemon.o dbfn.o debug.o deliver.o \
rda.o readconf.o receive.o retry.o rewrite.o rfc2047.o \
route.o search.o sieve.o smtp_in.o smtp_out.o spool_in.o spool_out.o \
store.o string.o tls.o tod.o transport.o tree.o verify.o \
lookups/lf_quote.o lookups/lf_check_file.o lookups/lf_sqlperform.o \
$(OBJ_LOOKUPS) \
local_scan.o $(EXIM_PERL) $(OBJ_WITH_CONTENT_SCAN) \
$(OBJ_WITH_OLD_DEMIME) $(OBJ_EXPERIMENTAL)

Expand Down Expand Up @@ -458,6 +460,8 @@ PHDRS = ../config.h ../dbfunctions.h ../dbstuff.h ../exim.h ../functions.h ../gl
version.h::
@../scripts/reversion

cnumber.h: version.h

version.o: $(HDRS) cnumber.h version.h version.c

# This is the dummy module for use by test compiles of individual modules. It
Expand Down Expand Up @@ -611,6 +615,11 @@ dcc.o: $(HDRS) dcc.h dcc.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:

$(OBJ_LOOKUPS): buildlookups

# The exim monitor's private modules - the sources live in a private
# subdirectory. The final binary combines the private modules with some
Expand Down
74 changes: 37 additions & 37 deletions src/src/lookups/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -24,44 +24,44 @@ 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
lf_check_file.o: $(PHDRS) lf_check_file.c lf_functions.h
lf_quote.o: $(PHDRS) lf_quote.c lf_functions.h
lf_sqlperform.o: $(PHDRS) lf_sqlperform.c lf_functions.h

cdb.o: $(HDRS) cdb.c
dbmdb.o: $(HDRS) dbmdb.c
dnsdb.o: $(HDRS) dnsdb.c
dsearch.o: $(HDRS) dsearch.c
ibase.o: $(HDRS) ibase.c
ldap.o: $(HDRS) ldap.c
lsearch.o: $(HDRS) lsearch.c
mysql.o: $(HDRS) mysql.c
nis.o: $(HDRS) nis.c
nisplus.o: $(HDRS) nisplus.c
oracle.o: $(HDRS) oracle.c
passwd.o: $(HDRS) passwd.c
pgsql.o: $(HDRS) pgsql.c
spf.o: $(HDRS) spf.c
sqlite.o: $(HDRS) sqlite.c
testdb.o: $(HDRS) testdb.c
whoson.o: $(HDRS) whoson.c
cdb.o: $(PHDRS) cdb.c
dbmdb.o: $(PHDRS) dbmdb.c
dnsdb.o: $(PHDRS) dnsdb.c
dsearch.o: $(PHDRS) dsearch.c
ibase.o: $(PHDRS) ibase.c
ldap.o: $(PHDRS) ldap.c
lsearch.o: $(PHDRS) lsearch.c
mysql.o: $(PHDRS) mysql.c
nis.o: $(PHDRS) nis.c
nisplus.o: $(PHDRS) nisplus.c
oracle.o: $(PHDRS) oracle.c
passwd.o: $(PHDRS) passwd.c
pgsql.o: $(PHDRS) pgsql.c
spf.o: $(PHDRS) spf.c
sqlite.o: $(PHDRS) sqlite.c
testdb.o: $(PHDRS) testdb.c
whoson.o: $(PHDRS) whoson.c

cdb.so: $(HDRS) cdb.c
dbmdb.so: $(HDRS) dbmdb.c
dnsdb.so: $(HDRS) dnsdb.c
dsearch.so: $(HDRS) dsearch.c
ibase.so: $(HDRS) ibase.c
ldap.so: $(HDRS) ldap.c
lsearch.so: $(HDRS) lsearch.c
mysql.so: $(HDRS) mysql.c
nis.so: $(HDRS) nis.c
nisplus.so: $(HDRS) nisplus.c
oracle.so: $(HDRS) oracle.c
passwd.so: $(HDRS) passwd.c
pgsql.so: $(HDRS) pgsql.c
spf.so: $(HDRS) spf.c
sqlite.so: $(HDRS) sqlite.c
testdb.so: $(HDRS) testdb.c
whoson.so: $(HDRS) whoson.c
cdb.so: $(PHDRS) cdb.c
dbmdb.so: $(PHDRS) dbmdb.c
dnsdb.so: $(PHDRS) dnsdb.c
dsearch.so: $(PHDRS) dsearch.c
ibase.so: $(PHDRS) ibase.c
ldap.so: $(PHDRS) ldap.c
lsearch.so: $(PHDRS) lsearch.c
mysql.so: $(PHDRS) mysql.c
nis.so: $(PHDRS) nis.c
nisplus.so: $(PHDRS) nisplus.c
oracle.so: $(PHDRS) oracle.c
passwd.so: $(PHDRS) passwd.c
pgsql.so: $(PHDRS) pgsql.c
spf.so: $(PHDRS) spf.c
sqlite.so: $(PHDRS) sqlite.c
testdb.so: $(PHDRS) testdb.c
whoson.so: $(PHDRS) whoson.c

# End

0 comments on commit c6fa5df

Please sign in to comment.