---------------------
PatchSet 543 
Date: 2000/08/19 13:34:31
Author: hno
Branch: hno-devel
Tag: (none) 
Log:
Hopefully this will fix those issues with parallel builds reported
by Duane. I actually managed to reproduce it using gmake. Will test
it on FreeBSD and if I haven't broken things commit it to HEAD

Members: 
	configure.in:1.1.1.3.6.7.2.19->1.1.1.3.6.7.2.20 
	src/Makefile.in:1.1.1.3.10.7.2.6->1.1.1.3.10.7.2.7 
	src/fs/Makefile.in:1.1.6.2.2.1->1.1.6.2.2.2 
	src/repl/Makefile.in:1.1.6.1->1.1.6.2 

Index: squid/configure.in
===================================================================
RCS file: /cvsroot/squid-sf//squid/configure.in,v
retrieving revision 1.1.1.3.6.7.2.19
retrieving revision 1.1.1.3.6.7.2.20
diff -u -r1.1.1.3.6.7.2.19 -r1.1.1.3.6.7.2.20
--- squid/configure.in	15 Aug 2000 06:01:42 -0000	1.1.1.3.6.7.2.19
+++ squid/configure.in	19 Aug 2000 13:34:31 -0000	1.1.1.3.6.7.2.20
@@ -3,13 +3,13 @@
 dnl
 dnl  Duane Wessels, wessels@nlanr.net, February 1996 (autoconf v2.9)
 dnl
-dnl  $Id: configure.in,v 1.1.1.3.6.7.2.19 2000/08/15 06:01:42 hno Exp $
+dnl  $Id: configure.in,v 1.1.1.3.6.7.2.20 2000/08/19 13:34:31 hno Exp $
 dnl
 dnl
 dnl
 AC_INIT(src/main.c)
 AC_CONFIG_HEADER(include/autoconf.h)
-AC_REVISION($Revision: 1.1.1.3.6.7.2.19 $)dnl
+AC_REVISION($Revision: 1.1.1.3.6.7.2.20 $)dnl
 AC_PREFIX_DEFAULT(/usr/local/squid)
 AC_CONFIG_AUX_DIR(cfgaux)
 
@@ -322,6 +322,8 @@
 AC_SUBST(STORE_MODULES)
 STORE_OBJS="fs/`echo $STORE_MODULES|sed -e's% %.a fs/%g'`.a"
 AC_SUBST(STORE_OBJS)
