1# Note: we include the additional tweaking of top_builddir, so that LIBTOOL 2# resolves to the correct place. 3top_builddir=@top_builddir@/../.. 4top_srcdir=@top_srcdir@ 5srcdir=@srcdir@ 6 7include $(top_builddir)/Make.rules 8 9.SUFFIXES: .la .lo 10 11EXEEXT=@EXEEXT@ 12SHARED_CFLAGS=-DPR_SHARED_MODULE 13SHARED_LDFLAGS=-avoid-version -export-dynamic -module 14VPATH=@srcdir@ 15 16MODULE_NAME=mod_auth_otp 17MODULE_OBJS=mod_auth_otp.o base32.o otp.o crypto.o db.o 18SHARED_MODULE_OBJS=mod_auth_otp.lo base32.lo otp.lo crypto.lo db.lo 19UTILS_LIBS=@UTILS_LIBS@ 20UTILS_OBJS=base32.o otp.o crypto.o auth-otp.o 21UTILS_API_OBJS=../../src/pool.o \ 22 ../../src/str.o 23 24# Necessary redefinitions 25INCLUDES=-I. -I../.. -I../../include -I$(top_srcdir)/../../include @INCLUDES@ 26CPPFLAGS=$(ADDL_CPPFLAGS) -DHAVE_CONFIG_H $(DEFAULT_PATHS) $(PLATFORM) $(INCLUDES) 27LDFLAGS=-L../../lib @LDFLAGS@ 28 29.c.o: 30 $(CC) $(CPPFLAGS) $(CFLAGS) -c $< 31 32.c.lo: 33 $(LIBTOOL) --mode=compile --tag=CC $(CC) $(CPPFLAGS) $(CFLAGS) $(SHARED_CFLAGS) -c $< 34 35shared: $(SHARED_MODULE_OBJS) 36 $(LIBTOOL) --mode=link --tag=CC $(CC) -o $(MODULE_NAME).la $(SHARED_MODULE_OBJS) -rpath $(LIBEXECDIR) $(LDFLAGS) $(SHARED_LDFLAGS) $(SHARED_MODULE_LIBS) `cat $(top_srcdir)/$(MODULE_NAME).c | grep '$$Libraries:' | sed -e 's/^.*\$$Libraries: \(.*\)\\$$/\1/'` 37 38static: $(MODULE_OBJS) auth-otp$(EXEEXT) 39 $(AR) rc $(MODULE_NAME).a $(MODULE_OBJS) 40 $(RANLIB) $(MODULE_NAME).a 41 42auth-otp$(EXEEXT): $(UTILS_OBJS) 43 $(CC) $(LDFLAGS) -o $@ $(UTILS_OBJS) $(UTILS_API_OBJS) $(UTILS_LIBS) 44 45install: install-headers install-man install-utils 46 if [ -f $(MODULE_NAME).la ] ; then \ 47 $(LIBTOOL) --mode=install --tag=CC $(INSTALL_BIN) $(MODULE_NAME).la $(DESTDIR)$(LIBEXECDIR) ; \ 48 fi 49 50# BSD install -d doesn't work, so ... 51$(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd $(DESTDIR)$(mandir) $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man8: 52 @if [ ! -d $@ ]; then \ 53 mkdir -p $@; \ 54 chown $(INSTALL_USER):$(INSTALL_GROUP) $@; \ 55 chmod 0755 $@; \ 56 fi 57 58install-headers: $(DESTDIR)$(includedir)/proftpd 59 $(INSTALL_MAN) $(MODULE_NAME).h $(DESTDIR)$(includedir)/proftpd/$(MODULE_NAME).h 60 61install-man: $(DESTDIR)$(mandir) $(DESTDIR)$(mandir)/man8 62 $(INSTALL_MAN) $(top_srcdir)/auth-otp.8 $(DESTDIR)$(mandir)/man8 63 64install-utils: $(DESTDIR)$(sbindir) auth-otp$(EXEEXT) 65 $(INSTALL_BIN) auth-otp$(EXEEXT) $(DESTDIR)$(sbindir)/auth-otp$(EXEEXT) 66 67clean: 68 $(LIBTOOL) --mode=clean $(RM) $(MODULE_NAME).a $(MODULE_NAME).la *.o *.lo .libs/*.o 69 -$(RM) auth-otp$(EXEEXT) 70 71distclean: clean 72 $(RM) Makefile t/Makefile $(MODULE_NAME).h config.status config.cache config.log *.gcda *.gcno 73 -$(RM) -r CVS/ RCS/ 74