You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by dr...@apache.org on 2001/04/18 22:51:38 UTC

cvs commit: httpd-2.0/build rules.mk special.mk

dreid       01/04/18 13:51:38

  Modified:    .        configure.in Makefile.in
               build    rules.mk special.mk
  Log:
  This changes the build process as outlined in my email earlier this week.
  
  Essentially we now build the static objects, then allow a platform to run
  a given command, build the shared modules, then run another command before exiting.
  
  This gets us building dso's on beos and may provide a better framework for some of
  the other "strange" platforms out there without stopping the normal ones working.
  
  Revision  Changes    Path
  1.143     +13 -0     httpd-2.0/configure.in
  
  Index: configure.in
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/configure.in,v
  retrieving revision 1.142
  retrieving revision 1.143
  diff -u -r1.142 -r1.143
  --- configure.in	2001/04/03 23:47:39	1.142
  +++ configure.in	2001/04/18 20:51:32	1.143
  @@ -190,6 +190,9 @@
     APACHE_LIBTOOL_SILENT
   fi
   
  +PRE_SHARED_CMDS='echo ""'
  +POST_SHARED_CMDS='echo ""'
  +
   if test "$apache_need_shared" = "yes"; then
     $SHELL $ac_aux_dir/ltconfig --output=shlibtool --disable-static --srcdir=$ac_aux_dir --cache-file=./config.cache $ac_aux_dir/ltmain.sh
     case $PLATFORM in
  @@ -197,11 +200,21 @@
         HTTPD_LDFLAGS="$HTTPD_LDFLAGS -Wl,-bE:$abs_srcdir/support/httpd.exp"
         SH_LDFLAGS="$SH_LDFLAGS -Wl,-bI:$abs_srcdir/support/httpd.exp"
         ;;
  +    *beos)
  +      SH_LDFLAGS='$(top_builddir)/_APP_'
  +      PRE_SHARED_CMDS='ln -s $(top_builddir)/httpd $(top_builddir)/_APP_'
  +      POST_SHARED_CMDS='rm $(top_builddir)/_APP_'
  +      ;;
       *os390)
         CFLAGS="$CFLAGS -Wc,DLL,EXPORTALL"
         ;;
     esac
  +  shared_build="shared-modules"
   fi
  +
  +APACHE_SUBST(PRE_SHARED_CMDS)
  +APACHE_SUBST(POST_SHARED_CMDS)
  +APACHE_SUBST(shared_build)
   
   AC_ARG_WITH(program-name,
   [  --with-program-name     alternate executable name],[
  
  
  
  1.68      +1 -1      httpd-2.0/Makefile.in
  
  Index: Makefile.in
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/Makefile.in,v
  retrieving revision 1.67
  retrieving revision 1.68
  diff -u -r1.67 -r1.68
  --- Makefile.in	2001/04/13 00:46:21	1.67
  +++ Makefile.in	2001/04/18 20:51:33	1.68
  @@ -13,7 +13,7 @@
     $(AP_LIBS)
   
   PROGRAMS        = $(PROGRAM_NAME)
  -targets         = $(PROGRAMS) $(other_targets)
  +targets         = $(PROGRAMS) $(shared_build) $(other_targets)
   phony_targets   = $(srcdir)/buildmark.c
   install_targets = install-conf install-htdocs install-icons install-other \
   	install-cgi install-include install-suexec
  
  
  
  1.51      +31 -1     httpd-2.0/build/rules.mk
  
  Index: rules.mk
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/build/rules.mk,v
  retrieving revision 1.50
  retrieving revision 1.51
  diff -u -r1.50 -r1.51
  --- rules.mk	2001/04/12 20:34:52	1.50
  +++ rules.mk	2001/04/18 20:51:35	1.51
  @@ -125,6 +125,7 @@
   
   
   all: all-recursive
  +shared-modules: shared-modules-recursive
   install: install-recursive
   
   
  @@ -169,8 +170,37 @@
   		done; \
   	fi
   
  +shared-modules-recursive:
  +	@if test `pwd` = "$(top_builddir)"; then \
  +		$(PRE_SHARED_CMDS) ; \
  +	fi; \
  +	list='$(SUBDIRS)'; for i in $$list; do \
  +		target="shared-modules"; \
  +		if test "$$i" = "."; then \
  +			ok = yes; \
  +			target="shared-modules-p"; \
  +		fi; \
  +		if test "$$i" != "srclib"; then \
  +			(cd $$i && $(MAKE) $$target) || exit 1; \
  +		fi; \
  +	done; \
  +	if test -e 'modules.mk'; then \
  +		if test -n '$(shared_targets)'; then \
  +			echo "Building shared modules: $(shared_targets)"; \
  +			if test -z '$(shared_targets)'; then ok=yes; fi; \
  +			if test "$$ok" != "yes"; then \
  +				$(MAKE) "shared-modules-p" || exit 1; \
  +			fi; \
  +		fi; \
  +	fi; \
  +	if test `pwd` = "$(top_builddir)"; then \
  +		$(POST_SHARED_CMDS) ; \
  +	fi
  +
   all-p: $(targets)
  -install-p: $(targets) $(install_targets)
  +shared-modules-p: $(shared_targets)
  +
  +install-p: $(targets) $(shared_targets) $(install_targets)
   	@if test -n '$(PROGRAMS)'; then \
   		test -d $(bindir) || $(MKINSTALLDIRS) $(bindir); \
   		for i in $(PROGRAMS) ""; do \
  
  
  
  1.12      +2 -1      httpd-2.0/build/special.mk
  
  Index: special.mk
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/build/special.mk,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- special.mk	2001/02/16 04:26:27	1.11
  +++ special.mk	2001/04/18 20:51:35	1.12
  @@ -57,7 +57,8 @@
   all: all-recursive
   
   include $(builddir)/modules.mk
  -targets = $(static) $(shared)
  +targets = $(static)
  +shared_targets = $(shared)
   install_targets = install-modules
   
   install-modules: