shlib-overhaul-20060802
[openafs.git] / src / pam / Makefile.in
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
4 # This software has been released under the terms of the IBM Public
5 # License.  For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
7
8 srcdir=@srcdir@
9 include @TOP_OBJDIR@/src/config/Makefile.config
10
11
12   LIBSA = ${TOP_LIBDIR}/libprot.a ${TOP_LIBDIR}/libubik.a
13 AFSLIBS = ${TOP_LIBDIR}/librxkad.a ${TOP_LIBDIR}/libsys.a \
14           ${TOP_LIBDIR}/libdes.a ${TOP_LIBDIR}/librx.a \
15           ${TOP_LIBDIR}/liblwp.a ${TOP_LIBDIR}/libaudit.a \
16           ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/libcom_err.a \
17           ${TOP_LIBDIR}/util.a
18
19 LDFLAGS = ${SHLIB_LDFLAGS}
20    LIBS = ${TOP_LIBDIR}/libkauth.a ${LIBSA} ${TOP_LIBDIR}/libauth.a \
21           ${AFSLIBS} ${PAM_LIBS} @LIB_AFSDB@
22   KLIBS = ${TOP_LIBDIR}/libkauth.krb.a ${LIBSA} ${TOP_LIBDIR}/libauth.krb.a \
23           ${AFSLIBS} ${PAM_LIBS} @LIB_AFSDB@
24  SHOBJS = afs_account.o afs_session.o afs_password.o \
25           afs_pam_msg.o afs_message.o AFS_component_version_number.o
26    OBJS = $(SHOBJS) test_pam.o
27 INCLUDES=-I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} 
28 CFLAGS =  ${PAM_DBG} ${PAM_OPTMZ} ${INCLUDES} ${PAM_CFLAGS}
29
30 all: test_pam pam_afs.so.1 pam_afs.krb.so.1
31
32 afs_setcred.o: afs_setcred.c afs_pam_msg.h afs_message.h afs_util.h
33         ${CC} ${CFLAGS} -c ${srcdir}/afs_setcred.c -o afs_setcred.o
34
35 afs_setcred_krb.o: afs_setcred.c afs_pam_msg.h afs_message.h afs_util.h
36         ${CC} ${CFLAGS} -DAFS_KERBEROS_ENV -c ${srcdir}/afs_setcred.c -o afs_setcred_krb.o
37
38 afs_auth.o: afs_auth.c afs_pam_msg.h afs_message.h afs_util.h
39         ${CC} ${CFLAGS} -c ${srcdir}/afs_auth.c -o afs_auth.o
40
41 afs_auth_krb.o: afs_auth.c afs_pam_msg.h afs_message.h afs_util.h
42         ${CC} ${CFLAGS} -DAFS_KERBEROS_ENV -c ${srcdir}/afs_auth.c -o afs_auth_krb.o
43
44 afs_util.o: afs_util.c afs_pam_msg.h afs_message.h afs_util.h
45         ${CC} ${CFLAGS} -c ${srcdir}/afs_util.c -o afs_util.o
46
47 afs_util_krb.o: afs_util.c afs_pam_msg.h afs_message.h afs_util.h
48         ${CC} ${CFLAGS} -DAFS_KERBEROS_ENV -c ${srcdir}/afs_util.c -o afs_util_krb.o
49
50 pam_afs.so.1: $(SHOBJS) afs_setcred.o afs_auth.o afs_util.o
51         ../config/shlib-build -d $(srcdir) -f pam_afs.so.1 -l pam_afs -- \
52                 afs_setcred.o afs_auth.o afs_util.o ${SHOBJS} ${LIBS}
53
54 pam_afs.krb.so.1: $(SHOBJS) afs_setcred_krb.o afs_auth_krb.o afs_util_krb.o
55         ../config/shlib-build -d $(srcdir) -f pam_afs.krb.so.1 -l pam_afs -- \
56                 afs_setcred_krb.o afs_auth_krb.o afs_util_krb.o \
57                 ${SHOBJS} ${KLIBS}
58
59 test_pam: test_pam.o
60         set -x; \
61         case "$(SYS_NAME)" in \
62         hp_ux* | ia64_hpux*) \
63                 $(CC) $(CFLAGS) -o $@ test_pam.o ${PAM_LIBS};; \
64         sun*_5*) \
65                 $(CC) $(CFLAGS) -o $@ test_pam.o ${PAM_LIBS};; \
66         *linux*) \
67                 $(CC) $(CFLAGS) -rdynamic -o $@ test_pam.o -lpam -ldl;; \
68         *fbsd*| *nbsd*) \
69                 $(CC) $(CFLAGS) -rdynamic -o $@ test_pam.o -lpam ;; \
70         *) \
71                 echo No link line for system $(SYS_NAME). ;; \
72         esac
73
74 install: pam_afs.so.1 pam_afs.krb.so.1
75         ${INSTALL} -d ${DESTDIR}${libdir}
76         ${INSTALL_DATA} pam_afs.so.1 ${DESTDIR}${libdir}/pam_afs.so.1
77         ${INSTALL_DATA} pam_afs.krb.so.1 ${DESTDIR}${libdir}/pam_afs.krb.so.1
78
79 dest: pam_afs.so.1 pam_afs.krb.so.1
80         ${INSTALL} -d ${DEST}/lib
81         ${INSTALL_DATA} pam_afs.so.1 ${DEST}/lib/pam_afs.so.1
82         ${INSTALL_DATA} pam_afs.krb.so.1 ${DEST}/lib/pam_afs.krb.so.1
83
84 afs_pam_msg.o: afs_pam_msg.c afs_pam_msg.h afs_message.h
85 afs_message.o: afs_message.c afs_message.h
86
87 #
88 # Misc. targets
89 #
90 clean:
91         $(RM) -f *.a *.o *.so.1 test_pam core *~ AFS_component_version_number.c
92
93 include ../config/Makefile.version