FreeBSD 9-Stable + Atom D510 Freeze

Gary Palmer gpalmer at freebsd.org
Fri Sep 20 15:52:11 UTC 2013


On Fri, Sep 20, 2013 at 10:49:28AM -0400, Thomas Laus wrote:
> Gary Palmer [gpalmer at 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


More information about the freebsd-stable mailing list