summaryrefslogtreecommitdiff
path: root/mk/kernel-build.mk
AgeCommit message (Collapse)Author
2021-11-15mk: Support appending a DTB to kernel imagePhil Sutter
Activated by setting ADK_TARGET_KERNEL_APPEND_DTB symbol to the basename (without suffix) of a dtb file. Not quite user-friendly, but really meant for internal use via default symbol values depending on chosen target system. Signed-off-by: Phil Sutter <phil@nwl.cc>
2021-11-01mk: Introduce KERNEL_MAKE variablePhil Sutter
This combines the typical kernel make call idiom into a single variable reference. A side-effect is that parallel make is enabled (via added '-j' flag) in many cases, but that shouldn't cause harm. Signed-off-by: Phil Sutter <phil@nwl.cc>
2021-01-22fix defconfig usageWaldemar Brodkorb
2019-10-09lm32: try to build kernel for qemuWaldemar Brodkorb
2019-09-30remove unfinished alternative os porting effortsWaldemar Brodkorb
2018-05-02Fix bug related to renaming of ADK_TARGET_KERNEL_*stk
I'm not sure if this correct, or complete. I only know that it's the diff hunk in mk/kernel-build.mk that we need. The other ones were found by searching for ADK_TARGET_KERNEL_USE_CUSTOMCONFIG; I suspect these code blocks need to be duplicated for ADK_TARGET_WALDUX_KERNEL_USE_CUSTOMCONFIG?
2018-04-20fix stupid regression and allow kernel modules to be built againWaldemar Brodkorb
2018-03-07add support for walduxWaldemar Brodkorb
2017-12-31dec-multia: make netboot possible, add aboot bootloaderWaldemar Brodkorb
2017-03-21rework kernel build process, changes to kernelconfig are reflected nowWaldemar Brodkorb
Cleanup the package directory which is always used as intermediate step to build in the default some xz compressed archives with all package data. While reconfiguring the kernel mini.config or custom config changes to the firmware did not happen always. Some targets where redundant and the install step tries to compile, too. Be more quiet with any cpio usage.
2016-10-25add support for providing an externel kernel configuration fileMario Haustein
Signed-off-by: Mario Haustein <mario.haustein@hrz.tu-chemnitz.de>
2016-05-21we need kernel compression support for defconfigsWaldemar Brodkorb
2015-12-21fix with no modulesWaldemar Brodkorb
2015-12-13rework prereq checkWaldemar Brodkorb
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>
2015-12-11Revert "rework prereq check"Waldemar Brodkorb
This reverts commit fba2ff31928b18364c1934654169806f5c800e23.
2015-12-11rework prereq checkwbx
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
2015-09-12allow to use a defconfig, enable always experimental support in kernelWaldemar Brodkorb
2015-08-30skip building and installing kmod packages if using udevBALATON Zoltan
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
2015-08-27use HOST_PATH for modinfo, remove LOCALVERSION overwriteWaldemar Brodkorb
2015-08-20we need to check if any kernel modules are used, otherwise build breaksWaldemar Brodkorb
2015-08-03rework kernel module infrastructureWaldemar Brodkorb
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>
2015-07-06use depmod only when udev is choosen by the userWaldemar Brodkorb
2015-07-06do depmod during modules_install (trying to fix linux-git with udev)BALATON Zoltan
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
2015-06-17fix opkg packaging of kernel modules, reported by joerg s.Waldemar Brodkorb
2015-04-26remove -C $(LINUX_DIR) from OPTS variableWaldemar Brodkorb
Otherwise toolchain only compiling of gcc is failing while trying to install header files.
2015-02-28extend KERNEL_MAKE_OPTS by the target directoryPhil Sutter
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.
2014-06-21s/TOPDIR/ADK_TOPDIR/Waldemar Brodkorb
to avoid namespace collisions in some packages, rename TOPDIR. Sorry you need to make cleandir && make prereq && make
2014-06-02refactor CPU_ARCH/ARCH variablesWaldemar Brodkorb
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
2014-05-23discussed with phil, do not split kernel patches between kernel-headers and ↵Waldemar Brodkorb
kernel, can make issues
2014-04-15add basic support for aarch64 with ARMv8 foundation model, toolchain and ↵Waldemar Brodkorb
kernel works, userland broken.
2014-03-26test framework fixesWaldemar Brodkorb
2014-03-15fix kernel build on Darwin for x86 targetsWaldemar Brodkorb
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.
2014-03-13update to 3.10.33Waldemar Brodkorb
- add support for system specific patches, cubox-i and raspberry-pi patches are in conflict - fix hifiberry driver support
2014-03-11finetune rebuild stuffWaldemar Brodkorb
need to rebuild kmod-packages, when removed. f.e. by hudson. fix kmod-soft-watchdog while there. Use bin directory for ldd to avoid a cpio failure.
2013-12-28convert microblaze to miniconfig kernel config generation, add support for ↵Waldemar Brodkorb
squashfs and jffs2 rootfs for qemu-microblaze, add support for both machine emulations
2013-12-08add support for microblaze architecture, tested with qemu-system-microblaze{,el}Waldemar Brodkorb
2013-11-11fix rebuild issue for zimage targetWaldemar Brodkorb
2013-11-09kernel name and make target are different things, sometimesWaldemar Brodkorb
2013-11-08unbreak module buildWaldemar Brodkorb
2013-11-08enable variable kernel target name, qemu-mips targets use vmlinuzWaldemar Brodkorb
2013-10-25fix non-verbose buildWaldemar Brodkorb
2012-08-06quietWaldemar Brodkorb
2012-07-16add support for m68k toolchain/qemuWaldemar Brodkorb
2011-06-12update default kernel to 2.6.39Waldemar Brodkorb
2011-01-07pass KERNEL_MAKE_ENV to all invocations of make on the Linux kernelThorsten Glaser
similar to KERNEL_MAKE_OPTS just as environment Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
2010-12-30rework architecture / embedded systems conceptWaldemar Brodkorb
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 ;)
2010-09-16Merge branch 'master' of git+ssh://openadk.org/git/openadkWaldemar Brodkorb
Conflicts: mk/kernel-build.mk package/expat/Makefile package/gettext/Makefile package/perl/Makefile package/zlib/Makefile
2010-09-16add some native build fixes (tested on Lemote notebook)Waldemar Brodkorb
- enable busybox applets needed for natvie builds - add header packages for expat and libnl - remove rtl8187b driver, use kernel included driver (needs more testing)
2010-08-06some more fixes for 2.6.35 update on lemoteWaldemar Brodkorb
2010-07-01fix compile breakWaldemar Brodkorb