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

Reply via email to