summaryrefslogtreecommitdiff
path: root/Makefile.in
blob: 6402e79cec2c196b989050d2d169b8f2cf8f7d1e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#
# APR (Apache Portable Runtime) library Makefile.
#
CPP = @CPP@

# get substituted into some targets
APR_MAJOR_VERSION=@APR_MAJOR_VERSION@

#
# Macros for supporting directories
#
INCDIR=./include
INCDIR1=../include
INCLUDES=-I$(INCDIR) -I$(INCDIR1)

#
# Macros for target determination
#
SUBDIRS=@SUBDIRS@
CLEAN_SUBDIRS= . test build
INSTALL_SUBDIRS=@INSTALL_SUBDIRS@

TARGET_LIB = lib@APR_LIBNAME@.la

#
# Rules for building specific targets, starting with 'all' for
# building the entire package.
#
TARGETS = delete-lib $(TARGET_LIB) delete-exports export_vars.h apr.exp

# bring in rules.mk for standard functionality
@INCLUDE_RULES@

CLEAN_TARGETS = 
DISTCLEAN_TARGETS = config.cache config.log config.status \
	include/apr.h include/arch/unix/apr_private.h \
	libtool apr.exp apr-config exports.c export_vars.h
EXTRACLEAN_TARGETS = configure aclocal.m4 include/arch/unix/apr_private.h.in

prefix=@prefix@
exec_prefix=@exec_prefix@
bindir=@bindir@
libdir=@libdir@
includedir=@includedir@
installbuilddir=@installbuilddir@
srcdir=@srcdir@
VPATH=@srcdir@
top_srcdir=@apr_srcdir@
top_blddir=@apr_builddir@

EXPORT_FILES = $(top_srcdir)/include/*.h

delete-lib:
	@if test -f $(TARGET_LIB); then \
	    for i in $(SUBDIRS); do objects="$$objects $$i/*.@so_ext@"; done ; \
	    if test -n "`find $$objects -newer $(TARGET_LIB)`"; then \
		echo Found newer objects. Will relink $(TARGET_LIB). ; \
		echo $(RM) -f $(TARGET_LIB) ; \
		$(RM) -f $(TARGET_LIB) ; \
	    fi \
	fi

install: $(TARGET_LIB)
	if [ ! -d $(DESTDIR)$(includedir) ]; then \
	    $(top_srcdir)/build/mkdir.sh $(DESTDIR)$(includedir); \
	fi;
	cp -p $(top_srcdir)/include/*.h $(DESTDIR)$(includedir);

	if test -n "$(top_blddir)"; then \
	    cp -p $(top_blddir)/include/*.h $(DESTDIR)$(includedir); \
	fi;
	if [ ! -d $(DESTDIR)$(libdir) ]; then \
	    $(top_srcdir)/build/mkdir.sh $(DESTDIR)$(libdir); \
	fi;
	$(LIBTOOL) --mode=install cp $(TARGET_LIB) $(DESTDIR)$(libdir)
	$(LIBTOOL) --mode=install cp apr.exp $(DESTDIR)$(libdir)
	if [ ! -d $(DESTDIR)$(installbuilddir) ]; then \
	   	$(top_srcdir)/build/mkdir.sh $(DESTDIR)$(installbuilddir); \
	fi; 
	if [ -f libtool ]; then \
		$(LIBTOOL) --mode=install cp libtool $(DESTDIR)$(installbuilddir); \
	fi;
	if [ -f shlibtool ]; then \
		$(LIBTOOL) --mode=install cp shlibtool $(DESTDIR)$(installbuilddir); \
	fi;
	if [ -f build/apr_rules.mk ]; then \
		cp build/apr_rules.mk $(DESTDIR)$(installbuilddir); \
	fi;

	if [ ! -d $(DESTDIR)$(bindir) ]; then \
	    $(top_srcdir)/build/mkdir.sh $(DESTDIR)$(bindir); \
	fi;
	$(LIBTOOL) --mode=install cp apr-config $(DESTDIR)$(bindir)
	chmod 755 $(DESTDIR)$(bindir)/apr-config
	@if [ $(INSTALL_SUBDIRS) != "none" ]; then \
            for i in $(INSTALL_SUBDIRS); do \
	        ( cd $$i ; $(MAKE) DESTDIR=$(DESTDIR) install ); \
	    done \
	fi

$(TARGET_LIB):
	@for i in $(SUBDIRS); do objects="$$objects $$i/*.@so_ext@"; done ; \
	    tmpcmd="$(LINK) @lib_target@ @lib_target_libs@"; \
	    echo $$tmpcmd; \
	    $$tmpcmd && touch $@

delete-exports:
	@if test -f apr.exp; then \
	    headers="`find include/*.h -newer apr.exp`" ; \
	    if test -n "$$headers"; then \
		echo Found newer headers. Will rebuild apr.exp. ; \
		echo $(RM) -f apr.exp exports.c export_vars.h ; \
		$(RM) -f apr.exp exports.c export_vars.h ; \
	    fi \
	fi

exports.c:
	$(AWK) -f $(top_srcdir)/build/make_exports.awk $(EXPORT_FILES) > $@

export_vars.h:
	$(AWK) -f $(top_srcdir)/build/make_var_export.awk $(EXPORT_FILES) > $@

apr.exp: exports.c export_vars.h
	@echo "#! lib@APR_LIBNAME@.so" > $@
	@echo "* This file was AUTOGENERATED at build time." >> $@
	@echo "* Please do not edit by hand." >> $@
	$(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) exports.c | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/\1/' >> $@
	$(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) export_vars.h | sed -e 's/^\#[^!]*//' | sed -e '/^$$/d' >> $@

dox:
	doxygen $(top_srcdir)/docs/doxygen.conf

check: $(TARGET_LIB)
	(cd test && $(MAKE) check)

# DO NOT REMOVE
docs: $(INCDIR)/*.h

.PHONY: delete-lib delete-exports
.NOTPARALLEL: delete-lib delete-exports