This is the mail archive of the
newlib@sources.redhat.com
mailing list for the newlib project.
enable make -j for multilibs
- From: Alexandre Oliva <aoliva at redhat dot com>
- To: newlib at sources dot redhat dot com
- Date: 29 Sep 2003 17:08:35 -0300
- Subject: enable make -j for multilibs
- Organization: GCC Team, Red Hat
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