Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 20 Sep 2013 11:52:08 -0400
From:      Gary Palmer <gpalmer@freebsd.org>
To:        Thomas Laus <lausts@acm.org>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: FreeBSD 9-Stable + Atom D510 Freeze
Message-ID:  <20130920155208.GA55143@in-addr.com>
In-Reply-To: <20130920144928.GA50355@mail.laus.org>
References:  <523AFF46.29244.4657A1@lausts.acm.org> <523B91F2.8070004@heuristicsystems.com.au> <523C49A9.5719.289C1E@lausts.acm.org> <20130920143615.GA40029@in-addr.com> <20130920144928.GA50355@mail.laus.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Sep 20, 2013 at 10:49:28AM -0400, Thomas Laus wrote:
> Gary Palmer [gpalmer@freebsd.org] wrote:
> > 
> > When building kernel & world do you use the '-j' argument to do parallel
> > builds?  AFAIK thats not done by default, but it is for some ports.
> >
> Gary:
> 
> I just use the system defaults when building anything.  If there is a
> '-j' argument passed to the compiler, I was not the one that did it.
> Does this mean that the port building process needs to determine the
> processor type in the configure stage?  I only use portmaster to keep
> the ports updated.  I don't know of a global hook that will change the
> compiler build flags in portmaster.

Hi Tim,

It's not a compiler flag, it's a make flag.  make -j n will fork off up to
n compilers to do the build.  If you just do "make buildworld" then there
is no parallel compilation.

It used to be that ports had MAKE_JOBS_SAFE in the Makefile to mark that
the port could be built using parallel compiles with the '-j' argument
to make.  It appears that the logic has been switched and now you have
to mark them as MAKE_JOBS_UNSAFE to say that parallel builds shouldn't be
done, indicating that parallel builds are the default now (unless I'm
misreading the code)

You can try putting

DISABLE_MAKE_JOBS=yes

into /etc/make.conf to see if that stops the problem on port builds.
Alternatively I think you could do

portmaster -m DISABLE_MAKE_JOBS=yes <other options>

However you'd have to do that each time you run portmaster.  I think
putting

PM_MAKE_ARGS="DISABLE_MAKE_JOBS=yes"

in your .portmasterrc may do the same thing (not tried it).

Note: this is NOT a fix.  If it works, it merely stops the ports builder
from triggering the problem by not doing parallel compiles.  The compiles
will also take longer.

Regards,

Gary



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130920155208.GA55143>