Commit Graph

78 Commits

Author SHA1 Message Date
John Crispin 2ef0acc5fc kernel-build: fix STRIP_KERNEL_EXPORTS for recent kernels
Recent kernels started to mark exported symbols as global.
Adapt expressions in kernel-build.mk to also match global symbols
when grep'ing through nm output.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>

SVN-Revision: 42555
2014-09-15 16:18:48 +00:00
John Crispin 2e240a44c1 include: fix kernel download failure with git & local trees
When using the options EXTERNAL_KERNEL_TREE or KERNEL_GIT_CLONE_URI,
the command "make downloads" fails as it tries to download the kernel
tarball despite the option. This doesn't happen during a regular build
as in that case, the dependency is conditionned through the LINUX_SITE
variable, which is not set in these cases.

Below is a snapshot of the error for an target using a 3.14 kernel:

make[3]: *** No rule to make target `.../dl/linux-3.14.tar.xz',
needed by `download'.  Stop.

Change-Id: I1244969c1bbf9c81a6a64d68ae88ac58b0f8e79e
Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com>

SVN-Revision: 40913
2014-06-02 12:43:13 +00:00
Felix Fietkau 5a6a47e431 build: speed up kernel symbol export stripping
GNU grep has a high per-expression setup overhead when compiling regular
expressions. Use -F to force it to interpret the input as fixed strings,
which is much faster (fraction of a second instead of multiple minutes).

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 39049
2013-12-14 13:14:44 +00:00
Florian Fainelli a890ccd6e0 buildroot: build a second pass kernel if initramfs is enabled
If initramfs is enabled, build a second pass kernel containing the CPIO
rootfs, preliminary work to get non exclusive enabling of initramfs.

Signed-off-by: Florian Fainelli <florian@openwrt.org>

SVN-Revision: 37047
2013-06-27 19:58:20 +00:00
Felix Fietkau 8933b918cd kernel: use -ffunction-sections, -fdata-sections and --gc-sections on mips
in combination with kernel symbol export stripping this significantly reduces
the kernel image size

SVN-Revision: 35320
2013-01-26 16:26:13 +00:00
Felix Fietkau 7809d73fd2 kernel: fix module export stripping
SVN-Revision: 35319
2013-01-26 16:26:04 +00:00
Felix Fietkau 24b31c9428 kernel: fix stripping symbol exports
SVN-Revision: 34458
2012-12-02 17:42:17 +00:00
Jo-Philipp Wich 5171edd8d5 kernel-build.mk: there is no tarball when using CONFIG_KERNEL_GIT_CLONE_URI or CONFIG_EXTERNAL_KERNEL_TREE, do not make the prepared stamp file depend on it in this case
SVN-Revision: 28361
2011-10-03 11:33:13 +00:00
Felix Fietkau caf4747f0c build: clean up handling of the kernel config
- support kernel config overlays in env/
- allow overriding the target kernel config with CONFIG_TARGET=platform|subtarget|env

