Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 May 2009 20:07:01 +0200
From:      David Naylor <naylor.b.david@gmail.com>
To:        pav@freebsd.org
Cc:        pgollucci@p6m7g8.com, Ion-Mihai Tetcu <itetcu@freebsd.org>, freebsd-ports@freebsd.org
Subject:   Re: MAKE_JOBS_UNSAFE (some more ports)
Message-ID:  <200905242007.06917.naylor.b.david@gmail.com>
In-Reply-To: <1243182477.18007.18.camel@hood.oook.cz>
References:  <20090522.195350.193746535.chat95@mac.com> <20090524190131.0b30b101@it.buh.tecnik93.com> <1243182477.18007.18.camel@hood.oook.cz>

next in thread | previous in thread | raw e-mail | index | archive | help
--nextPart1669893.nhllpVrAgv
Content-Type: text/plain;
  charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

On Sunday 24 May 2009 18:27:57 Pav Lucistnik wrote:
> Ion-Mihai Tetcu p=C3=AD=C5=A1e v ne 24. 05. 2009 v 19:01 +0300:
> > On Sun, 24 May 2009 16:10:23 +0200
> >
> > Pav Lucistnik <pav@FreeBSD.org> wrote:
> > > Ion-Mihai Tetcu p=C3=AD=C5=A1e v so 23. 05. 2009 v 13:51 +0300:
> > > > > > - MAKE_JOBS_NUMBER defaults (but user defined) to number of
> > > > > > cores
> > > >
> > > > This part looks OK, I wonder if there's any reason t ain't like this
> > > > now; Pav?
> > > > -.if defined(MAKE_JOBS_NUMBER)
> > > > +MAKE_JOBS_NUMBER?=3D	`${SYSCTL} -n kern.smp.cpus`
> > > >  _MAKE_JOBS=3D		-j${MAKE_JOBS_NUMBER}
> > > > -.else
> > > > -_MAKE_JOBS=3D		-j`${SYSCTL} -n kern.smp.cpus`
> > > > -.endif
> > >
> > > Wouldn't that mean an evaluation of the backtick command in every
> > > make(1) invocation? That would be highly undesirable.

I don't believe that is the case. =20

Here is what I get with the patch applied (MAKE_JOBS_NUMBER not defined):
/usr/ports/editors/openoffice.org-3# make -V MAKE_JOBS_NUMBER -V _MAKE_JOBS
`/sbin/sysctl -n kern.smp.cpus`
=2Dj`/sbin/sysctl -n kern.smp.cpus`

Wouldn't this indicate that the backtick command is not being evaluated?

The following does, however, make MAKE_JOBS_NUMBER resolve, and fixes ooo2=
=20
with parallel build. =20

# Multiple make jobs support
=2Eif defined(DISABLE_MAKE_JOBS) || defined(MAKE_JOBS_UNSAFE)
MAKE_JOBS_NUMBER=3D       1
_MAKE_JOBS=3D             #
=2Eelse
=2Eif defined(MAKE_JOBS_SAFE) || defined(FORCE_MAKE_JOBS)
=2Eif !defined(MAKE_JOBS_NUMBER)
MAKE_JOBS_NUMBER!=3D      ${SYSCTL} -n kern.smp.cpus
=2Eendif
_MAKE_JOBS=3D             -j${MAKE_JOBS_NUMBER}
[etc]

and then I get:
/usr/ports/editors/openoffice.org-3# make -V MAKE_JOBS_NUMBER -V _MAKE_JOBS
4
=2Dj4

I agree that having sysctl being called every time is not good.  I don't th=
ink=20
it is unavoidable in the ooo2 case (but that is only a few ports). =20

--nextPart1669893.nhllpVrAgv
Content-Type: application/pgp-signature; name=signature.asc 
Content-Description: This is a digitally signed message part.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (FreeBSD)

iEYEABECAAYFAkoZjMoACgkQUaaFgP9pFrIlkwCfdskVHMlArfPnml+SpiggM7dY
OUAAnixLCkzj7yHvnjnH4/G2GHCRcCu/
=Lm7e
-----END PGP SIGNATURE-----

--nextPart1669893.nhllpVrAgv--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200905242007.06917.naylor.b.david>