This merges pull request #99 by @blackwellops and removes
the ./bootstrap script since the musl-cross can be built as
part of the normal dependency tree.
Use --prefix="" to ensure that no destination paths are in libraries.
Use -fdebug-prefix-map to rewrite build path so that it does not
appear in the executables.
Use -gno-record-gcc-switches to ensure that the -fdebug-prefix-map
does not appear in the executables.
Change all of the builds to use $(MAKE) instead of the /usr/bin/make.
Download and build GNU make-4.2 if the wrong version is installed
on the system.
Re-invoke build/make-4.2/make with the target that was passed in once
the correct make has been built.
Pass in the --host argument to all of the various programs
that need to treat the configure scripts as cross compilation
targets.
This removes all dependencies on the host libc (issue #7)
and adds some tools to the initrd (cryptsetup #46).
Remove unused tools (crash kernel and vmcore).
Replace "%Lx" scanf formatting with "%"SCNxPTR in /proc/iommem
reading code. This might be a musl bug since it works with glibc
sscanf.
This adds compilations modules for musl-libc and kernel-headers.
The entire initrd (busybox, cryptsetup, gpgv, kexec, etc) can be built
with the much smaller libc and it appears to work with chroot.
Library paths are not set correctly and files are installed into
heads/install to make them accessible to other modules. This prevents
the initrd from working without manual fixup; need to fix before
merging into master.
Build times have gone up since everything is being rebuilt more
often for some reason.
This resolves issue #73 by replacing the use of log10() with
an integer version so that -lm is no longer required.
The parts of dmsetup that we use don't need threads, so
-lpthreads is removed from the link line.
As part of issue #1, we should build all libraries and programs that we
deploy into the Heads initrd. This modifies the module configurations
for all of them to install into heads/install so that we can build
against them.
Add dmsetup, cryptsetup and veritysetup (issue #46).
Build gpgv 1.4 as a standalone tool (issue #23).
Modify populate-lib to use the install directory by setting
LD_LIBRARY_PATH (issue #35).