rpms/xfsdump/devel xfsdump-parallel-build.patch, NONE, 1.1 xfsdump.spec, 1.7, 1.8

Eric Sandeen sandeen at fedoraproject.org
Wed Nov 12 17:23:52 UTC 2008


Author: sandeen

Update of /cvs/pkgs/rpms/xfsdump/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv32377

Modified Files:
	xfsdump.spec 
Added Files:
	xfsdump-parallel-build.patch 
Log Message:
* Wed Nov 12 2008 Eric Sandeen <sandeen at redhat.com> 2.2.48-2
- Enable parallel builds


xfsdump-parallel-build.patch:

--- NEW FILE xfsdump-parallel-build.patch ---
(oops, cvs version)

I got tired of waiting for xfsdump to build
serially...

On a 16p altix, make -j16 (excluding the configure
phase) went from 55s to 12s.

Signed-off-by: Eric Sandeen <sandeen at sandeen.net>
---

Index: xfsdump-2.2.48/Makefile
===================================================================
--- xfsdump-2.2.48.orig/Makefile	2007-09-10 21:01:10.000000000 -0500
+++ xfsdump-2.2.48/Makefile	2008-11-12 11:17:09.751001665 -0600
@@ -15,23 +15,28 @@ LSRCFILES = configure configure.in acloc
 LDIRT = config.log .dep config.status config.cache confdefs.h conftest* \
 	Logs/* built .census install.* install-dev.* *.gz
 
-SUBDIRS = include librmt \
-	common estimate fsr inventory invutil dump restore \
+LIB_SUBDIRS = include librmt
+TOOL_SUBDIRS = common estimate fsr inventory invutil dump restore \
 	m4 man doc po debian build
 
+SUBDIRS = $(LIB_SUBDIRS) $(TOOL_SUBDIRS)
+
 default: $(CONFIGURE)
 ifeq ($(HAVE_BUILDDEFS), no)
 	$(MAKE) -C . $@
 else
-	$(SUBDIRS_MAKERULE)
+	$(MAKE) $(SUBDIRS)
 endif
 
+$(TOOL_SUBDIRS) : $(LIB_SUBDIRS)
+
 ifeq ($(HAVE_BUILDDEFS), yes)
 include $(BUILDRULES)
 else
 clean:	# if configure hasn't run, nothing to clean
 endif
 
+.NOTPARALLEL: $(CONFIGURE)
 $(CONFIGURE):
 	autoconf
 	./configure \
@@ -51,13 +56,17 @@ $(CONFIGURE):
 aclocal.m4::
 	aclocal --acdir=`pwd`/m4 --output=$@
 
-install: default
-	$(SUBDIRS_MAKERULE)
+install: default $(addsuffix -install,$(SUBDIRS))
 	$(INSTALL) -m 755 -d $(PKG_DOC_DIR)
 	$(INSTALL) -m 644 README $(PKG_DOC_DIR)
 
-install-dev: default
-	$(SUBDIRS_MAKERULE)
+%-install:
+	$(MAKE) -C $* install
+
+install-dev: default $(addsuffix -install-dev,$(SUBDIRS))
+
+%-install-dev:
+	$(MAKE) -C $* install-dev
 
 realclean distclean: clean
 	rm -f $(LDIRT) $(CONFIGURE)
Index: xfsdump-2.2.48/include/buildmacros
===================================================================
--- xfsdump-2.2.48.orig/include/buildmacros	2007-09-10 21:01:12.000000000 -0500
+++ xfsdump-2.2.48/include/buildmacros	2008-11-12 11:16:13.008002065 -0600
@@ -123,14 +123,6 @@ INSTALL_LINGUAS = \
 	done
 endif
 
-SUBDIRS_MAKERULE = \
-	@for d in $(SUBDIRS) ""; do \
-		if test -d "$$d" -a ! -z "$$d"; then \
-			$(ECHO) === $$d ===; \
-			$(MAKEF) -C $$d $@ || exit $$?; \
-		fi; \
-	done
-
 MAN_MAKERULE = \
 	@for f in *.[12345678] ""; do \
 		if test ! -z "$$f"; then \
Index: xfsdump-2.2.48/include/buildrules
===================================================================
--- xfsdump-2.2.48.orig/include/buildrules	2007-09-10 21:01:12.000000000 -0500
+++ xfsdump-2.2.48/include/buildrules	2008-11-12 11:16:13.034000928 -0600
@@ -6,18 +6,23 @@ _BUILDRULES_INCLUDED_ = 1
 
 include $(TOPDIR)/include/builddefs
 
-clean clobber : $(SUBDIRS)
+clean clobber: $(addsuffix -clean,$(SUBDIRS))
 	rm -f $(DIRT)
 	@rm -fr .libs
-	$(SUBDIRS_MAKERULE)
+
+%-clean::
+	$(MAKE) -C $* clean
 
 # Never blow away subdirs
 ifdef SUBDIRS
 .PRECIOUS: $(SUBDIRS)
-$(SUBDIRS):
-	$(SUBDIRS_MAKERULE)
 endif
 
+.PHONY: $(SUBDIRS)
+
+$(SUBDIRS):
+	$(MAKE) -C $@
+
 #
 # Standard targets
 #
@@ -68,11 +73,13 @@ ifdef LTLIBRARY
 DEPENDSCRIPT := $(DEPENDSCRIPT) | $(SED) -e 's,^\([^:]*\)\.o,\1.lo,'
 endif
 
-depend : $(CFILES) $(HFILES)
-	$(SUBDIRS_MAKERULE)
+depend : $(CFILES) $(HFILES) $(addsuffix -depend,$(SUBDIRS))
 	$(DEPENDSCRIPT) > .dep
 	test -s .dep || rm -f .dep
 
+%-depend:
+	$(MAKE) -C $* depend
+
 # Include dep, but only if it exists
 ifeq ($(shell test -f .dep && echo .dep), .dep)
 include .dep
Index: xfsdump-2.2.48/man/Makefile
===================================================================
--- xfsdump-2.2.48.orig/man/Makefile	2007-09-10 21:01:13.000000000 -0500
+++ xfsdump-2.2.48/man/Makefile	2008-11-12 11:16:13.051001065 -0600
@@ -7,7 +7,16 @@ include $(TOPDIR)/include/builddefs
 
 SUBDIRS = man8
 
-default install install-dev : $(SUBDIRS)
-	$(SUBDIRS_MAKERULE)
+default : $(SUBDIRS)
+
+install : $(addsuffix -install,$(SUBDIRS))
+
+install-dev : $(addsuffix -install-dev,$(SUBDIRS))
+
+%-install:
+	$(MAKE) -C $* install
+
+%-install-dev:
+	$(MAKE) -C $* install-dev
 
 include $(BUILDRULES)


Index: xfsdump.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xfsdump/devel/xfsdump.spec,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- xfsdump.spec	11 Feb 2008 03:07:00 -0000	1.7
+++ xfsdump.spec	12 Nov 2008 17:23:22 -0000	1.8
@@ -1,7 +1,7 @@
 Summary: Administrative utilities for the XFS filesystem
 Name: xfsdump
 Version: 2.2.48
-Release: 1%{?dist}
+Release: 2%{?dist}
 # Licensing based on generic "GNU GENERAL PUBLIC LICENSE"
 # in source, with no mention of version.
 License: GPL+
@@ -13,6 +13,8 @@
 BuildRequires: xfsprogs-devel, e2fsprogs-devel, libattr-devel ncurses-devel
 Requires: xfsprogs >= 2.6.30, attr >= 2.0.0
 
+Patch0:		xfsdump-parallel-build.patch
+
 %description
 The xfsdump package contains xfsdump, xfsrestore and a number of
 other utilities for administering XFS filesystems.
@@ -32,6 +34,7 @@
 
 %prep
 %setup -q
+%patch0 -p1
 
 %build
 autoconf
@@ -61,8 +64,11 @@
 /sbin/*
 
 %changelog
+* Wed Nov 12 2008 Eric Sandeen <sandeen at redhat.com> 2.2.48-2
+- Enable parallel builds
+
 * Sun Feb 10 2008 Eric Sandeen <sandeen at redhat.com> - 2.2.48-1
-- Update to xfsdump version 2.2.46
+- Update to xfsdump version 2.2.48
 - First build with gcc-4.3
 
 * Mon Sep 10 2007 Eric Sandeen <sandeen at redhat.com> - 2.2.46-1




More information about the fedora-extras-commits mailing list