Avoid unnecessary copying
[apr-util.git] / Makefile.in
blobdf88b157f976da4cd79586a2b2c95a69a3be77ae
2 # Top-level Makefile for APRUTIL
4 CPP = @CPP@
6 # gets substituted into some targets
7 APRUTIL_MAJOR_VERSION=@APRUTIL_MAJOR_VERSION@
8 APRUTIL_DOTTED_VERSION=@APRUTIL_DOTTED_VERSION@
10 srcdir = @srcdir@
11 VPATH = @srcdir@
13 INCLUDES = @APRUTIL_PRIV_INCLUDES@ @APR_INCLUDES@ @APRUTIL_INCLUDES@
14 APRUTIL_LDFLAGS = @APRUTIL_LDFLAGS@
15 APRUTIL_LIBS = @APRUTIL_LIBS@
17 TARGET_LIB = lib@APRUTIL_LIBNAME@.la
18 INSTALL_SUBDIRS = @APR_ICONV_DIR@ @APR_XML_DIR@
19 EXTRA_SOURCE_DIRS = @APR_ICONV_DIR@ @APR_XML_DIR@
20 APRUTIL_PCFILE = apr-util-$(APRUTIL_MAJOR_VERSION).pc
21 APU_CONFIG = apu-$(APRUTIL_MAJOR_VERSION)-config
22 INSTALL = @INSTALL@
23 INSTALL_DATA = @INSTALL_DATA@
25 APU_MODULES = @APU_MODULES@
26 LINK_MODULE = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(ALL_CFLAGS) $(ALL_LDFLAGS) $(APRUTIL_LDFLAGS) -release $(APRUTIL_MAJOR_VERSION) -module -rpath $(APU_DSO_LIBDIR)
27 APU_DSO_LIBDIR = @APU_DSO_LIBDIR@
29 LT_VERSION = @APU_LTVERSION@
31 EXTRA_OBJECTS = @EXTRA_OBJECTS@
33 LDADD_dbd_pgsql = @LDADD_dbd_pgsql@
34 LDADD_dbd_oracle = @LDADD_dbd_oracle@
35 LDADD_dbd_sqlite2 = @LDADD_dbd_sqlite2@
36 LDADD_dbd_sqlite3 = @LDADD_dbd_sqlite3@
37 LDADD_dbd_mysql = @LDADD_dbd_mysql@
39 TARGETS = $(TARGET_LIB) aprutil.exp apu-config.out $(APU_MODULES)
41 # bring in rules.mk for standard functionality
42 @INCLUDE_RULES@
43 @INCLUDE_OUTPUTS@
45 CLEAN_SUBDIRS = test @APR_ICONV_DIR@ @APR_XML_DIR@
47 CLEAN_TARGETS = exports.c export_vars.c aprutil.exp .make.dirs apu-config.out
48 DISTCLEAN_TARGETS = config.cache config.log config.status libtool \
49 include/private/apu_config.h include/private/apu_private.h \
50 include/private/apu_select_dbm.h include/apr_ldap.h include/apu.h \
51 export_vars.sh $(APU_CONFIG) build/rules.mk include/apu_want.h \
52 apr-util.pc build/pkg/pkginfo
53 EXTRACLEAN_TARGETS = configure aclocal.m4 include/private/apu_config.h.in \
54 exports.c build-outputs.mk \
55 build/apr_common.m4 build/find_apr.m4 build/install.sh \
56 build/config.guess build/config.sub
58 prefix=@prefix@
59 exec_prefix=@exec_prefix@
60 bindir=@bindir@
61 libdir=@libdir@
62 includedir=@includedir@
63 top_srcdir=@abs_srcdir@
64 top_blddir=@abs_builddir@
66 # Create apu-config script suitable for the install tree
67 apu-config.out: $(APU_CONFIG)
68 sed 's,^\(location=\).*$$,\1installed,' < $(APU_CONFIG) > $@
70 install: $(TARGETS) install-modules
71 $(APR_MKDIR) $(DESTDIR)$(includedir) $(DESTDIR)$(libdir)/pkgconfig \
72 $(DESTDIR)$(libdir) $(DESTDIR)$(bindir)
73 for f in $(top_srcdir)/include/*.h $(top_blddir)/include/*.h; do \
74 $(INSTALL_DATA) $${f} $(DESTDIR)$(includedir); \
75 done
76 $(INSTALL_DATA) apr-util.pc $(DESTDIR)$(libdir)/pkgconfig/$(APRUTIL_PCFILE)
77 list='$(INSTALL_SUBDIRS)'; for i in $$list; do \
78 ( cd $$i ; $(MAKE) DESTDIR=$(DESTDIR) install ); \
79 done
80 $(LIBTOOL) --mode=install $(INSTALL) -m 755 $(TARGET_LIB) $(DESTDIR)$(libdir)
81 $(INSTALL_DATA) aprutil.exp $(DESTDIR)$(libdir)
82 $(INSTALL) -m 755 apu-config.out $(DESTDIR)$(bindir)/$(APU_CONFIG)
84 $(TARGET_LIB): $(OBJECTS) $(EXTRA_OBJECTS)
85 $(LINK) @lib_target@ $(EXTRA_OBJECTS) $(ALL_LIBS) $(APRUTIL_LDFLAGS) $(APRUTIL_LIBS)
87 install-modules: install-modules-@APU_HAVE_MODULES@
89 install-modules-no:
91 install-modules-yes: $(APU_MODULES)
92 $(APR_MKDIR) $(DESTDIR)$(APU_DSO_LIBDIR)
93 @for m in $(APU_MODULES); do $(LIBTOOL) $(LT_LTFLAGS) $(LTFLAGS) --mode=install $(INSTALL) -m 755 $$m $(DESTDIR)$(APU_DSO_LIBDIR); done
95 exports.c: $(HEADERS)
96 $(APR_MKEXPORT) $(HEADERS) > $@
98 export_vars.c: $(HEADERS)
99 $(APR_MKVAREXPORT) $(HEADERS) > $@
101 aprutil.exp: exports.c export_vars.c
102 @echo "#! lib@APRUTIL_LIBNAME@.so" > $@
103 @echo "* This file was AUTOGENERATED at build time." >> $@
104 @echo "* Please do not edit by hand." >> $@
105 $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) exports.c | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/\1/' >> $@
106 $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) export_vars.c | sed -e 's/^\#[^!]*//' | sed -e '/^$$/d' >> $@
108 dox:
109 doxygen $(top_srcdir)/docs/doxygen.conf
111 test: check
112 check: $(TARGET_LIB)
113 cd test && $(MAKE) all check
115 .PHONY: install-modules install-modules-yes install-modules-no dox test check