SVN-Revision: 26498
2011-04-06 14:48:55 +00:00
Lars-Peter Clausen a97d6b0c95 Add kernel_nconfig make target
SVN-Revision: 22518
2010-08-06 21:36:35 +00:00
Felix Fietkau fd8142403e add a build system option for collecting all kernel debug information (including modules) in a tarball
SVN-Revision: 22327
2010-07-21 15:18:24 +00:00
Felix Fietkau 8e808a54c2 Revert "sort Kconfig symbols automatically to make Kaloz happy :p" Relying on some sort implementations' weird behaviour of ignoring # and whitespaces at the beginning of a line is not a good idea, and it's certainly not portable
SVN-Revision: 19675
2010-02-16 21:34:50 +00:00
Gabor Juhos 03779da9c6 sort Kconfig symbols automatically to make Kaloz happy :p
SVN-Revision: 19582
2010-02-11 13:07:10 +00:00
Felix Fietkau ea41d3a288 merge target kernel config files with subtarget config files and add a variable override for editing the target kernel config file with make kernel_menuconfig in case the subtarget contains overrides (thx, sn9)
SVN-Revision: 18362
2009-11-11 01:25:06 +00:00
Felix Fietkau bb5a40c64b add an optional config option for stripping all unnecessary symbol exports from the kernel image
SVN-Revision: 17181
2009-08-08 14:22:04 +00:00
Felix Fietkau 6d782f93d8 kernel: make sure all patches are applied before running menuconfig or oldconfig
SVN-Revision: 15325
2009-04-21 13:08:56 +00:00
Felix Fietkau ab8c8b019f enable quilt by default for the kernel tree
SVN-Revision: 12400
2008-08-27 14:14:00 +00:00
Felix Fietkau 811b00f646 fix make kernel_menuconfig for subtarget kernel config files
SVN-Revision: 12376
2008-08-23 23:45:28 +00:00
Felix Fietkau a3a37d0bb1 rework parallel building to get rid of some warnings and add back support for parallelizing the kernel build fixes #3882
SVN-Revision: 12322
2008-08-16 16:59:47 +00:00
Felix Fietkau d26fa58d25 create a platform config-* file if there is none already when running kernel_menuconfig or kernel_oldconfig
SVN-Revision: 11460
2008-06-13 15:28:31 +00:00
Felix Fietkau 4c665e6ca4 large improvement for parallel builds. works without V=99 now and without warnings. tested with -j on an 2x dual core opteron machine
SVN-Revision: 11414
2008-06-09 15:38:45 +00:00
Felix Fietkau 02bc11903e fix kernel config on kernel_menuconfig abort
SVN-Revision: 11076
2008-05-08 15:52:55 +00:00
Felix Fietkau e2f7a60283 fixes for refresh/update handling
SVN-Revision: 9063
2007-09-29 04:29:11 +00:00
Felix Fietkau dbeb0fad24 Refactor downloading code into download.mk Support multiple file downloads Support svn downloads
SVN-Revision: 9057
2007-09-29 00:05:48 +00:00
Felix Fietkau 986445a623 properly clean up after kernel_{old,menu}config
SVN-Revision: 8737
2007-09-11 00:14:37 +00:00
Felix Fietkau 01b6a90e3d fix kernel_menuconfig
SVN-Revision: 8726
2007-09-10 01:04:57 +00:00
Felix Fietkau a9d683ca91 major target cleanup. it is now possible to have subtargets that can override many target settings, including arch - merge adm5120, adm5120eb. target profiles still need to be adapted for subtargets
SVN-Revision: 8694
2007-09-08 19:55:42 +00:00
Felix Fietkau 56231056ea strip the kernel version suffix from target directories, except for brcm-2.4 (the -2.4 will be included in the board name here). CONFIG_LINUX_<ver>_<board> becomes CONFIG_TARGET_<board>, same for profiles.
SVN-Revision: 8653
2007-09-06 16:27:37 +00:00
Nicolas Thill b35e6fe3ba include kernel-version.mk from kernel.mk so that a correct KERNEL_PATCHVER is always available
SVN-Revision: 8494
2007-08-26 13:26:02 +00:00
Felix Fietkau c6bc77ea36 build system cleanup/restructuring as described in http://lists.openwrt.org/pipermail/openwrt-devel/2007-August/001159.html
SVN-Revision: 8362
2007-08-07 00:04:25 +00:00
Felix Fietkau d6666fdd40 fix image installation
SVN-Revision: 8324
2007-08-03 01:21:41 +00:00
Felix Fietkau 40c1241377 silence
SVN-Revision: 8252
2007-07-30 23:04:24 +00:00
Felix Fietkau d7f2cb1642 next round of cleanup, convert target/ - make -j works now ;)
SVN-Revision: 8242
2007-07-30 21:14:08 +00:00
Felix Fietkau 35d116c85b more dependency fixes
SVN-Revision: 8115
2007-07-23 02:41:33 +00:00
Felix Fietkau 7031534325 prevent the new config changes from interfering with kernel_menuconfig
SVN-Revision: 8031
2007-07-18 12:05:59 +00:00
Felix Fietkau 8e42553971 dynamically enable/disable kernel config options for kmod packages based on build system config
SVN-Revision: 8026
2007-07-18 11:31:01 +00:00
Felix Fietkau 6178152ee8 add kernel_oldconfig target
SVN-Revision: 8003
2007-07-16 10:03:03 +00:00
Felix Fietkau 0806675217 kernel: fix dependencies for .config, use selections from oldconfig when running menuconfig
SVN-Revision: 7997
2007-07-16 05:28:13 +00:00
Felix Fietkau 5fe0203420 merge the kernel config parts at dump time, so that overrides that disable certain features work
SVN-Revision: 7812
2007-06-30 21:49:25 +00:00
Felix Fietkau f019ac4dc9 prepare for the transition to linux 2.6.22 - make it possible to override the kernel version in the target makefile
SVN-Revision: 7644
2007-06-16 01:56:04 +00:00
Felix Fietkau 3b6b7a2d1b implement quilt handling for the kernel tree ... and there was much rejoicing!
SVN-Revision: 7474
2007-06-03 08:28:05 +00:00
Felix Fietkau 84b235140c fix pcmcia/pccard build defaults
SVN-Revision: 7275
2007-05-19 16:16:48 +00:00
Felix Fietkau 4c6c987f09 Improved autorebuild for kernel related stuff. - make modules_install in the kernel tree is no longer called - make modules is called on every target/compile run - kmod packages pull the kernel modules directly out of the kernel tree and have proper file depends on them
SVN-Revision: 6998
2007-04-18 12:28:38 +00:00
Felix Fietkau bbe7bd4f29 remove reference to unused .kernel.mk
SVN-Revision: 6959
2007-04-15 21:39:30 +00:00
Felix Fietkau 35317253e6 trigger a kernel module rebuild when the kernel config changes
SVN-Revision: 6671
2007-03-24 17:05:26 +00:00
Felix Fietkau ea952312ae move default templates for the kernel build to kernel-defaults.mk (similar to package-defaults.mk)
SVN-Revision: 6664
2007-03-24 13:42:54 +00:00
Felix Fietkau b04ef81416 some cleanups in the metadata.pl script; allow target profiles to add overrides for menuconfig
SVN-Revision: 6648
2007-03-23 14:48:47 +00:00
Felix Fietkau a44c286fdb nuke mdev and replace it with hotplug2 :)
SVN-Revision: 6512
2007-03-04 20:31:53 +00:00
Felix Fietkau fa859ea32a fix an error in the kernel image related commit
SVN-Revision: 6467
2007-03-02 21:07:53 +00:00
Felix Fietkau 91e5dba2c7 kernel build cleanup
SVN-Revision: 6464
2007-03-02 17:24:20 +00:00