summaryrefslogtreecommitdiffstats
path: root/linux/linux.mk
Commit message (Collapse)AuthorAgeFilesLines
* linux: add conditional patch for timeconst.plGustavo Zacarias2016-02-101-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | Kernels older than 3.9 (not counting stable releases) used the timeconst.pl perl script for their build process. The problem with this script is that it used deprecated perl features, namely defined(@array) which was removed for the perl 5.22 release, causing build failure of older kernels on newer distributions. To fix this instead of going the hard way (moving to the new timeconst.bc script) use the easy way by patching timeconst.pl with an upstream patch used for stable releases. First try a dry-run on the patch to see if it applies, if it does then call a proper APPLY_PATCHES to it. Tested against an arbitrary 2.6.30 kernel (applies and builds), against 4.4.1 for a missing timeconst.pl (does not apply since it's missing) and 3.8.13 (does not apply since it's fixed already). Known broken distributions: fedora 23, debian testing (stretch) and unstable (sid). Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* linux: drop the option to use the same version as that of the headersYann E. MORIN2016-02-061-3/+0
| | | | | | | | | | | | | | It is no longer meaningful, now that we have the option to use the kernel version for the linux headers, as it is more logical and more versatile. Add it to legacy. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Peter Korsgaard <peter@korsgaard.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* kernel-module-imx-gpu-viv: add new packageGary Bisson2016-02-021-0/+2
| | | | | | | | | | | | | | | | | | | | | This is the Vivante kernel driver split from the kernel source code in order to make it possible to be used in any kernel source since 3.10.53. The driver source code provided by Freescale needs fixes so the community forked the code to allow faster development and easier integration of fixes from the community. This patch is based on the Yocto equivalent: https://github.com/Freescale/meta-fsl-arm/commit/32cf391 https://github.com/Freescale/meta-fsl-arm/commit/4249193 This package has been tested with the following commands: # modprobe galcore # cd /usr/share/examples/viv_samples/vdk/ # ./tutorial7 Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: handle read-only dts filesHollis Blanchard2016-01-191-1/+1
| | | | | | | | | | | | Some fine version control systems make all files read-only. The custom DTS file may therefore be read-only, and that permission is preserved when copying into the Linux build directory. A subsequent rebuild tries to 'cp' again, which fails with a "Permission denied" error unless the -f option is used. Signed-off-by: Hollis Blanchard <hollis_blanchard@mentor.com> Acked-by: Nikolay Dimitrov <picmaster@mail.bg> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: add blind kconfig option to require kernel modulesYann E. MORIN2015-12-291-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, packages that need the kernel to have support for laodable modules have two ways to require it: - either the use the kernel-module infra, which does it automatically, - or they do not use it, and they need to require it manually by setting the corresponding Makefile variable; however, they must only set it when they are actually enabled, which makes for a slightly cumbersome and ugly code, like: ifeq ($(BR2_PACKAGE_FOO),y) LINUX_NEEDS_MODULES = y endif Introduce a new blind Kconfig option that packages can select to signify they need kernel modules. That Kconfig option is then used to set the Makefile variable. It makes it cleaner: - code is simpler (one Kconfig line instead of a Makefile if-block, - this is handled at the Kconfig level, which is where we usually handle such dependencies. Packages will be updated in follow-up commits. Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* Fix fallout after generated defconfig supportYann E. MORIN2015-12-231-1/+1
| | | | | | | | | | | Fix improper use of qstrip; use correct variables. Fixes #8546. Reported-by: craigswank@gmail.com Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/linux: handle generated defconfigsSam bobroff2015-12-221-6/+7
| | | | | | | | | Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com> [yann.morin.1998@free.fr: move the kconfig-package hunk to the corresponding patch] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: don't build appended DTB image in place and support multiple imagesThomas Petazzoni2015-12-201-17/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the linux.mk logic for appended DTB image does the appending of the DTB in place, directly at the end of the zImage using a >> sign. This is incorrect because if you run "make linux-rebuild" multiple times, you get the DTB appended over and over again to the image. Since keeping the 'zImage' or 'uImage' name for the appended DTB image is not very clear, this commit moves to using the 'zImage.<dtb>' and 'uImage.<dtb>' format. This way, we can clearly distinguish the original image from the appended one. In addition, this naming scheme easily allows to generate *multiple* appended DTB images: from one zImage, you can generate multiple zImage.<dtb> for several DTBs, and then generate (if requested) the corresponding uImage.<dtb>. To achieve this, this commit: - Changes the definition of LINUX_APPENDED_DTB to iterate over $(KERNEL_DTS_NAME), and generate a zImage.<dtb> image for each of them. - Changes the addition of LINUX_APPENDED_DTB for appended uImage to also iterate over $(KERNEL_DTS_NAME). - Provide a different implementation of LINUX_INSTALL_IMAGE which installs all the appended DTB images (but not the bare image) - Remove the checks that verified that only one DT name is passed when appended DTB is used, since we now support generating multiple DT images. Some of the tested configuration: - Normal uImage with several DTBs BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x200000" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox" Contents of output/images/: armada-370-mirabox.dtb armada-xp-gp.dtb armada-xp-matrix.dtb uImage - Normal zImage with several DTBs BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7" BR2_LINUX_KERNEL_ZIMAGE=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox" Contents of output/images: armada-370-mirabox.dtb armada-xp-gp.dtb armada-xp-matrix.dtb zImage - Appended uImage with several DTBs: BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7" BR2_LINUX_KERNEL_APPENDED_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x200000" BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox" Contents of output/images: uImage.armada-370-mirabox uImage.armada-xp-gp uImage.armada-xp-matrix - Appended zImage with several DTBs: BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v7" BR2_LINUX_KERNEL_APPENDED_ZIMAGE=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="armada-xp-matrix armada-xp-gp armada-370-mirabox" Contents of output/images: zImage.armada-370-mirabox zImage.armada-xp-gp zImage.armada-xp-matrix In all configurations, the contents of output/target/boot/ was the same if BR2_LINUX_KERNEL_INSTALL_TARGET=y. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: only install the DTBs when not in appended DTB modeThomas Petazzoni2015-12-201-2/+4
| | | | | | | | | | | | When you're using the "appended DTB" mode, the Device Tree blob gets appended to your kernel image, so there is no point in installing both the DTB and the kernel image to the images or target directories, installing the kernel image itself is sufficient. Therefore, this commit disables the definition of LINUX_INSTALL_DTB when appended DTB is used. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: de-duplicate DTB and Linux image installationThomas Petazzoni2015-12-201-12/+8
| | | | | | | | | | | | | | | | | | | | | | | | Currently, the LINUX_INSTALL_DTB and LINUX_INSTALL_DTB_TARGET macros are exactly the same, except for the target directory. Similarly, LINUX_INSTALL_KERNEL_IMAGE_TO_TARGET and LINUX_INSTALL_IMAGES_CMDS are copying the kernel image, just to a different place (and with a different strategy). As a preparation for future additions, this commit de-duplicate this code: - LINUX_INSTALL_DTB becomes a make macro that takes one argument: the destination directory. - LINUX_INSTALL_IMAGE is a new make macro that also takes on argument: the destination directory. Both macros are used by LINUX_INSTALL_KERNEL_IMAGE_TO_TARGET and LINUX_INSTALL_IMAGES_CMDS to respectively install to the target directory and the images directory. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: add support for vmlinuz.bin kernel image formatYegor Yefremov2015-12-151-0/+4
| | | | | | | | Linux for MIPS supports raw binary zboot image (vmlinuz.bin). Add it to the "Kernel binary format" list. Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: Add kernel compression selection.Johan Sagaert2015-12-131-1/+21
| | | | | | | | | | | | This selection will ensure that the correct host tools will be build used for the kernel compression method used. [Maxime: Select the compression opts in the kernel config too ] Signed-off-by: Sagaert Johan <sagaert.johan@proximus.be> Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998 at free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: Add zImage.epapr targetJeremy Kerr2015-10-311-0/+2
| | | | | | Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Joel Stanley <joel@jms.id.au> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: add 'Image' as the image name for aarch64Arnout Vandecappelle2015-10-051-0/+2
| | | | | | | | On aarch64, the image name is always Image, so let's add support for that. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* linux: install dtc binary as linux-dtcPeter Korsgaard2015-10-041-1/+1
| | | | | | | So it doesn't conflict with host-dtc. The Linux kernel version may be a patched version supporting E.G. overlays. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* linux: remove now-redundant ccache handlingArnout Vandecappelle2015-10-041-1/+1
| | | | | | Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Reviewed-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* core/pkg-kernel-module: ensure linux supports modulesYann E. MORIN2015-09-041-0/+2
| | | | | | | | | | | | | | | | | | | | | When a package wants to build a kernel module, we should ensure that the kernel does support modules. This patch does it automatically for packages using the kernel-module infrastructure. Packages that do not use it will have to set it manually (to be done in a followup patch). Suggested-by: Peter Korsgaard <jacmet@uclibc.org> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Peter Korsgaard <jacmet@uclibc.org> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Noé Rubinstein <noe.rubinstein@gmail.com> Cc: Jan Viktorin <viktorin@rehivetech.com> Cc: Gustavo Zacarias <gustavo@zacarias.com.ar> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* linux: enable all options needed by xtables-addonsYann E. MORIN2015-08-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | Both of CONFIG_NF_CONNTRACK and CONFIG_NF_CONNTRACK_MARK are needed by xtables-addons. Although the current code does enable them in the linux' .config file, the former is protected behind CONFIG_NETFILTER_ADVANCED, which may be missing from a user-supplied (def)config file, and is missing from some of the bundled defconfigs as well. For example, the following defconfig fails to build: BR2_TOOLCHAIN_EXTERNAL=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_DEFCONFIG="i386" BR2_PACKAGE_XTABLES_ADDONS=y So, also force-enable CONFIG_NETFILTER_ADVANCED. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/linux: trash stderr in LINUX_VERSION_PROBEDYann E. MORIN2015-07-221-1/+1
| | | | | | | | | | | | The Linux buildsystem tries to run the compiler even just for 'kernelrelease' (which we store in LINUX_VERSION_PROBED) and we sometimes need to use it before the toolchain is available; thus we get spurious errors on stderr. Consign stderr to oblivion when computing the 'kernelrelease'. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: use backtick instead of $(shell ...) make functionArnout Vandecappelle2015-07-151-1/+1
| | | | | | | | Verified that LINUX_VERSION_PROBED is only used in "-quoted commands (actually, usually it's not quoted). Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: add linux-tools infraRomain Naour2015-07-141-0/+24
| | | | | | | | | | | | | | | | | | | | | | | This commit add an infrastructure to build linux kernel tools available in the kernel sources. Currently, the only linux kernel tool packaged in Buildroot is perf and it's packaged as a separate generic package. This is a problem for licence information raised in this thread [1]. Since these tools require to build a Linux kernel, we can use some hooks in linux package like we did for linux extensions [2] and remove the perf package. [1] http://lists.busybox.net/pipermail/buildroot/2015-May/128783.html [2] http://lists.busybox.net/pipermail/buildroot/2015-March/121835.html [Thomas: fix minor typos in comments.] Signed-off-by: Romain Naour <romain.naour@openwide.fr> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/linux: check for config file before calling kconfig-packageYann E. MORIN2015-07-141-32/+29
| | | | | | | | | | | | | | | | | If we check that the user provides a config file after we call to the kconfig-package infra, the error message we get is the one for the kconfig-package infra, not the custom error message we want to show to the user. So, only call kconfig-package after we do the check. Move the check with the existing checks for the DTS, for consistency. [Thomas: put the checks together, but right before the kconfig-package call, rather than in the middle of the code, were the DTS related tests were located.] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/linux: don't enforce check for DTS when not buildingYann E. MORIN2015-07-141-0/+4
| | | | | | | | | | | | | Currently, this is triggering the error message: make randconfig make source Limit the checks that enforce a DTS is set and at most one DTB is appended to when we are actually building, like is done for the configuration-file variables. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: adjust fixup logic for ktapThomas Petazzoni2015-07-131-1/+1
| | | | | | | | | | | | | | | | The ktap package requires some parts of the kernel tracing infrastructure to be enabled, especially CONFIG_EVENT_TRACING. However, this option is a blind option in the kernel, so enabling it in linux.mk has no effect: we need to enable a non-blind option that selects CONFIG_EVENT_TRACING. We've chosen to select CONFIG_ENABLE_DEFAULT_TRACERS. This fixes the build of ktap. [Thomas: use CONFIG_ENABLE_DEFAULT_TRACERS as suggested by Arnout.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* linux: add option to specify config fragmentsFloris Bos2015-05-211-0/+1
| | | | | | | | | Signed-off-by: Floris Bos <bos@je-eigen-domein.nl> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Tested-by: Gergely Imreh <imrehg@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: do not check hashes for custom versions and tarballsYann E. MORIN2015-05-021-0/+7
| | | | | | | | | | | | | | This one is a bit tricky, as the version can come from the linux-headers package, so we must also account for that. We currently have no hash file for linux, but better do the change now, which allows us to later add a hash file. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Reviewed-by: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: refactor checks using BR_BUILDINGThomas Petazzoni2015-04-261-1/+1
| | | | | | | | | Instead of manually testing MAKECMDGOALS, use the newly introduced BR_BUILDING variable to know if we're building or not. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
* linux: simplify adding new extensionsYann E. MORIN2015-04-091-0/+7
| | | | | | | | | | | | | | | | | | | Curently, all three linux extensions follow the same layout: - test if the extension is enabled - add itself to linux' patch-dependencies - declare a macro, added as the pre-patch hook Except for the macro, all can be commonalised. Add a simple infrastructure for that: - extensions declare themselves in the list of extensions - extensions define their macro - the infra adds them to the patch-dependencies and pre-patch hooks as appropriate Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: apply custom patches using *.patch instead of <pkg>-*.patchThomas Petazzoni2015-04-061-1/+1
| | | | | | | | | | | | | | | | Several packages have some logic to apply custom patches that existed before the BR2_GLOBAL_PATCH_DIR mechanism: at91bootstrap, at91bootstrap3, barebox, uboot and linux. Currently, the logic of those packages to apply custom patches is to match <package-name>-*.patch, which is not consistent with what we've done for patches stored in the package directory, and for patches stored in BR2_GLOBAL_PATCH_DIR: in such cases, we simply apply *.patch. Therefore, for consistency reasons, this commit changes these packages to also apply *.patch. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
* packages: indentation cleanupJerzy Grzegorek2015-03-311-1/+1
| | | | | | | This commit doesn't touch infra packages. Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: use the package infrastructure to download patchesThomas Petazzoni2015-03-301-17/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The linux package has a special handling of patches, with quite a bit of legacy in it. A problem caused by this special handling is that the linux package calls directly the DOWNLOAD_WGET macro, which means that the package infrastructure isn't aware of which patches get downloaded, and it prevents doing changes inside the package download infrastructure. This commit changes the handling of patches in the linux package in the following way: * The LINUX_PATCHES variable is kept as is: it lists all the patches mentioned in the Config.in option BR2_LINUX_KERNEL_PATCH. This option can contain http://, ftp://, https:// URLs, path to local files or local directories. This variable is *not* used by the generic package infrastructure, so it is purely internal to the Linux package. * The LINUX_PATCH variable is now filled in with the list of patches that should be downloaded. It is derived from LINUX_PATCHES by filtering the patches that have http://, ftp:// or https:// in their path. Since <pkg>_PATCH is handled by the package infrastructure, it means that those patches are now automatically downloaded and applied by the package infrastructure. * The LINUX_APPLY_PATCHES hook is renamed to LINUX_APPLY_LOCAL_PATCHES, because it is now only responsible of applying local patches: remote patches are handled by LINUX_PATCH. The implementation of the hook is changed to filter out the patches that have already taken care of by LINUX_PATCH, so that we only iterate through the list of local patches or local patch directories. [Thomas: adjust comment in the code according to Yann comments.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: Romain Naour <romain.naour@openwide.fr> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
* linux: stop if one linux patches doesn't applySébastien Szymanski2015-03-161-3/+3
| | | | | | | | | | If you have several linux patches directories, Buildroot does not stop if one patches of the first directories don't apply. This patch fixes this. Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: add note about why it's safe to include other .mk filesYann E. MORIN2015-03-131-0/+8
| | | | | | | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Remove trailing slash from all package site URLsLuca Ceresoli2015-03-101-1/+1
| | | | | | | | | The recommended form is without the trailing slash. Buildroot will add a slash between FOO_SITE and FOO_SOURCE as appropriate. Reported-by: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* linux/linux.mk: custom dts path - build dtb only from *.dts filesIvo Slanina2015-03-041-1/+5
| | | | | | | | | | | | | | | | | | When building device tree blobs from custom *.dts files, buildroot initializes KERNEL_DTS_NAME variable from all given file names. This causes that user can't provide one *.dts file and some other *.dtsi files as dependencies. Problem is fixed by adding filter for initializing KERNEL_DTS_NAME variable with *.dts files only. All user provided files are copied into kernel source tree, but only file names suffixed with *.dts are used for building appropriate *.dtb files. [Thomas: add comment into the code to explain why we are filtering .dts files only.] Signed-off-by: Ivo Slanina <ivo.slanina@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Merge branch 'next'Peter Korsgaard2015-03-021-39/+17
|\ | | | | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
| * linux: get rid of avr32 specificsYann E. MORIN2015-02-141-4/+0
| | | | | | | | | | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
| * linux: avoid unnecessary changes in defconfig for INITRAMFS_SOURCEThomas De Schampheleire2015-02-141-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Buildroot is configured to append the root filesystem to the Linux kernel as initramfs, Buildroot sets the path to the initramfs source dynamically in the Linux configuration file. As this path is specified as an absolute path, typically being different for different users of the same project (e.g. containing a username), saving the configuration to a version control system (for example using 'make linux-update-defconfig') would result in a difference for this path at every invocation by a different user. Although this is technically not an issue, it is confusing that this generates a difference. Address this issue by using a not-yet-expanded make variable to specify the path to the initramfs source. That variable will be expanded by the Linux build system, which uses it both as a Makefile variable and a shell variable; thus, it needs to be specified in LINUX_MAKE_ENV (so it is exported and available in sub-processes of make). Any saved configuration file would simply contain the reference to the not-yet-expanded variable. As in the Linux build system, the config variables are both read from make as from a shell script, we cannot use $() syntax as this would be interpreted as a command invocation by the shell. Instead, use ${} syntax which is interpreted as variable reference both by the shell as by make. [Thomas: - Really make the patch work by using $(LINUX_MAKE_ENV) instead of $(TARGET_MAKE_ENV). Otherwise, the new BR2_BINARIES_DIR variable is not passed at all stages of the build process, which makes the build fail when an initramfs is used.] Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: "Yann E. Morin" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
| * linux: migrate to the kconfig infrastructureThomas De Schampheleire2015-02-141-28/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | Migrate the linux package to the kconfig infrastructure. A notable change compared to the original behavior: - the targets linux-update-(def)config are now always saving the config file, even for a defconfig bundled in the linux sources. This is done to keep the kconfig infrastructure simple. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: "Yann E. Morin" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
| * linux: qstrip the path to the custom configuration fileThomas De Schampheleire2015-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | Even though this is not strictly necessary with the current version of linux.mk, it becomes necessary when migrating linux.mk to the kconfig infrastructure. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: "Yann E. Morin" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* | linux: add support for 4.x versionsSébastien Szymanski2015-02-271-2/+4
|/ | | | | Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* linux/linux.mk: fixed downloading kernel patchesIvo Slanina2015-01-141-1/+1
| | | | | | | | | | | | | | | Patches located at ftp or http(s) URLs were downloaded using DOWNLOAD macro. For example, if linux source was located at external git repository, DOWNLOAD macro uses git scheme as well and buildroot tried to downlod a path using DOWNLOAD_GIT macro. As a result, nothing was downloaded and build siletly passes. Patches located at mentioned URLs is now downloaded directly with DOWNLOAD_WGET macro. Signed-off-by: Ivo Slanina <ivo.slanina@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux/linux.mk: added https:// pattern for kernel patchesIvo Slanina2015-01-141-2/+2
| | | | | | | | | | | Patches located at https:// scheme URL were threated as directories, causing build failures. Fixed by adding https:// pattern. Signed-off-by: Ivo Slanina <ivo.slanina@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* xtables-addons: enable necessary kernel optionsGustavo Zacarias2015-01-101-0/+3
| | | | | | | | | | Enable the required conntrack/netfilter options, otherwise xtables-addons will fail to build. The basic iptables options are already covered by the iptables package which is a required dependency anyway. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* iptables: enable basic kernel optionsGustavo Zacarias2015-01-101-0/+5
| | | | | | | | Enable the basic kernel options for iptables to be useful at least to filter incoming connections. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: fix breakage from d4b2b032a00c9922c9efa144b014dc086a7e48f1Gustavo Zacarias2014-12-241-0/+2
| | | | | | | | | | Unbreak qemu_xtensa_lx60_defconfig where LINUX_IMAGE_NAME != LINUX_TARGET_NAME. It incorrectly overwrites LINUX_IMAGE_NAME even if it was set before, defeating the purpose of IMAGE being different than TARGET. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* linux: fix recursively defined variableYann E. MORIN2014-12-151-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When running 'make printvars', the output stops at the time we dump the Linux related variables, with: linux/linux.mk:109: *** Recursive variable `LINUX_TARGET_NAME' references itself (eventually). Stop. And that's expected, since we have: 109 LINUX_TARGET_NAME = $(LINUX_IMAGE_NAME) [...] 112 ifeq ($(LINUX_IMAGE_NAME),) 113 LINUX_IMAGE_NAME = $(LINUX_TARGET_NAME) 114 endif Even though they are defined in a way that ensures they are in fact not recursively defined (the if-block ensures that), 'printvars' does dump all our variables by evaluating all of them, which in that specific case implies they are recursively defined. Fix that by explicitly setting LINUX_IMAGE_NAME in each if-block. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Peter Korsgaard <jacmet@uclibc.org> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package: indentation cleanupJerzy Grzegorek2014-10-261-4/+4
| | | | | Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* apply-patches.sh: Use the "APPLY_PATCHES" variable to call the scriptFabio Porcedda2014-10-251-3/+3
| | | | | | | | | | To easy up adding optional parameters when calling the "apply-patches.sh" add and use the "APPLY_PATCHES" variable to execute the script. Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package: indentation cleanupJerzy Grzegorek2014-10-251-2/+2
| | | | | Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
OpenPOWER on IntegriCloud