This is the mail archive of the newlib@sources.redhat.com mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

enable make -j for multilibs


This patch enables GNU make's job server to work while building
newlib.  It needs $(MAKE) to appear explicitly in the command it
passes to the shell, otherwise it disables the job server, defeating
-j completely.  An alternative is to start the command with +, but
that's not as portable.  Ok to install?

Index: newlib/ChangeLog
from  Alexandre Oliva  <aoliva@redhat.com>

	* Makefile.am: Add $(MAKE) comments to multido and multiclean
	lines, to enable parallel make.
	* Makefile.in: Rebuilt.

Index: newlib/Makefile.am
===================================================================
RCS file: /cvs/uberbaum/newlib/Makefile.am,v
retrieving revision 1.28
diff -u -p -r1.28 Makefile.am
--- newlib/Makefile.am 7 Nov 2002 19:27:35 -0000 1.28
+++ newlib/Makefile.am 29 Sep 2003 20:05:44 -0000
@@ -230,7 +230,7 @@ else
 	rm -f $(DESTDIR)$(toollibdir)/libg.a
 	ln $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a >/dev/null 2>/dev/null || cp $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a
 endif
-	$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do
+	$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE)
 	-if [ -z "$(MULTISUBDIR)" ]; then \
 	  $(mkinstalldirs) $(DESTDIR)$(tooldir)/include; \
 	  for i in $(srcdir)/libc/include/*.h; do \
@@ -291,18 +291,19 @@ clean-recursive: clean-multi
 distclean-recursive: distclean-multi
 maintainer-clean-recursive: maintainer-clean-multi
 
+# The $(MAKE) comments below are to enable parallel building.
 all-multi:
-	$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
+	$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE)
 check-multi:
-	$(MULTIDO) $(AM_MAKEFLAGS) DO=check multi-do
+	$(MULTIDO) $(AM_MAKEFLAGS) DO=check multi-do # $(MAKE)
 mostlyclean-multi:
-	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean
+	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean # $(MAKE)
 clean-multi:
-	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean
+	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean # $(MAKE)
 distclean-multi:
-	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean
+	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean # $(MAKE)
 maintainer-clean-multi:
-	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean
+	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean # $(MAKE)
 
 MAKEOVERRIDES=
 
Index: newlib/Makefile.in
===================================================================
RCS file: /cvs/uberbaum/newlib/Makefile.in,v
retrieving revision 1.29
diff -u -p -r1.29 Makefile.in
--- newlib/Makefile.in 22 Nov 2002 19:54:22 -0000 1.29
+++ newlib/Makefile.in 29 Sep 2003 20:05:44 -0000
@@ -801,7 +801,7 @@ stmp-targ-include: config.status
 install-data-local:	install-toollibLIBRARIES
 @USE_LIBTOOL_FALSE@	rm -f $(DESTDIR)$(toollibdir)/libg.a
 @USE_LIBTOOL_FALSE@	ln $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a >/dev/null 2>/dev/null || cp $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a
-	$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do
+	$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE)
 	-if [ -z "$(MULTISUBDIR)" ]; then \
 	  $(mkinstalldirs) $(DESTDIR)$(tooldir)/include; \
 	  for i in $(srcdir)/libc/include/*.h; do \
@@ -860,18 +860,19 @@ clean-recursive: clean-multi
 distclean-recursive: distclean-multi
 maintainer-clean-recursive: maintainer-clean-multi
 
+# The $(MAKE) comments below are to enable parallel building.
 all-multi:
-	$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
+	$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE)
 check-multi:
-	$(MULTIDO) $(AM_MAKEFLAGS) DO=check multi-do
+	$(MULTIDO) $(AM_MAKEFLAGS) DO=check multi-do # $(MAKE)
 mostlyclean-multi:
-	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean
+	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean # $(MAKE)
 clean-multi:
-	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean
+	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean # $(MAKE)
 distclean-multi:
-	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean
+	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean # $(MAKE)
 maintainer-clean-multi:
-	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean
+	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean # $(MAKE)
 
 site.exp: Makefile
 	@echo 'Making a new site.exp file...'
-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                 aoliva@{redhat.com, gcc.gnu.org}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist                Professional serial bug killer

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]