2 ##########################################################################
4 SRC = uams_pam.c uams_passwd.c uams_randnum.c uams_guest.c uams_dhx_pam.c \
6 OBJ = uams_pam.o uams_passwd.o uams_randnum.o uams_guest.o uams_dhx_pam.o \
8 SHAREDOBJS = uams_pam.so uams_passwd.so uams_randnum.so uams_guest.so \
9 uams_dhx_pam.so uams_dhx_passwd.so
11 CFLAGS= -I../../include ${CSHAREDFLAGS} ${DEFS} ${AFSDEFS} ${OPTOPTS}
19 if [ x"${KRBDIR}" != x ]; then \
20 KRBLIBS="-lkrb -ldes"; \
21 KRBLIBDIRS="-L${KRBDIR}/lib"; \
22 KRBINCPATH="-I${KRBDIR}/include"; \
25 if [ x"${AFSDIR}" != x ]; then \
26 AFSLIBS="-lkauth -lprot -lubik -lauth -lsys -lrxkad -lrx -laudit \
27 -llwp -lcmd -lcom_err ${AFSDIR}/lib/afs/util.a -ldes"; \
28 AFSLIBDIRS="-L${AFSDIR}/lib -L${AFSDIR}/lib/afs"; \
29 AFSINCPATH="-I${AFSDIR}/include"; \
32 if [ x"${DESDIR}" != x ]; then \
34 if [ "${DESDIR}" != "/usr" ]; then \
35 CRYPTOLIBDIRS="-L${DESDIR}/lib"; \
36 CRYPTOINCPATH="-I${DESDIR}/include"; \
38 CRYPTODEFS="-DUAM_RNDNUM"; \
40 if [ x"${CRYPTODIR}" != x ]; then \
41 CRYPTOLIBS="-lcrypto"; \
42 if [ "${CRYPTODIR}" != "/usr" ]; then \
43 CRYPTOLIBDIRS="-L${CRYPTODIR}/lib"; \
44 CRYPTOINCPATH="-I${CRYPTODIR}/include -I${CRYPTODIR}/include/openssl"; \
46 CRYPTODEFS="-DUAM_RNDNUM -DUAM_DHX"; \
48 if [ x"${PAMDIR}" != x ]; then \
50 if [ "${PAMDIR}" != "/usr" ]; then \
51 PAMLIBDIRS="-L${PAMDIR}/lib"; \
52 PAMINCPATH="-I${PAMDIR}/include"; \
54 PAMDEFS="-DUSE_PAM"; \
56 if [ x"${CRACKDIR}" != x ]; then \
57 CRACKLIBS="-lcrack"; \
58 if [ "${CRACKDIR}" != "/usr" ]; then \
59 CRACKLIBDIRS="-L${CRACKDIR}/lib"; \
60 CRACKINCPATH="-I${CRACKDIR}/include"; \
62 CRACKDEFS="-DUSE_CRACKLIB -D_PATH_CRACKLIB=\\\"/usr/lib/cracklib_dict\\\""; \
64 if [ -f /lib/libcrypt.a -o -f /usr/lib/libcrypt.a ] ; then \
65 if [ x"${USE_CRYPTLIB}" != x"no" ]; then \
69 if [ ! -f /usr/include/crypt.h -a ! -f /usr/local/include/crypt.h ]; then \
70 CRYPTDEFS="-DNO_CRYPT_H"; \
72 ${MAKE} ${MFLAGS} CC="${CC}" ADDLIBS="${ADDLIBS}" DEFS="${DEFS}" \
73 OPTOPTS="${OPTOPTS}" DESDIR="${DESDIR}" \
75 KRBLIBS="$${KRBLIBS}" KRBLIBDIRS="$${KRBLIBDIRS}" \
76 KRBINCPATH="$${KRBINCPATH}" KRBDEFS="$${KRBDEFS}" \
77 AFSLIBS="$${AFSLIBS}" AFSLIBDIRS="$${AFSLIBDIRS}" \
78 CRYPTOLIBS="$${CRYPTOLIBS}" CRYPTOLIBDIRS="$${CRYPTOLIBDIRS}" \
79 PAMLIBS="$${PAMLIBS}" PAMLIBDIRS="$${PAMLIBDIRS}" \
80 CRYPTLIB="$${CRYPTLIB}" CRYPTDEFS="$${CRYPTDEFS}" \
81 CRYPTOINCPATH="$${CRYPTOINCPATH}" CRYPTODEFS="$${CRYPTODEFS}" \
82 PAMINCPATH="$${PAMINCPATH}" PAMDEFS="$${PAMDEFS}" \
83 AFSINCPATH="$${AFSINCPATH}" AFSDEFS="$${AFSDEFS}" \
84 CRACKLIBS="$${CRACKLIBS}" \
85 CRACKINCPATH="$${CRACKINCPATH}" CRACKDEFS="$${CRACKDEFS}" \
86 ${SHAREDOBJS} ${SUBDIRS}
92 ${LDSHARED} ${LDSHAREDFLAGS} -o $@ $*.o
94 uams_passwd.so: uams_passwd.c
95 ${CC} ${CFLAGS} ${CRYPTDEFS} -c $<
96 ${LDSHARED} ${LDSHAREDFLAGS} -o $@ $*.o ${CRYPTLIB}
98 uams_pam.so: uams_pam.c
99 ${CC} ${CFLAGS} ${PAMINCPATH} ${PAMDEFS} -c $<
100 ${LDSHARED} ${LDSHAREDFLAGS} -o $@ $*.o ${PAMLIBDIRS} ${PAMLIBS}
102 uams_randnum.so: uams_randnum.c
103 ${CC} ${CFLAGS} ${CRYPTOINCPATH} ${CRYPTODEFS} ${CRACKINCPATH} \
105 ${LDSHARED} ${LDSHAREDFLAGS} -o $@ $*.o ${CRYPTOLIBDIRS} \
106 ${CRYPTOLIBS} ${CRACKLIBS}
108 uams_dhx_passwd.so: uams_dhx_passwd.c
109 ${CC} ${CFLAGS} ${CRYPTDEFS} ${CRYPTOINCPATH} ${CRYPTODEFS} -c $<
110 ${LDSHARED} ${LDSHAREDFLAGS} -o $@ $*.o ${CRYPTOLIBDIRS} ${CRYPTOLIBS}
112 uams_dhx_pam.so: uams_dhx_pam.c
113 ${CC} ${CFLAGS} ${PAMINCPATH} ${CRYPTOINCPATH} ${CRYPTODEFS} \
115 ${LDSHARED} ${LDSHAREDFLAGS} -o $@ $*.o ${CRYPTOLIBDIRS} \
116 ${CRYPTOLIBS} ${PAMLIBDIRS} ${PAMLIBS}
118 # this is getting pushed into a subdirectory
119 uams_kerberos.so: uams_kerberos.c
120 ${CC} ${CFLAGS} ${KRBINCPATH} ${KRBDEFS} -c $<
121 ${LDSHARED} ${LDSHAREDFLAGS} -o $@ $< ${KRBLIBDIRS} ${KRBLIBS}
124 -for i in ${SUBDIRS}; \
125 do (cd $$i; ${MAKE} ${MFLAGS} CC="${CC}" \
126 ADDLIBS="${ADDLIBS}" DEFS="${DEFS}" OPTOPTS="${OPTOPTS}" \
127 SBINDIR="${SBINDIR}" BINDIR="${BINDIR}" RESDIR="${RESDIR}" \
128 ETCDIR="${ETCDIR}" LIBDIR="${LIBDIR}" INCDIR="${INCDIR}" \
129 DESTDIR="${DESTDIR}" INSTALL="${INSTALL}" \
132 -mkdir ${RESDIR}/uams
133 ${INSTALL} -c *.so ${RESDIR}/uams
134 -rm ${RESDIR}/uams/uams_clrtxt.so ${RESDIR}/uams/uams_dhx.so
135 if [ x"${PAMDIR}" != x ]; then \
136 (cd ${RESDIR}/uams; ln -s uams_pam.so uams_clrtxt.so; \
137 ln -s uams_dhx_pam.so uams_dhx.so); \
139 (cd ${RESDIR}/uams; ln -s uams_passwd.so uams_clrtxt.so; \
140 ln -s uams_dhx_passwd.so uams_dhx.so); \
144 rm -f a.out core* *.o *.bak *[Ee]rrs tags
149 for i in ${SRC}; do \
150 ctags -t -a -f ${TAGSFILE} $$cwd/$$i; \
154 for i in ${SRC} ; do \
155 ${CC} -M ${DEFS} ${INCPATH} $$i | \
156 awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \
157 else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
158 else rec = rec " " $$2 } } \
159 END { print rec } ' >> makedep; done
160 sed -n '1,/^# DO NOT DELETE THIS LINE/p' Makefile > Makefile.tmp
161 cat makedep >> Makefile.tmp
163 echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile.tmp
164 echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile.tmp
165 echo '# see make depend above' >> Makefile.tmp
167 cp Makefile Makefile.bak
168 mv Makefile.tmp Makefile
170 # DO NOT DELETE THIS LINE