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