6e4f107cc1186602da7b9c74b66739a3463d591e
[dragonfly.git] / lib / libpam / static_libpam / Makefile
1 # $FreeBSD: head/lib/libpam/static_libpam/Makefile 314901 2017-03-08 08:25:26Z brooks $
2
3 # Build only the static library here.
4 LIB=    pam
5 NOPIC=  yes
6
7 # Already handled by libpam shared version.
8 NOMAN=  noman
9 INCS=
10
11 #
12 # Static modules support
13 #
14 # We build static versions of all modules and of openpam_static.o,
15 # then link them all together into openpam_static_modules.o.  None of
16 # the modules export any symbols, but they store structures with
17 # pointers to their service functions in a linker set which the code
18 # in openpam_static.c traverses to locate the individual modules.
19 #
20 MODULESDIR=     ../modules
21 MODULES=        pam_chroot \
22                 pam_deny \
23                 pam_echo \
24                 pam_exec \
25                 pam_ftpusers \
26                 pam_group \
27                 pam_guest \
28                 pam_lastlog \
29                 pam_login_access \
30                 pam_nologin \
31                 pam_opie \
32                 pam_opieaccess \
33                 pam_passwdqc \
34                 pam_permit \
35                 pam_radius \
36                 pam_rhosts \
37                 pam_rootok \
38                 pam_securetty \
39                 pam_self \
40                 pam_tacplus \
41                 pam_unix
42
43 .if !defined(NO_CRYPT)
44 MODULES+=       pam_ssh
45 .endif
46
47 STATIC_MODULES= ${MODULES:C/.*/${MODULESDIR}\/&\/lib&.a/}
48 STATICOBJS+=    openpam_static_modules.o
49 CLEANFILES+=    openpam_static.o openpam_static.po \
50                 openpam_static_modules.o
51
52 openpam_static_modules.o: openpam_static.o ${STATIC_MODULES}
53         ${CC} -nostdlib ${LDFLAGS} -o ${.TARGET} -r -Wl,--whole-archive ${.ALLSRC}
54
55 openpam_static_modules.po: openpam_static.po ${STATIC_MODULES}
56         ${CC} -nostdlib ${LDFLAGS} -o ${.TARGET} -r -Wl,--whole-archive ${.ALLSRC}
57
58 .PATH: ${.CURDIR}/../libpam
59
60 .include "${.CURDIR}/../libpam/Makefile"