obj, clean, cleandir and distclean. This reduces the chance of problems
(and the need to re-run make obj) if one is switching back and forth
between EXPORTABLE_SYSTEM and not, as US/Canadian developers tend to do.
parallel for a 'make build' (using make's -j flag). Only CPU-intensive jobs
are started in parallel.
Document the variables useable at the begining of the makefile
(NBUILDJOBS NOMAN NOSHARE UPDATE DESTDIR). Feel free to add documentation
for the ones I forgot !
Instead:
* If upgrading the compiler, build it *first*, before anything else.
* If upgrading the compiler and DESTDIR is set, barf.
This guarantees that libgcc is built during the library stage.
- If USE_EGCS is set, rebuild egcs's libgcc and install it
(unless DESTDIR is set and system compiler is not gcc 2.8,
in which case print a warning message and do nothing).
- Do not rebuild gcc 2.7's libgcc. egcs can build this fine.
includes, which is the case if you are building to an empty $DESTDIR.
Fixes PR 5497.
NOTE: This reverts us to the 1.3 behavior of requiring the secr
set to be installed for non-exportable builds. While unfortunate,
this allows a user to start with existing binary sets, rather than
requiring special knowledge of how to build a domestic tree to
$DESTDIR.
and libs in the object tree, if you use a separate object tree,
while maintaining backward compatability with other build methods.
See the notes in src/share/mk/bsd.README for full details. Note
that the `make includes' target now only installs the include files
in the build directory (if you use one--otherwise they go in DESTDIR
just like before); `make install' will install include files in
DESTDIR.
lib itself. On the Alpha (and other ELF systems), shared library builds
require files built/installed by the csu build, so if lib/csu isn't
built/installed before lib is, DESTDIR builds won't work and normal builds
can mistakenly use old versions of some csu files.
if people define EXPORTABLE_SYSTEM, they REALLY don't want to do stuff
in 'domestic'. Pay attention to it when doing 'make build'.
in 'make build', install share/mk _first_, because include dirs may
require new make templates.
in 'make build', install domestic includes after normal includes, so
they can previously-installed includes if necessary.
Note that all of domestic/lib should be built in 'make build' during the
library build stage.