* Also cleanup a bit the makefile.
* Also removing small inconsistency for arm builds where log would be
skipped if doing a make hdboot, but not when cross-compiling.
Change-Id: Ic9e20655234a667ea8a967d05589d4df46c2d521
Due to the ABI we are using we have to use the earm architecture
moniker for the build system to behave correctly. This involves
then some headers to move around.
There is also a few related Makefile updates as well as minor
source code corrections.
Previously, under some circumstances, the make command could
yield netbsdsrc in other directories than the source directory,
as expected.
This patch fixes this behaviour, by first changing to the expected
directory, and only at the end going back to the original directory.
Also fix a potential issue where host tools would be compiled
dynamically under MINIX.
This also updates proto.common.dynamic to use the new placement
of the dynamic libraries (/usr/lib)
* Remade patch so it works with minix patch tool.
* New MINIX tar support -ox, so revert back to it
In fetch scripts, tar had been replaced by bsdtar as the prebvious
tar did not support the -o flag under minix, which is required to
prevent usage of tar file stored user and group information.
This introduces portability problems. As our new tar tool now
support that flag revert back to improve portability.
upgrade to NetBSD CVS release from 2012/10/17 12:00:00 UTC
Makefiles updates to imporve portability
Made sure to be consistent in the usage of braces/parenthesis at
least on a per file basis. For variables, it is recommended to
continue to use braces.
The tested targets are the followgin ones:
* tools
* distribution
* sets
* release
The remaining NetBSD targets have not been disabled nor tested
*at all*. Try them at your own risk, they may reboot the earth.
For all compliant Makefiles, objects and generated files are put in
MAKEOBJDIR, which means you can now keep objects between two branch
switching. Same for DESTDIR, please refer to build.sh options.
Regarding new or modifications of Makefiles a few things:
* Read share/mk/bsd.README
* If you add a subdirectory, add a Makefile in it, and have it called
by the parent through the SUBDIR variable.
* Do not add arbitrary inclusion which crosses to another branch of
the hierarchy; If you can't do without it, put a comment on why.
If possible, do not use inclusion at all.
* Use as much as possible the infrastructure, it is here to make
life easier, do not fight it.
Sets and package are now used to track files.
We have one set called "minix", composed of one package called "minix-sys"
as disk space typically isn't a concern when crosscompiling, but
convenience and ability to debug is, change the strip and gzip defaults
. do not strip or gzip the binaries when crosscompiling
this makes it faster to rebuild and restart a compiled system, with
debugging info if so desired.
This decreases external dependencies for crosscompilation. Note that
these libraries are not built nor used by Minix itself.
Furthermore, the shell scripts that download the tarballs for these
libraries, gcc, binutils, and gmake now also support curl in addition
to wget.