Sorry, *I was wrong* about telling as invalid the use of
mk_add_options MOZ_MAKE_FLAGS="-j$(getconf _NPROCESSORS_ONLN)"
in mozconfig. More disscussed below.
I. CHOWN
II. Number of threads
III. Make install analysis
IV. Conclusions
I. CHOWN
After building as normal user:
su root
cd /tmp/mozilla-release
make -f client.mk install INSTALL_SDK=
Found *59 non-root* files.
# find /usr/lib/firefox-36.0/ -not -user 0 | wc -l
59
II. Number of threads
BTW, number of threads used is the same as for build (build was logged
in another file):
$ xzgrep 'make -j' firefox-36.0-blfs-2015.02.27-11h17m35s.log.xz
make -j5 -C /tmp/mozilla-release/firefox-build-dir install
III. Make install analysis
This is understood by analysing the make install log:
{{{
Adding client.mk options from /tmp/mozilla-release/mozconfig:
MOZ_MAKE_FLAGS=-j5
}}}
shows that MOZ_MAKE_FLAGS used is set previously (mozconfig, in this case).
...
Further ahead, we have the actual install commands:
1) ../../config/nsinstall -D /usr/lib/firefox-36.0
2) (cd ../../dist/firefox && tar --exclude=precomplete
--exclude=.mkdir.done -chf - .) | \
(cd /usr/lib/firefox-36.0 && tar -xf -)
3) ../../config/nsinstall -D /usr/bin
4) rm -f -f /usr/bin/firefox
5) ln -s /usr/lib/firefox-36.0/firefox /usr/bin
First line creates 0:0 /usr/lib/firefox-36.0 - that is OK.
Second line install files there, using tar to pack a stream.tar which is
piped to another tar which unpacks into /usr/lib/firefox-36.0 - that is
not OK.
Third to fifth lines are trivial, removes, then creates a new 0:0
/usr/bin/firefox - that is OK.
Problem is the Second line, because the packed then unpacked files were
created by a *normal user*, as we always want to be done in BLFS.
IV. Conclusions
Conclusion 1: *chown is necessary*
Sorry, *I was wrong* about telling as invalid the use of
mk_add_options MOZ_MAKE_FLAGS="-j$(getconf _NPROCESSORS_ONLN)"
in mozconfig. It does get the correct value. Probably, I forgot to save
the mozconfig and it picked up the previously save value 4.
However, I just found that *if it is not defined* (in mozconfig or
anywhere else), it will work like
mk_add_options MOZ_MAKE_FLAGS="-j$(getconf _NPROCESSORS_ONLN)"
Conclusion 2: it is a good idea to define MOZ_MAKE_FLAGS somewhere, or
it will default to the available threads (=MOZ_MAKE_FLAGS="-j$(getconf
_NPROCESSORS_ONLN)".
Conclusion 3: if MOZ_MAKE_FLAGS is not used in the make install line, it
will use default or previously defined value. If you want a install with
-j1, MOZ_MAKE_FLAGS=-j1 must be exported or defined in mozconfig or in
the make install line.
--
[]s,
Fernando
--
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page