a15fd9b380a058dffc31d2e6f043134013115b80
[exim.git] / src / src / miscmods / Makefile
1 # Make file for building Exim's lookup modules.
2 # This is called from the main make file, after cd'ing
3 # to the misc_modulessubdirectory.
4 #
5 # Copyright (c) The Exim Maintainers 2024
6
7 # nb: at build time, the version of this file used will have had some
8 #     extra variable definitions and prepended to it and module build rules
9 #     interpolated below. This is done by scripts/lookups-Makefile.
10
11 # MAGIC-TAG-MODS-OBJ-RULES-GO-HERE
12
13 OBJ += dummy.o
14
15 all:            miscmods.a $(MODS)
16
17 miscmods.a:     $(OBJ)
18                 @$(RM_COMMAND) -f miscmods.a
19                 @echo "$(AR) miscmods.a"
20                 @$(AR) miscmods.a $(OBJ)
21                 $(RANLIB) $@
22
23 .SUFFIXES:      .o .c .so
24 .c.o:;          @echo "$(CC) $*.c"
25                 $(FE)$(CC) -c $(CFLAGS) $(INCLUDE) $*.c
26
27 .c.so:;         @echo "$(CC) -shared $*.c"
28                 $(FE)$(CC) $(SUPPORT_$*_INCLUDE) $(SUPPORT_$*_LIBS) \
29                         -DDYNLOOKUP $(CFLAGS_DYNAMIC) $(CFLAGS) $(INCLUDE) \
30                         $(DLFLAGS) $*.c -o $@
31
32 # Note that the sources from pdkim/ are linked into the build.../miscmods/ dir
33 # by scripts/Makelinks.
34 arc.o   arc.so:         $(HDRS) pdkim.h arc.c
35 dkim.o  dkim.so:        $(HDRS) dkim.h dkim.c dkim_transport.c \
36                         crypt_ver.h pdkim.h pdkim_hash.h pdkim.c \
37                         signing.h signing.c
38 dmarc.o dmarc.so:       $(HDRS) pdkim.h dmarc.h dmarc.c
39 dummy.o:                dummy.c
40 spf.o   spf.so:         $(HDRS) spf.h spf.c
41
42 dkim.o:
43                 @echo "$(CC) dkim.c dkim_transport.c pdkim.c signing.c"
44                 $(FE)$(CC) -r $(LDFLAGS_PARTIAL) -o $@ $(CFLAGS) $(INCLUDE) \
45                         dkim.c dkim_transport.c pdkim.c signing.c
46
47 dkim.so:
48                 @echo "$(CC) -shared dkim.c dkim_transport.c pdkim.c signing.c"
49                 $(FE)$(CC) -DDYNLOOKUP $(CFLAGS_DYNAMIC) -o $@ \
50                         $(SUPPORT_$*_INCLUDE) $(SUPPORT_$*_LIBS) \
51                         $(CFLAGS) $(INCLUDE) $(DLFLAGS) \
52                         dkim.c dkim_transport.c pdkim.c signing.c
53
54 # End