1251876Speter#
2251876Speter# Top-level Makefile for APRUTIL
3251876Speter#
4251876SpeterCPP = @CPP@
5251876Speter
6251876Speter# gets substituted into some targets
7251876SpeterAPRUTIL_MAJOR_VERSION=@APRUTIL_MAJOR_VERSION@
8251876SpeterAPRUTIL_DOTTED_VERSION=@APRUTIL_DOTTED_VERSION@
9251876Speter
10251876Spetersrcdir = @srcdir@
11251876SpeterVPATH = @srcdir@
12251876Speter
13251876SpeterINCLUDES = @APRUTIL_PRIV_INCLUDES@ @APR_INCLUDES@ @APRUTIL_INCLUDES@
14251876SpeterAPRUTIL_LDFLAGS = @APRUTIL_LDFLAGS@
15251876SpeterAPRUTIL_LIBS = @APRUTIL_LIBS@
16251876Speter
17251876SpeterTARGET_LIB = lib@APRUTIL_LIBNAME@.la
18362181SdimINSTALL_SUBDIRS = @APR_ICONV_DIR@
19362181SdimEXTRA_SOURCE_DIRS = @APR_ICONV_DIR@
20251876SpeterAPRUTIL_PCFILE = apr-util-$(APRUTIL_MAJOR_VERSION).pc
21251876SpeterAPU_CONFIG = apu-$(APRUTIL_MAJOR_VERSION)-config
22251876SpeterINSTALL = @INSTALL@
23251876SpeterINSTALL_DATA = @INSTALL_DATA@
24251876Speter
25251876SpeterAPU_MODULES = @APU_MODULES@
26251876SpeterLINK_MODULE = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(ALL_CFLAGS) $(ALL_LDFLAGS) $(APRUTIL_LDFLAGS) -release $(APRUTIL_MAJOR_VERSION) -module -rpath $(APU_DSO_LIBDIR)
27251876SpeterAPU_DSO_LIBDIR = @APU_DSO_LIBDIR@
28251876Speter
29251876SpeterLT_VERSION = @APU_LTVERSION@
30251876Speter
31251876SpeterEXTRA_OBJECTS = @EXTRA_OBJECTS@
32251876Speter
33251876SpeterLDADD_dbd_pgsql = @LDADD_dbd_pgsql@
34251876SpeterLDADD_dbd_oracle = @LDADD_dbd_oracle@
35251876SpeterLDADD_dbd_sqlite2 = @LDADD_dbd_sqlite2@
36251876SpeterLDADD_dbd_sqlite3 = @LDADD_dbd_sqlite3@
37251876SpeterLDADD_dbd_mysql = @LDADD_dbd_mysql@
38251876SpeterLDADD_dbd_odbc = @LDADD_dbd_odbc@
39251876SpeterLDADD_dbm_db = @LDADD_dbm_db@
40251876SpeterLDADD_dbm_gdbm = @LDADD_dbm_gdbm@
41251876SpeterLDADD_dbm_ndbm = @LDADD_dbm_ndbm@
42251876SpeterLDADD_ldap = @LDADD_ldap@
43251876SpeterLDADD_crypto_openssl = @LDADD_crypto_openssl@
44251876SpeterLDADD_crypto_nss = @LDADD_crypto_nss@
45362181SdimLDADD_crypto_commoncrypto = @LDADD_crypto_commoncrypto@
46251876Speter
47251876SpeterTARGETS = $(TARGET_LIB) aprutil.exp apu-config.out $(APU_MODULES)
48251876Speter
49251876Speter# bring in rules.mk for standard functionality
50251876Speter@INCLUDE_RULES@
51251876Speter@INCLUDE_OUTPUTS@
52251876Speter
53362181SdimCLEAN_SUBDIRS = test @APR_ICONV_DIR@
54251876Speter
55251876SpeterCLEAN_TARGETS = exports.c export_vars.c aprutil.exp .make.dirs apu-config.out
56251876SpeterDISTCLEAN_TARGETS = config.cache config.log config.status libtool \
57251876Speter	include/private/apu_config.h include/private/apu_private.h \
58251876Speter	include/private/apu_select_dbm.h include/apr_ldap.h include/apu.h \
59251876Speter	export_vars.sh $(APU_CONFIG) build/rules.mk include/apu_want.h \
60251876Speter	apr-util.pc build/pkg/pkginfo
61251876SpeterEXTRACLEAN_TARGETS = configure aclocal.m4 include/private/apu_config.h.in \
62251876Speter	exports.c build-outputs.mk \
63251876Speter	build/apr_common.m4 build/find_apr.m4 build/install.sh \
64251876Speter	build/config.guess build/config.sub
65251876Speter
66251876Speterprefix=@prefix@
67251876Speterexec_prefix=@exec_prefix@
68251876Speterbindir=@bindir@
69251876Speterlibdir=@libdir@
70251876Speterincludedir=@includedir@
71251876Spetertop_srcdir=@abs_srcdir@
72251876Spetertop_blddir=@abs_builddir@
73251876Speter
74251876Speter# Create apu-config script suitable for the install tree
75251876Speterapu-config.out: $(APU_CONFIG)
76251876Speter	sed 's,^\(location=\).*$$,\1installed,' < $(APU_CONFIG) > $@
77251876Speter
78251876Speterinstall: $(TARGETS) install-modules
79251876Speter	$(APR_MKDIR) $(DESTDIR)$(includedir) $(DESTDIR)$(libdir)/pkgconfig \
80251876Speter		     $(DESTDIR)$(libdir) $(DESTDIR)$(bindir)
81251876Speter	for f in $(top_srcdir)/include/*.h $(top_blddir)/include/*.h; do \
82251876Speter		$(INSTALL_DATA) $${f} $(DESTDIR)$(includedir); \
83251876Speter	done
84251876Speter	$(INSTALL_DATA) apr-util.pc $(DESTDIR)$(libdir)/pkgconfig/$(APRUTIL_PCFILE)
85251876Speter	list='$(INSTALL_SUBDIRS)'; for i in $$list; do \
86251876Speter		( cd $$i ; $(MAKE) DESTDIR=$(DESTDIR) install ); \
87251876Speter	done
88251876Speter	$(LIBTOOL) --mode=install $(INSTALL) -m 755 $(TARGET_LIB) $(DESTDIR)$(libdir)
89251876Speter	$(INSTALL_DATA) aprutil.exp $(DESTDIR)$(libdir)
90251876Speter	$(INSTALL) -m 755 apu-config.out $(DESTDIR)$(bindir)/$(APU_CONFIG)
91251876Speter
92251876Speter$(TARGET_LIB): $(OBJECTS) $(EXTRA_OBJECTS)
93251876Speter	$(LINK) @lib_target@ $(EXTRA_OBJECTS) $(ALL_LIBS) $(APRUTIL_LDFLAGS) $(APRUTIL_LIBS)
94251876Speter
95251876Speterinstall-modules: install-modules-@APU_HAVE_MODULES@
96251876Speter
97251876Speterinstall-modules-no:
98251876Speter
99251876Speterinstall-modules-yes: $(APU_MODULES)
100251876Speter	$(APR_MKDIR) $(DESTDIR)$(APU_DSO_LIBDIR)
101251876Speter	@for m in $(APU_MODULES); do $(LIBTOOL) $(LT_LTFLAGS) $(LTFLAGS) --mode=install $(INSTALL) -m 755 $$m $(DESTDIR)$(APU_DSO_LIBDIR); done
102251876Speter
103251876Speterexports.c: $(HEADERS)
104251876Speter	$(APR_MKEXPORT) $(HEADERS) > $@
105251876Speter
106251876Speterexport_vars.c: $(HEADERS)
107251876Speter	$(APR_MKVAREXPORT) $(HEADERS) > $@
108251876Speter
109251876Speteraprutil.exp: exports.c export_vars.c
110251876Speter	@echo "#! lib@APRUTIL_LIBNAME@.so" > $@
111251876Speter	@echo "* This file was AUTOGENERATED at build time." >> $@
112251876Speter	@echo "* Please do not edit by hand." >> $@
113251876Speter	$(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) exports.c | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/\1/' >> $@
114251876Speter	$(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) export_vars.c | sed -e 's/^\#[^!]*//' | sed -e '/^$$/d' >> $@
115251876Speter
116251876Speterdox:
117251876Speter	doxygen $(top_srcdir)/docs/doxygen.conf
118251876Speter
119251876Spetertest: check
120251876Spetercheck: $(TARGET_LIB)
121251876Speter	cd test && $(MAKE) all check
122251876Speter
123251876Speter.PHONY: install-modules install-modules-yes install-modules-no dox test check
124