Copyright updates:
[exim.git] / src / src / lookups / Makefile
index fce944589338932d0d2aafcc77173e76389aba01..19585bf31a3755f71f579ef1f6000845ec73be9c 100644 (file)
@@ -1,45 +1,76 @@
-# $Cambridge: exim/src/src/lookups/Makefile,v 1.6 2007/08/23 10:16:51 ph10 Exp $
+# Make file for building Exim's lookup modules.
+# This is called from the main make file, after cd'ing
+# to the lookups subdirectory.
+#
+# Copyright (c) The Exim Maintainers 2021
 
-# Make file for building a library containing all the available lookups and
-# calling it lookups.a. This is called from the main make file, after cd'ing
-# to the lookups subdirectory. When the relevant LOOKUP_ macros are not
-# defined, dummy modules get compiled.
+# nb: at build time, the version of this file used will have had some
+#     extra variable definitions and prepended to it and module build rules
+#     interpolated below.
 
-OBJ = cdb.o dbmdb.o dnsdb.o dsearch.o ibase.o ldap.o lsearch.o mysql.o nis.o \
-      nisplus.o oracle.o passwd.o pgsql.o spf.o sqlite.o testdb.o whoson.o \
-      lf_check_file.o lf_quote.o lf_sqlperform.o
+# MAGIC-TAG-MODS-OBJ-RULES-GO-HERE
+
+
+all:             lookups.a lf_quote.o lf_check_file.o lf_sqlperform.o $(MODS)
 
 lookups.a:       $(OBJ)
                 @$(RM_COMMAND) -f lookups.a
                 @echo "$(AR) lookups.a"
                 @$(AR) lookups.a $(OBJ)
                 $(RANLIB) $@
-                @$(RM_COMMAND) -rf ../drtables.o
 
-.SUFFIXES:       .o .c
+.SUFFIXES:       .o .c .so
 .c.o:;           @echo "$(CC) $*.c"
                 $(FE)$(CC) -c $(CFLAGS) $(INCLUDE) $*.c
 
+.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:           $(HDRS) cdb.c       cdb.h
-dbmdb.o:         $(HDRS) dbmdb.c     dbmdb.h
-dnsdb.o:         $(HDRS) dnsdb.c     dnsdb.h
-dsearch.o:       $(HDRS) dsearch.c   dsearch.h
-ibase.o:         $(HDRS) ibase.c     ibase.h
-ldap.o:          $(HDRS) ldap.c      ldap.h
-lsearch.o:       $(HDRS) lsearch.c   lsearch.h
-mysql.o:         $(HDRS) mysql.c     mysql.h
-nis.o:           $(HDRS) nis.c       nis.h
-nisplus.o:       $(HDRS) nisplus.c   nisplus.h
-oracle.o:        $(HDRS) oracle.c    oracle.h
-passwd.o:        $(HDRS) passwd.c    passwd.h
-pgsql.o:         $(HDRS) pgsql.c     pgsql.h
-spf.o:           $(HDRS) spf.c       spf.h
-sqlite.o:        $(HDRS) sqlite.c    sqlite.h
-testdb.o:        $(HDRS) testdb.c    testdb.h
-whoson.o:        $(HDRS) whoson.c    whoson.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
+lmdb.o:          $(HDRS) lmdb.c
+json.o:          $(HDRS) json.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
+readsock.o:      $(HDRS) readsock.c
+redis.o:         $(HDRS) redis.c
+spf.o:           $(HDRS) spf.c
+sqlite.o:        $(HDRS) sqlite.c
+testdb.o:        $(HDRS) testdb.c
+whoson.o:        $(HDRS) 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
+json.so:          $(HDRS) json.c
+ldap.so:          $(HDRS) ldap.c
+lmdb.so:          $(HDRS) lmdb.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
+redis.so:         $(HDRS) redis.c
+spf.so:           $(HDRS) spf.c
+sqlite.so:        $(HDRS) sqlite.c
+testdb.so:        $(HDRS) testdb.c
+whoson.so:        $(HDRS) whoson.c
 
 # End