Age | Commit message (Collapse) | Author |
|
The new prereq check is completely implemented in
POSIX shell in scripts/prereq.sh.
It combines the old features from Makefile, scan-tools.sh,
scan-pkgs.sh, reloc.sh and some wrappers for tools.
The big benefit is to have all portability stuff in one place.
Furthermore we can compile GNU make and bash on the fly, for
systems lacking the required tools.
All changes on the host are detected on the fly, no make
prereq required anymore.
The build process is separated in following three phases:
1. small wrapper Makefile is used for BSD make or GNU make
2. prereq.sh is called, doing all checking, calling Makefile.adk
3. old logic in Makefile.adk or mk/build.mk is used
Tested successfully on Linux, MacOS X, Cygwin, FreeBSD, OpenBSD
and NetBSD.
An old depmaker bug was fixed, only optional host tools are compiled.
For example, even when a host provides xz, a local xz was compiled
in the past, because other packages had a build dependency on it.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
|
|
This reverts commit fba2ff31928b18364c1934654169806f5c800e23.
|
|
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
|
|
|
|
|
|
The new symbol will hide experimental stuff, so that
only known to work combinations are allowed to choose,
when ADK_EXPERIMENTAL disabled.
|
|
|
|
As mentioned by Phil, a lot of disk space is needed nowadays
to build OpenADK. Switch to non debug builds as default to
save 2 GB for each default build.
|
|
build system
|
|
Use one place and not hard coded for each device.
There exist use cases where on a specific device
like raspberry pi, not the default 115200 baud rate
is used.
|
|
- Sync with Kernel upstream Kconfig
- use new feature visible
- add a patch for select on choices
https://lkml.org/lkml/2011/2/17/379
- rename ADK_LINUX -> ADK_TARGET_ARCH
- remove package collection feature
- add appliance feature to define a appliance
more complete
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This is more commonly known as 32bit userland support on 64bit
architectures.
For simplicity's sake though, this implementation works the other way
round: just build a 64bit-able linker and compiler, but no
64bit-libraries at all (i.e., no multilib). This is then just enough to
compile a 64bit kernel, as that doesn't link to anything. The
alternative would have been to build a native 64bit compiler with
multilib-support in order to cross-compile a 32bit userland, resulting
in a multilib system without need for it.
In order to allow compilation of a 64bit kernel for a given target
system, have it select ADK_TARGET_KERNEL_MAY_64BIT. Upon selection of
that target, the symbol ADK_64BIT_KERNEL will occur in the "Global
settings" menu. Since certain aspects of the 64bit kernel .config may
greatly differ from it's 32bit counterpart, it has to be shipped
separately: target/<arch>/kernel64.config is the place to be.
Conflicts:
target/Makefile
toolchain/gcc/Makefile
Untested, due to conflicts (original patch conflicts with
multiple kernel version support).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Make configuration of new targets cheap.
Just add a new file in target/arch/sys-enabled/foo.
See other files for syntax. While doing runtime tests
with the new infrastructure I've updated a lot of other
stuff:
- gcc 4.5.2
- uClibc 0.9.32-rc1 (NPTL)
- strongswan, php, miredo, parted, util-linux-ng, e2fsprogs
I promise, this is the last big fat commit this year ;)
|