From ea28dde0c67b0c27e4a67767764ee21c1444c7e8 Mon Sep 17 00:00:00 2001 From: jerenkrantz Date: Mon, 22 Apr 2002 01:24:51 +0000 Subject: 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 --- CHANGES | 3 +++ Makefile.in | 1 + atomic/os390/Makefile.in | 2 ++ atomic/solaris_sparc/Makefile.in | 3 ++- atomic/unix/Makefile.in | 2 ++ build/Makefile.in | 3 +++ build/rules.mk.in | 7 +++---- configure.in | 8 +------- dso/aix/Makefile.in | 2 ++ dso/beos/Makefile.in | 2 ++ dso/os2/Makefile.in | 2 ++ dso/os390/Makefile.in | 2 ++ dso/unix/Makefile.in | 2 ++ file_io/os2/Makefile.in | 2 ++ file_io/unix/Makefile.in | 2 ++ i18n/unix/Makefile.in | 2 ++ locks/beos/Makefile.in | 2 ++ locks/os2/Makefile.in | 2 ++ locks/unix/Makefile.in | 2 ++ memory/unix/Makefile.in | 2 ++ misc/unix/Makefile.in | 2 ++ mmap/unix/Makefile.in | 2 ++ network_io/beos/Makefile.in | 2 ++ network_io/os2/Makefile.in | 2 ++ network_io/unix/Makefile.in | 2 ++ passwd/Makefile.in | 2 ++ shmem/beos/Makefile.in | 2 ++ shmem/os2/Makefile.in | 2 ++ shmem/unix/Makefile.in | 2 ++ strings/Makefile.in | 2 ++ tables/Makefile.in | 2 ++ test/Makefile.in | 2 ++ threadproc/beos/Makefile.in | 2 ++ threadproc/os2/Makefile.in | 2 ++ threadproc/unix/Makefile.in | 2 ++ time/unix/Makefile.in | 2 ++ user/unix/Makefile.in | 2 ++ 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 ] 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 <