From 99fa11cb5f289491c595a27bc8c1471b46081c30 Mon Sep 17 00:00:00 2001 From: Sascha Schumann Date: Sun, 30 Apr 2000 00:06:07 +0000 Subject: Overall UNIX build system improvements: * Makefile header is now completely dynamic * Absolute paths everywhere (fixes Tru64 support) * Get rid of LTLIBRARY_SHARED_NAME rule in library.mk (fixes Irix support, untested) * VPATH does not contain variables anymore (fixes UnixWare support) * Remove inclusion of program.mk in support/Makefile.in (PROGRAM_NAME is empty => breaks Irix and others) * Call REENTRANCY_FLAGS earlier, so that flags are passed to header checks (might fix OpenBSD pthread.h-detection, untested) git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85102 13f79535-47bb-0310-9956-ffa450edef68 --- Makefile.in | 5 ----- build/fastgen.sh | 27 ++++++++++++++++----------- build/library.mk | 12 ------------ build/rules.mk | 8 +++----- configure.in | 4 ++-- modules/Makefile.in | 5 ----- modules/aaa/Makefile.in | 5 ----- os/Makefile.in | 5 ----- os/beos/Makefile.in | 5 ----- os/os2/Makefile.in | 5 ----- os/unix/Makefile.in | 5 ----- server/Makefile.in | 5 ----- server/mpm/Makefile.in | 5 ----- server/mpm/dexter/Makefile.in | 5 ----- server/mpm/mpmt_beos/Makefile.in | 5 ----- server/mpm/mpmt_pthread/Makefile.in | 5 ----- server/mpm/prefork/Makefile.in | 5 ----- server/mpm/spmt_os2/Makefile.in | 5 ----- srclib/Makefile.in | 5 ----- support/Makefile.in | 6 ------ 20 files changed, 21 insertions(+), 111 deletions(-) diff --git a/Makefile.in b/Makefile.in index 910078b0cd..39e7089112 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = . -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - SUBDIRS = ap lib main modules os support $(REGEX_DIR) PROGRAM_NAME = $(progname) diff --git a/build/fastgen.sh b/build/fastgen.sh index 73d33114a7..f7c2f5614c 100755 --- a/build/fastgen.sh +++ b/build/fastgen.sh @@ -58,25 +58,30 @@ srcdir=$1 shift -top_srcdir=`(cd $srcdir; pwd)` - mkdir_p=$1 shift +top_srcdir=`(cd $srcdir; pwd)` +top_builddir=`pwd` + if test "$mkdir_p" = "yes"; then mkdir_p="mkdir -p" else mkdir_p="$top_srcdir/helpers/mkdir.sh" fi -base="\$(DEPTH)/$srcdir" +for makefile in $@; do + echo "creating $makefile" +# portable dirname + dir=`echo $makefile|sed 's%[^/][^/]*$%%'` + + (cat < $makefile -for i in $@ ; do - echo "creating $i" - dir=`dirname $i` - $mkdir_p $dir - sed \ - -e s#@top_srcdir@#$base# \ - -e s#@srcdir@#$base/$dir# \ - < $top_srcdir/$i.in > $i done diff --git a/build/library.mk b/build/library.mk index 0c94b1d4c8..c797a349dd 100644 --- a/build/library.mk +++ b/build/library.mk @@ -58,15 +58,3 @@ LTLIBRARY_OBJECTS = $(LTLIBRARY_SOURCES:.c=.lo) $(LTLIBRARY_NAME): $(LTLIBRARY_OBJECTS) $(LTLIBRARY_DEPENDENCIES) $(LINK) $(LTLIBRARY_LDFLAGS) $(LTLIBRARY_OBJECTS) $(LTLIBRARY_LIBADD) - -$(LTLIBRARY_SHARED_NAME): $(LTLIBRARY_OBJECTS) $(LTLIBRARY_DEPENDENCIES) - @test -d $(phplibdir) || $(mkinstalldirs) $(phplibdir) - $(LINK) -avoid-version -module -rpath $(phplibdir) $(LTLIBRARY_LDFLAGS) $(LTLIBRARY_OBJECTS) $(LTLIBRARY_SHARED_LIBADD) - $(SHLIBTOOL) --mode=install install $@ $(phplibdir) - -shared: - @if test '$(SHLIBTOOL)' != '$(LIBTOOL)'; then \ - $(MAKE) 'LIBTOOL=$(SHLIBTOOL)' $(LTLIBRARY_SHARED_NAME); \ - else \ - $(MAKE) $(LTLIBRARY_SHARED_NAME); \ - fi; diff --git a/build/rules.mk b/build/rules.mk index c7bf4691fa..efde9d28e4 100644 --- a/build/rules.mk +++ b/build/rules.mk @@ -54,7 +54,7 @@ # The build environment was provided by Sascha Schumann. # -include $(DEPTH)/config_vars.mk +include $(top_builddir)/config_vars.mk SHLIB_SUFFIX = so @@ -66,14 +66,12 @@ mkinstalldirs = $(abs_srcdir)/helpers/mkdir.sh INSTALL = $(abs_srcdir)/helpers/install.sh -c INSTALL_DATA = $(INSTALL) -m 644 INSTALL_PROGRAM = $(INSTALL) -m 755 -SHLIBTOOL = $(SHELL) $(DEPTH)/shlibtool --silent +SHLIBTOOL = $(SHELL) $(top_builddir)/shlibtool --silent APACHE_COMPILE = $(COMPILE) -c $< && touch $@ APACHE_SH_COMPILE = $(SHLIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(EXTRA_INCLUDES) $(CPPFLAGS) $(CFLAGS) $(EXTRA_CFLAGS) -c $< && touch $@ SHLINK = $(SHLIBTOOL) --mode=link $(CCLD) $(CFLAGS) $(EXTRA_CFLAGS) $(LDFLAGS) -o $@ -DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I$(DEPTH) - -top_builddir = $(DEPTH) +DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I$(top_builddir) .SUFFIXES: .SUFFIXES: .S .c .lo .o .s .y .l .slo diff --git a/configure.in b/configure.in index b415bbd3b2..10c49f52a1 100644 --- a/configure.in +++ b/configure.in @@ -31,6 +31,8 @@ AC_PROG_INSTALL dnl AC_PROG_RANLIB dnl AC_PATH_PROG(PERL_PATH, perl) +REENTRANCY_FLAGS + dnl various OS checks that apparently set required flags AC_AIX AC_ISC_POSIX @@ -109,8 +111,6 @@ APACHE_INADDR_NONE APACHE_EBCDIC -REENTRANCY_FLAGS - AC_FUNC_SELECT_ARGTYPES dnl Check if we'll actually need to cast select args all the time diff --git a/modules/Makefile.in b/modules/Makefile.in index 11239ae8fb..9fb8a88280 100644 --- a/modules/Makefile.in +++ b/modules/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = .. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - SUBDIRS = mpm $(MODULE_DIRS) include $(top_srcdir)/build/rules.mk diff --git a/modules/aaa/Makefile.in b/modules/aaa/Makefile.in index 3eeb709e0a..167b343d0d 100644 --- a/modules/aaa/Makefile.in +++ b/modules/aaa/Makefile.in @@ -1,8 +1,3 @@ -DEPTH = ../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - include $(top_srcdir)/build/special.mk diff --git a/os/Makefile.in b/os/Makefile.in index 99649201a6..00fae216e6 100644 --- a/os/Makefile.in +++ b/os/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = .. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - SUBDIRS = $(top_srcdir)/$(OS_DIR) include $(top_srcdir)/build/rules.mk diff --git a/os/beos/Makefile.in b/os/beos/Makefile.in index b2014e4c56..0915a3ab99 100644 --- a/os/beos/Makefile.in +++ b/os/beos/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - LTLIBRARY_NAME = libos.la LTLIBRARY_SOURCES = os.c beosd.c iol_socket.c diff --git a/os/os2/Makefile.in b/os/os2/Makefile.in index 63e0fbb44d..ea5ca325bf 100644 --- a/os/os2/Makefile.in +++ b/os/os2/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - LTLIBRARY_NAME = libos.la LTLIBRARY_SOURCES = os.c os-inline.c util_os2.c iol_socket.c diff --git a/os/unix/Makefile.in b/os/unix/Makefile.in index 66d164412c..b41c15c5e6 100644 --- a/os/unix/Makefile.in +++ b/os/unix/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - LTLIBRARY_NAME = libos.la LTLIBRARY_SOURCES = os.c os-inline.c unixd.c iol_socket.c diff --git a/server/Makefile.in b/server/Makefile.in index b2644f69d9..860118527c 100644 --- a/server/Makefile.in +++ b/server/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = .. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - CLEANFILES = gen_test_char gen_uri_delims test_char.h uri_delims.h LTLIBRARY_NAME = libmain.la diff --git a/server/mpm/Makefile.in b/server/mpm/Makefile.in index 87897bb29f..b68fee5cd7 100644 --- a/server/mpm/Makefile.in +++ b/server/mpm/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - SUBDIRS = $(MPM_NAME) include $(top_srcdir)/build/rules.mk diff --git a/server/mpm/dexter/Makefile.in b/server/mpm/dexter/Makefile.in index f26285106d..05c5fa702b 100644 --- a/server/mpm/dexter/Makefile.in +++ b/server/mpm/dexter/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - LTLIBRARY_NAME = libdexter.la LTLIBRARY_SOURCES = dexter.c scoreboard.c diff --git a/server/mpm/mpmt_beos/Makefile.in b/server/mpm/mpmt_beos/Makefile.in index 362fc822a0..13a7085cc2 100644 --- a/server/mpm/mpmt_beos/Makefile.in +++ b/server/mpm/mpmt_beos/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - LTLIBRARY_NAME = libmpmt_beos.la LTLIBRARY_SOURCES = mpmt_beos.c scoreboard.c poll.c diff --git a/server/mpm/mpmt_pthread/Makefile.in b/server/mpm/mpmt_pthread/Makefile.in index 65a1cede97..ff850eb332 100644 --- a/server/mpm/mpmt_pthread/Makefile.in +++ b/server/mpm/mpmt_pthread/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - LTLIBRARY_NAME = libmpmt_pthread.la LTLIBRARY_SOURCES = mpmt_pthread.c scoreboard.c diff --git a/server/mpm/prefork/Makefile.in b/server/mpm/prefork/Makefile.in index 174e895ce9..034bf5ce84 100644 --- a/server/mpm/prefork/Makefile.in +++ b/server/mpm/prefork/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - LTLIBRARY_NAME = libprefork.la LTLIBRARY_SOURCES = prefork.c diff --git a/server/mpm/spmt_os2/Makefile.in b/server/mpm/spmt_os2/Makefile.in index d9a5fa4593..105f39128f 100644 --- a/server/mpm/spmt_os2/Makefile.in +++ b/server/mpm/spmt_os2/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = ../../.. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - LTLIBRARY_NAME = libspmt_os2.la LTLIBRARY_SOURCES = spmt_os2.c diff --git a/srclib/Makefile.in b/srclib/Makefile.in index f4c8ca4ae7..01ea0b60de 100644 --- a/srclib/Makefile.in +++ b/srclib/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = .. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - SUBDIRS = apr include $(top_srcdir)/build/rules.mk diff --git a/support/Makefile.in b/support/Makefile.in index 8460b563ce..e45244c714 100644 --- a/support/Makefile.in +++ b/support/Makefile.in @@ -1,9 +1,4 @@ -DEPTH = .. -top_srcdir = @top_srcdir@ -srcdir = @srcdir@ -VPATH = @srcdir@ - PROGRAMS = htpasswd htdigest rotatelogs logresolve ab targets = $(PROGRAMS) @@ -12,7 +7,6 @@ PROGRAM_DEPENDENCIES = ../lib/apr/$(LIBPRE)apr.a \ ../ap/libap.la include $(top_srcdir)/build/rules.mk -include $(top_srcdir)/build/program.mk htpasswd_OBJECTS = htpasswd.lo htpasswd: $(htpasswd_OBJECTS) -- cgit v1.2.3