On Friday 22 May 2009 15:41:38 Ion-Mihai Tetcu wrote: > On Fri, 22 May 2009 19:53:50 +0900 (JST) > > Maho NAKATA <cha...@mac.com> wrote: > > In massive parallel build, OOo can be broken. We explicitly > > fix them otherwise broken. I just test with MAXJOB = 4 or something > > like that. > > > > > I had it complain about perl (or > > > something) needing to be recompiled but that was because I > > > interrupted the build process. It has always completed for me when > > > using MAX* from the start. > > > > me too. but - note it just works for you. > > > > > I can make the patch, only thing is bsd.port.mk will need to be > > > patched (simple enough though). > > I can run a few test builds on QAT and maybe Phillip can do the same on > his tindy. Just drop us the patch ;-) > Even if it only works with MAXJOB = 2, we mark it as such and the build > will be faster.
Please see attached for the patch. The changes to bsd.port.mk: - MAKE_JOBS_NUMBER always defined - MAKE_JOBS_NUMBER forced to 1 if UNSAFE of DISABLE - MAKE_JOBS_NUMBER defaults (but user defined) to number of cores I've then used MAKE_JOBS_NUMBER to set MAXPROCESSES, MAXMODULES and NUMOFPROCESSES for openoffice-* (not including 1.*). I believe openoffice-2* can me marked as SAFE while openoffice-3* should not be marked at all (since it sometimes works..., very well for me :-). This patch just makes openoffice-* behave like other ports in regards to parallel builds and the usual MAKE_JOBS variables now works as expected. Happy testing, David
diff -ru /usr/ports/Mk/bsd.port.mk ports/Mk/bsd.port.mk --- /usr/ports/Mk/bsd.port.mk 2009-05-23 10:54:23.000000000 +0200 +++ ports/Mk/bsd.port.mk 2009-05-23 10:55:11.000000000 +0200 @@ -2178,15 +2178,13 @@ # Multiple make jobs support .if defined(DISABLE_MAKE_JOBS) || defined(MAKE_JOBS_UNSAFE) +MAKE_JOBS_NUMBER= 1 _MAKE_JOBS= # .else .if defined(MAKE_JOBS_SAFE) || defined(FORCE_MAKE_JOBS) -.if defined(MAKE_JOBS_NUMBER) +MAKE_JOBS_NUMBER?= `${SYSCTL} -n kern.smp.cpus` _MAKE_JOBS= -j${MAKE_JOBS_NUMBER} -.else -_MAKE_JOBS= -j`${SYSCTL} -n kern.smp.cpus` -.endif -.if defined(FORCE_MAKE_JOBS) +.if defined(FORCE_MAKE_JOBS) && !defined(MAKE_JOBS_SAFE) BUILD_FAIL_MESSAGE+= "You have chosen to use multiple make jobs (parallelization) for all ports. This port was not tested for this setting. Please remove FORCE_MAKE_JOBS and retry the build before reporting the failure to the maintainer." .endif .endif diff -ru /usr/ports/editors/openoffice.org-2/Makefile ports/editors/openoffice.org-2/Makefile --- /usr/ports/editors/openoffice.org-2/Makefile 2009-05-23 10:54:23.000000000 +0200 +++ ports/editors/openoffice.org-2/Makefile 2009-05-23 10:34:17.000000000 +0200 @@ -132,7 +132,7 @@ CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message -NUMOFPROCESSES?= 1 +NUMOFPROCESSES?= ${MAKE_JOBS_NUMBER} CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ diff -ru /usr/ports/editors/openoffice.org-2-RC/Makefile ports/editors/openoffice.org-2-RC/Makefile --- /usr/ports/editors/openoffice.org-2-RC/Makefile 2009-05-23 10:54:23.000000000 +0200 +++ ports/editors/openoffice.org-2-RC/Makefile 2009-05-23 10:35:49.000000000 +0200 @@ -134,7 +134,7 @@ CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message -NUMOFPROCESSES?= 1 +NUMOFPROCESSES?= ${MAKE_JOBS_NUMBER} CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ diff -ru /usr/ports/editors/openoffice.org-2-devel/Makefile ports/editors/openoffice.org-2-devel/Makefile --- /usr/ports/editors/openoffice.org-2-devel/Makefile 2009-05-23 10:54:23.000000000 +0200 +++ ports/editors/openoffice.org-2-devel/Makefile 2009-05-23 10:36:11.000000000 +0200 @@ -137,8 +137,8 @@ CONFIGURE_WRKSRC= ${WRKSRC}/config_office TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message -MAXPROCESSES?= 1 -MAXMODULES?= 1 +MAXPROCESSES?= ${MAKE_JOBS_NUMBER} +MAXMODULES?= ${MAKE_JOBS_NUMBER} CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ diff -ru /usr/ports/editors/openoffice.org-3/Makefile ports/editors/openoffice.org-3/Makefile --- /usr/ports/editors/openoffice.org-3/Makefile 2009-05-23 10:54:23.000000000 +0200 +++ ports/editors/openoffice.org-3/Makefile 2009-05-23 10:36:29.000000000 +0200 @@ -134,8 +134,8 @@ WRKSRC?= ${WRKDIR}/${OOOTAG} TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message -MAXPROCESSES?= 1 -MAXMODULES?= 1 +MAXPROCESSES?= ${MAKE_JOBS_NUMBER} +MAXMODULES?= ${MAKE_JOBS_NUMBER} CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \ diff -ru /usr/ports/editors/openoffice.org-3-RC/Makefile ports/editors/openoffice.org-3-RC/Makefile --- /usr/ports/editors/openoffice.org-3-RC/Makefile 2009-05-23 10:54:23.000000000 +0200 +++ ports/editors/openoffice.org-3-RC/Makefile 2009-05-23 10:36:59.000000000 +0200 @@ -135,8 +135,8 @@ WRKSRC?= ${WRKDIR}/${OOOTAG} TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message -MAXPROCESSES?= 1 -MAXMODULES?= 1 +MAXPROCESSES?= ${MAKE_JOBS_NUMBER} +MAXMODULES?= ${MAKE_JOBS_NUMBER} USE_AUTOTOOLS= autoconf:262 CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ diff -ru /usr/ports/editors/openoffice.org-3-devel/Makefile ports/editors/openoffice.org-3-devel/Makefile --- /usr/ports/editors/openoffice.org-3-devel/Makefile 2009-05-23 10:54:23.000000000 +0200 +++ ports/editors/openoffice.org-3-devel/Makefile 2009-05-23 10:36:42.000000000 +0200 @@ -133,8 +133,8 @@ WRKSRC?= ${WRKDIR}/${OOOTAG} TCSH?= /bin/tcsh PKGMESSAGE= ${WRKDIR}/pkg-message -MAXPROCESSES?= 1 -MAXMODULES?= 1 +MAXPROCESSES?= ${MAKE_JOBS_NUMBER} +MAXMODULES?= ${MAKE_JOBS_NUMBER} CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp \ --with-gnu-patch=${LOCALBASE}/bin/gpatch \
signature.asc
Description: This is a digitally signed message part.