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>
|
|
Instead of maintaining mk/modules.mk which defines compilations of
related kernel modules to pack together into a single package, follow an
automatic approach: For every kernel module found in the modules
installation directory, create a single package.
There are a few caveats to cover:
=== Module Loading Order ===
Upon bootup, module loading is ordered based on the number-prefixed
files in /etc/modules.d/. The correct number was previously managed in
mk/modules.mk on a per-collection basis. The new approach is to have
levels which modules are to be assigned to. Level 0 contains modules
with no dependencies at all. Level 1 contains modules which have only
level 0 dependencies, and so on. This information is determined at
compile-time by make-module-ipkgs.sh.
=== Module Installation to Target RootFS ===
Since module packages are created automatically from the modules the
script finds, ADK build system has no knowledge about the connection
between what the user has selected in menuconfig and the actual module
packages. Therefore the earlier approach to install selected packages
into rootfs does not hold anymore. Instead, use wildcards to find all
packages in firmware directory prefixed by 'kmod-' and install them all
(hopefully doing the right thing).
=== Kernel Version ===
KERNEL_VERSION now contains KERNEL_RELEASE already
By creating a localversion file, make KERNEL_RELEASE part of the
kernel's version number (so KERNEL_VERSION is correct in most
situations)
Signed-off-by: Phil Sutter <phil@nwl.cc>
|
|
|
|
|
|
Otherwise toolchain only compiling of gcc is failing
while trying to install header files.
|
|
This change is straightforward but in toolchain/kernel-headers/Makefile
which seems to be called before ${BUILD_DIR}/linux symlink exists.
Therefore define LINUX_DIR to the correct value in between inclusion of
vars.mk (through rules.mk) and kernel-vars.mk.
|
|
executables (f.e. sash) with a wrong data start are created by elf2flt)
|
|
|
|
|
|
Generate all data needed when adding a new arch or system.
Recognize any changes in target/*/systems as reported as bug by
Joerg.
|
|
After Joerg asked me about the difference between
ADK_TARGET_ARCH and ADK_TARGET_CPU_ARCH I recognized many duplication
of variables for this information.
These patch fixes this up. Use make cleandir && make menuconfig && make
|
|
|
|
|
|
relocs tool uses some kind of regular expression, which does
not work with the provided one. Use pcre in this case.
Rework KERNEL_MAKE_OPTS while here. Use it in kernel-header, too.
|
|
not satisfying.
|
|
required. Add archivers to tools, remove prereq checks for them. Rename host_ dir in preparation for shared openadk source via nfs/smb from different host systems. Make some abi cleanup
|
|
resulting firmware
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* remove TCFLAGS/TLDFLAGS/TCPPFLAGS and only use
TARGET_CFLAGS/TARGET_LDFLAGS/TARGET_CPPFLAGS, ...
* activate GCC_HONOUR_COPTS and fix all packages to
honour CFLAGS
* use CC_FOR_BUILD, CFLAGS_FOR_BUILD, ... for all
build compilation, remove HOST* variants
* introduce KERNEL_MODULE_FLAGS for external kernel
modules
* mark rpm package as broken, mark syslinux for native builds
only, mark libhugetlb for eglibc/glibc only usage
|
|
ue=20via=20environment)
=20and=20honour=20HOSTCFLAGS=20better=20(still=20not=20fully=20=E2=98=B9)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
|
|
|
|
|
|
- driver package for ag241 dsl modem, it loads, but
we will see if it works..
|