+STORE_LIBS="`echo $STORE_OBJS|sed -e's%fs/%%g'`"
+AC_SUBST(STORE_LIBS)
 
 dnl --enable-heap-replacement compability option
 AC_ARG_ENABLE(heap-replacement,
@@ -365,6 +367,8 @@
 AC_SUBST(REPL_POLICIES)
 REPL_OBJS="repl/`echo $REPL_POLICIES|sed -e's% %.a repl/%g'`.a"
 AC_SUBST(REPL_OBJS)
+REPL_LIBS="`echo $REPL_OBJS|sed -e's%repl/%%g'`"
+AC_SUBST(REPL_LIBS)
 
 OPT_PINGER_EXE=''
 AC_ARG_ENABLE(icmp,
Index: squid/src/Makefile.in
===================================================================
RCS file: /cvsroot/squid-sf//squid/src/Attic/Makefile.in,v
retrieving revision 1.1.1.3.10.7.2.6
retrieving revision 1.1.1.3.10.7.2.7
diff -u -r1.1.1.3.10.7.2.6 -r1.1.1.3.10.7.2.7
--- squid/src/Makefile.in	15 Jul 2000 20:52:06 -0000	1.1.1.3.10.7.2.6
+++ squid/src/Makefile.in	19 Aug 2000 13:34:32 -0000	1.1.1.3.10.7.2.7
@@ -1,7 +1,7 @@
 #
 #  Makefile for the Squid Object Cache server
 #
-#  $Id: Makefile.in,v 1.1.1.3.10.7.2.6 2000/07/15 20:52:06 hno Exp $
+#  $Id: Makefile.in,v 1.1.1.3.10.7.2.7 2000/08/19 13:34:32 hno Exp $
 #
 #  Uncomment and customize the following to suit your needs:
 #
@@ -197,7 +197,11 @@
 DEFAULTS        = \
 	-DDEFAULT_CONFIG_FILE=\"$(DEFAULT_CONFIG_FILE)\"
 
-all:    squid.conf store_modules repl_modules $(PROGS) $(UTILS) $(SUID_UTILS) $(CGIPROGS)
+all:    squid.conf $(PROGS) $(UTILS) $(SUID_UTILS) $(CGIPROGS)
+	@for dir in $(SUBDIRS); do \
+		echo "Making $@ in $$dir..."; \
+		(cd $$dir ; $(MAKE) $(MFLAGS) prefix="$(prefix)" $@) || exit 1; \
+	done
 
 $(OBJS): $(top_srcdir)/include/version.h ../include/autoconf.h
 
@@ -241,7 +245,10 @@
 
 cache_cf.o: cf_parser.c
 
-squid.conf cf_parser.c: cf.data cf_gen
+squid.conf: cf_parser.c
+	@sh -c "test -f squid.conf || ./cg_gen cf.data"
+
+cf_parser.c: cf.data cf_gen
 	./cf_gen cf.data
 
 cf_gen: cf_gen.o
@@ -275,10 +282,8 @@
 store_modules.o: store_modules.c
 	$(CC) -c store_modules.c $(CFLAGS) -I$(srcdir)
 
-$(STORE_OBJS): fs/stamp
-
-store_modules fs/stamp:
-	@sh -c "cd fs && $(MAKE) all"
+$(STORE_OBJS):
+	@sh -c "cd `dirname $@` && $(MAKE) $(MFLAGS) `basename $@`"
 
 repl_modules.c: repl_modules.sh Makefile 
 	sh $(srcdir)/repl_modules.sh $(REPL_POLICIES) >repl_modules.c
@@ -286,7 +291,8 @@
 repl_modules.o: repl_modules.c
 	$(CC) -c repl_modules.c $(CFLAGS) -I$(srcdir)
 
-$(REPL_OBJS): repl/stamp
+$(REPL_OBJS):
+	@sh -c "cd `dirname $@` && $(MAKE) $(MFLAGS) `basename $@`"
 
 repl_modules repl/stamp:
 	@sh -c "cd repl && $(MAKE) all"
Index: squid/src/fs/Makefile.in
===================================================================
RCS file: /cvsroot/squid-sf//squid/src/fs/Attic/Makefile.in,v
retrieving revision 1.1.6.2.2.1
retrieving revision 1.1.6.2.2.2
diff -u -r1.1.6.2.2.1 -r1.1.6.2.2.2
--- squid/src/fs/Makefile.in	2 May 2000 22:50:29 -0000	1.1.6.2.2.1
+++ squid/src/fs/Makefile.in	19 Aug 2000 13:34:32 -0000	1.1.6.2.2.2
@@ -4,14 +4,15 @@
 #
 
 SUBDIRS		= @STORE_MODULES@
+OUTLIBS		= @STORE_LIBS@
 
 all:
 	@test -z "$(SUBDIRS)" || for dir in $(SUBDIRS); do \
 	   sh -c "cd $$dir && $(MAKE) all" || exit 1; \
 	done; \
-	if [ ! -f stamp ]; then \
-	   touch stamp; \
-	fi
+
+$(OUTLIBS):
+	@sh -c "cd `basename $@ .a` && $(MAKE) $(MFLAGS) ../$@"
 
 clean:
 	-rm -f *.a stamp
Index: squid/src/repl/Makefile.in
===================================================================
RCS file: /cvsroot/squid-sf//squid/src/repl/Attic/Makefile.in,v
retrieving revision 1.1.6.1
retrieving revision 1.1.6.2
diff -u -r1.1.6.1 -r1.1.6.2
--- squid/src/repl/Makefile.in	14 May 2000 23:22:21 -0000	1.1.6.1
+++ squid/src/repl/Makefile.in	19 Aug 2000 13:34:33 -0000	1.1.6.2
@@ -4,6 +4,7 @@
 #
 
 SUBDIRS		= @REPL_POLICIES@
+OUTLIBS		= @REPL_LIBS@
 
 all:
 	@test -z "$(SUBDIRS)" || for dir in $(SUBDIRS); do \
@@ -13,6 +14,9 @@
 	   touch stamp; \
 	fi
 
+$(OUTLIBS):
+	@sh -c "cd `basename $@ .a` && make ../$@"
+
 clean:
 	-rm -f *.a stamp
 	-for dir in *; do \
