summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjerenkrantz <jerenkrantz@13f79535-47bb-0310-9956-ffa450edef68>2002-04-22 01:24:51 +0000
committerjerenkrantz <jerenkrantz@13f79535-47bb-0310-9956-ffa450edef68>2002-04-22 01:24:51 +0000
commitea28dde0c67b0c27e4a67767764ee21c1444c7e8 (patch)
tree544a59affb9a1ed79c8e9f5d1b32f3caa6e63f9b
parent726803065c6842bc89066c6972e9a1b72bb3e6aa (diff)
downloadlibapr-ea28dde0c67b0c27e4a67767764ee21c1444c7e8.tar.gz
Allow VPATH builds to properly generate build dependencies. This requires
srcdir to always be available in a Makefile, so we need to stop adding this only when we use VPATH. Change the dependency generation to use .deps instead of appending to the Makefile. This makes us consistent with the dependency style of httpd-2.0. git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@63286 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--CHANGES3
-rw-r--r--Makefile.in1
-rw-r--r--atomic/os390/Makefile.in2
-rw-r--r--atomic/solaris_sparc/Makefile.in3
-rw-r--r--atomic/unix/Makefile.in2
-rw-r--r--build/Makefile.in3
-rw-r--r--build/rules.mk.in7
-rw-r--r--configure.in8
-rw-r--r--dso/aix/Makefile.in2
-rw-r--r--dso/beos/Makefile.in2
-rw-r--r--dso/os2/Makefile.in2
-rw-r--r--dso/os390/Makefile.in2
-rw-r--r--dso/unix/Makefile.in2
-rw-r--r--file_io/os2/Makefile.in2
-rw-r--r--file_io/unix/Makefile.in2
-rw-r--r--i18n/unix/Makefile.in2
-rw-r--r--locks/beos/Makefile.in2
-rw-r--r--locks/os2/Makefile.in2
-rw-r--r--locks/unix/Makefile.in2
-rw-r--r--memory/unix/Makefile.in2
-rw-r--r--misc/unix/Makefile.in2
-rw-r--r--mmap/unix/Makefile.in2
-rw-r--r--network_io/beos/Makefile.in2
-rw-r--r--network_io/os2/Makefile.in2
-rw-r--r--network_io/unix/Makefile.in2
-rw-r--r--passwd/Makefile.in2
-rw-r--r--shmem/beos/Makefile.in2
-rw-r--r--shmem/os2/Makefile.in2
-rw-r--r--shmem/unix/Makefile.in2
-rw-r--r--strings/Makefile.in2
-rw-r--r--tables/Makefile.in2
-rw-r--r--test/Makefile.in2
-rw-r--r--threadproc/beos/Makefile.in2
-rw-r--r--threadproc/os2/Makefile.in2
-rw-r--r--threadproc/unix/Makefile.in2
-rw-r--r--time/unix/Makefile.in2
-rw-r--r--user/unix/Makefile.in2
37 files changed, 75 insertions, 12 deletions
diff --git a/CHANGES b/CHANGES
index d783ed540..064162322 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,8 @@
Changes with APR b1
+ *) Allow VPATH builds to properly build dependencies and switch to
+ a .deps dependency model to mimic httpd-2.0. [Justin Erenkrantz]
+
*) Tru64: Stop leaving zombies in APR apps like mod_cgid which
tell APR to ignore SIGCHLD.
[Dave Hill <David.D.Hill@Compaq.com>]
diff --git a/Makefile.in b/Makefile.in
index 9a42039a9..a8411293d 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -42,6 +42,7 @@ libdir=@libdir@
includedir=@includedir@
installbuilddir=@installbuilddir@
srcdir=@srcdir@
+VPATH=@srcdir@
top_srcdir=@top_srcdir@
top_blddir=@top_builddir@
diff --git a/atomic/os390/Makefile.in b/atomic/os390/Makefile.in
index db26a7617..28cc1b6d8 100644
--- a/atomic/os390/Makefile.in
+++ b/atomic/os390/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = atomic.lo
diff --git a/atomic/solaris_sparc/Makefile.in b/atomic/solaris_sparc/Makefile.in
index a2d8dbae4..f2435cd88 100644
--- a/atomic/solaris_sparc/Makefile.in
+++ b/atomic/solaris_sparc/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = @apr_atomic_sparc_compile@
@@ -8,7 +10,6 @@ ASCPP = @ASCPP@
# bring in rules.mk for standard functionality
@INCLUDE_RULES@
-srcdir=@srcdir@
apr_atomic_sparc.lo: $(srcdir)/apr_atomic_sparc.s
$(ASCPP) $(ASCPPFLAGS) $(srcdir)/$*.s > $*.S
diff --git a/atomic/unix/Makefile.in b/atomic/unix/Makefile.in
index 91cf22f14..188d0d242 100644
--- a/atomic/unix/Makefile.in
+++ b/atomic/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = apr_atomic.lo
diff --git a/build/Makefile.in b/build/Makefile.in
index c486d6941..ee1e6b58d 100644
--- a/build/Makefile.in
+++ b/build/Makefile.in
@@ -1,3 +1,6 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
+
TARGETS=
INCLUDES=
DISTCLEAN_TARGETS = rules.mk
diff --git a/build/rules.mk.in b/build/rules.mk.in
index 26e5241b0..7a670160e 100644
--- a/build/rules.mk.in
+++ b/build/rules.mk.in
@@ -195,10 +195,9 @@ local-extraclean: local-distclean x-local-extraclean
local-all: $(TARGETS)
local-depend: x-local-depend
- @if test -n "`ls *.c 2> /dev/null`"; then \
- echo $(MKDEP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) *.c ; \
- CC=${CC} $(MKDEP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) *.c ; \
- fi
+ @if test -n "`ls $(srcdir)/*.c 2> /dev/null`"; then \
+ $(CC) -MM $(ALL_CPPFLAGS) $(ALL_INCLUDES) $(srcdir)/*.c | sed 's/\.o:/.lo:/' > .deps || true; \
+ fi
# to be filled in by the actual Makefile
x-local-depend x-local-clean x-local-distclean x-local-extraclean:
diff --git a/configure.in b/configure.in
index 4a4941727..d70c9ecf9 100644
--- a/configure.in
+++ b/configure.in
@@ -1717,13 +1717,7 @@ changequote({,})
if test -n "$USE_VPATH"; then
for makefile in $MAKEFILE1 $MAKEFILE2 $MAKEFILE3; do
- dir=`echo $makefile|sed 's%/*[^/][^/]*$%%'`
- (cat <<EOF
-srcdir = $apr_srcdir/$dir
-VPATH = $apr_srcdir/$dir
-
-EOF
-) | cat - $makefile | \
+ cat $makefile | \
sed \
-e 's#-I\($(INCDIR[0-9]*)\)#-I\1 -I$(srcdir)/\1#g' \
-e 's#-I\($(OSDIR[0-9]*)\)#-I\1 -I$(srcdir)/\1#g' \
diff --git a/dso/aix/Makefile.in b/dso/aix/Makefile.in
index fe018d7d4..7d42bdedf 100644
--- a/dso/aix/Makefile.in
+++ b/dso/aix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = dso.lo
diff --git a/dso/beos/Makefile.in b/dso/beos/Makefile.in
index 7599158d2..02326f80e 100644
--- a/dso/beos/Makefile.in
+++ b/dso/beos/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = dso.lo
diff --git a/dso/os2/Makefile.in b/dso/os2/Makefile.in
index fe018d7d4..7d42bdedf 100644
--- a/dso/os2/Makefile.in
+++ b/dso/os2/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = dso.lo
diff --git a/dso/os390/Makefile.in b/dso/os390/Makefile.in
index fe018d7d4..7d42bdedf 100644
--- a/dso/os390/Makefile.in
+++ b/dso/os390/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = dso.lo
diff --git a/dso/unix/Makefile.in b/dso/unix/Makefile.in
index 21cac34c2..89c6b25b6 100644
--- a/dso/unix/Makefile.in
+++ b/dso/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = dso.lo
diff --git a/file_io/os2/Makefile.in b/file_io/os2/Makefile.in
index 6bb10b45f..4f0b1dd99 100644
--- a/file_io/os2/Makefile.in
+++ b/file_io/os2/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
dir.lo \
diff --git a/file_io/unix/Makefile.in b/file_io/unix/Makefile.in
index 4b3f3fcf8..ce62475b1 100644
--- a/file_io/unix/Makefile.in
+++ b/file_io/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
copy.lo \
diff --git a/i18n/unix/Makefile.in b/i18n/unix/Makefile.in
index b04b1c301..cd42ace99 100644
--- a/i18n/unix/Makefile.in
+++ b/i18n/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = xlate.lo
diff --git a/locks/beos/Makefile.in b/locks/beos/Makefile.in
index 993cc4643..6c8a1bccd 100644
--- a/locks/beos/Makefile.in
+++ b/locks/beos/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
thread_mutex.lo \
diff --git a/locks/os2/Makefile.in b/locks/os2/Makefile.in
index 18d7b9405..e22f85c97 100644
--- a/locks/os2/Makefile.in
+++ b/locks/os2/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
thread_mutex.lo \
diff --git a/locks/unix/Makefile.in b/locks/unix/Makefile.in
index ab1b91d92..618b0eb1a 100644
--- a/locks/unix/Makefile.in
+++ b/locks/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
thread_mutex.lo \
diff --git a/memory/unix/Makefile.in b/memory/unix/Makefile.in
index b390d746a..2be5dd963 100644
--- a/memory/unix/Makefile.in
+++ b/memory/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = apr_pools.lo
diff --git a/misc/unix/Makefile.in b/misc/unix/Makefile.in
index f6c81bdb8..9d9a91f52 100644
--- a/misc/unix/Makefile.in
+++ b/misc/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
start.lo getopt.lo otherchild.lo errorcodes.lo rand.lo \
diff --git a/mmap/unix/Makefile.in b/mmap/unix/Makefile.in
index 65e880add..11dde0670 100644
--- a/mmap/unix/Makefile.in
+++ b/mmap/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = mmap.lo common.lo
diff --git a/network_io/beos/Makefile.in b/network_io/beos/Makefile.in
index 1c767812f..1621b5fd4 100644
--- a/network_io/beos/Makefile.in
+++ b/network_io/beos/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = poll.lo sendrecv.lo socketcommon.lo
diff --git a/network_io/os2/Makefile.in b/network_io/os2/Makefile.in
index 5737cd7bf..0600dee89 100644
--- a/network_io/os2/Makefile.in
+++ b/network_io/os2/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
poll.lo \
diff --git a/network_io/unix/Makefile.in b/network_io/unix/Makefile.in
index 07511f270..761af5fad 100644
--- a/network_io/unix/Makefile.in
+++ b/network_io/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
poll.lo \
diff --git a/passwd/Makefile.in b/passwd/Makefile.in
index 4104f39ab..cb30efeb2 100644
--- a/passwd/Makefile.in
+++ b/passwd/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = apr_md5.lo apr_getpass.lo
diff --git a/shmem/beos/Makefile.in b/shmem/beos/Makefile.in
index 97214ff5a..52447d8be 100644
--- a/shmem/beos/Makefile.in
+++ b/shmem/beos/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = shm.lo
diff --git a/shmem/os2/Makefile.in b/shmem/os2/Makefile.in
index 97214ff5a..52447d8be 100644
--- a/shmem/os2/Makefile.in
+++ b/shmem/os2/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = shm.lo
diff --git a/shmem/unix/Makefile.in b/shmem/unix/Makefile.in
index fdf5956c7..b155d75b7 100644
--- a/shmem/unix/Makefile.in
+++ b/shmem/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = shm.lo
diff --git a/strings/Makefile.in b/strings/Makefile.in
index 90e018776..aa1e1ee0e 100644
--- a/strings/Makefile.in
+++ b/strings/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
apr_cpystrn.lo \
diff --git a/tables/Makefile.in b/tables/Makefile.in
index 3fd280bbf..9a97a30f1 100644
--- a/tables/Makefile.in
+++ b/tables/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = apr_tables.lo apr_hash.lo
diff --git a/test/Makefile.in b/test/Makefile.in
index 3a06fd400..e959fa228 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
PROGRAMS = \
client@EXEEXT@ \
diff --git a/threadproc/beos/Makefile.in b/threadproc/beos/Makefile.in
index 07b1c8904..3bdf1dd53 100644
--- a/threadproc/beos/Makefile.in
+++ b/threadproc/beos/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
proc.lo \
diff --git a/threadproc/os2/Makefile.in b/threadproc/os2/Makefile.in
index 9a09fad8b..3cc12ad74 100644
--- a/threadproc/os2/Makefile.in
+++ b/threadproc/os2/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
proc.lo \
diff --git a/threadproc/unix/Makefile.in b/threadproc/unix/Makefile.in
index af1ab6ae5..42aa6d1b6 100644
--- a/threadproc/unix/Makefile.in
+++ b/threadproc/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = \
proc.lo \
diff --git a/time/unix/Makefile.in b/time/unix/Makefile.in
index 18ee86e4a..1cc010b5d 100644
--- a/time/unix/Makefile.in
+++ b/time/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = time.lo timestr.lo
diff --git a/user/unix/Makefile.in b/user/unix/Makefile.in
index 91c25dd07..100498f5f 100644
--- a/user/unix/Makefile.in
+++ b/user/unix/Makefile.in
@@ -1,3 +1,5 @@
+srcdir = @srcdir@
+VPATH = @srcdir@
TARGETS = userinfo.lo groupinfo.lo