aboutsummaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
...
* build: add option to mark devices as BROKENAdrian Schmutzler2020-07-301-0/+2
| | | | | | | | | | | By specifying "BROKEN := 1" or "BROKEN := y" for a device, it will be hidden (and deselected) by default. By that, it provides a stronger option to "disable" a device beyond just using DEFAULT := n. To make these devices visible, just enable the BROKEN option in developer settings as already implemented for targets and packages. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: bump 5.4 to 5.4.52John Audia2020-07-171-2/+2
| | | | | | | | | update_kernel.sh refreshed all patches, no human interaction was needed Build system: x86_64 Run-tested: Netgear R7800 (ipq806x) Signed-off-by: John Audia <graysky@archlinux.us>
* build: improve ccache supportRoman Yeryomin2020-07-113-3/+7
| | | | | | | | | | | | | | | | | | Set CCACHE_DIR to $(TOPDIR)/.ccache and CCACHE_BASEDIR to $(TOPDIR). This allows to do clean and dirclean. Cache hit rate for test build after dirclean is ~65%. If CCACHE is enabled stats are printed out at the end of building process. CCACHE_DIR config variable allows to override default, which could be useful when sharing cache with many builds. cacheclean make target allows to clean the cache. Changes from v1: - remove ccache directory using CCACHE_DIR variable - remove ccache leftovers from sdk and toolchain make files - introduce CONFIG_CCACHE_DIR variable - introduce cacheclean make target Signed-off-by: Roman Yeryomin <roman@advem.lv>
* build: reduce number of files passed to ipk-removeEneas U de Queiroz2020-07-111-11/+8
| | | | | | | | | | | | | | | | | | | | Instead of using xargs to pass a huge number of files to script/ipkg-remove, which will usually pick only one, use a more restrictive wildcard so that, currently, at the most 325 files are examined, instead of up to over 2,300. The 325-file package is python, which is picking up python3* ipks. It is about to be removed. Runner-up is ddns-scripts with 7 files. This makes a second run of make package/luci/compile go from real 16.40s; user 17.42s; sys 2.73s to real 10.71s; user 9.51s; sys 1.27s There is a caveat though: if one were to remove the ABI_VERSION of a package that ends in a digit [0-9], then the old package ipk will not be removed from the bin directory by make package/abc2/clean. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* build: call ipkg-remove using xargs if #args>=512Eneas U de Queiroz2020-07-111-1/+11
| | | | | | | | | | | | | The wildcard call to clean up luci package (luci*) can pick up over 2,300 files when the full tree is built. Running make package/luci/clean or a second run of make package/luci/compile would fail with an 'Argument list too long' error. To avoid that, a maybe_use_xargs function was created that runs the command straight as usual if the number of arguments is < 512, or saves the list in a temporary file and feeds it to xargs otherwise. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* build: package-ipkg: avoid calling wildcard twiceEneas U de Queiroz2020-07-111-2/+8
| | | | | | | | Instead of calling $(wildcard) to check if the removal list is empty, then calling it again to actually remove the files, define a function so that the arguments are expanded only once when it gets called. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* kernel: bump 5.4 to 5.4.51John Audia2020-07-111-2/+2
| | | | | | | | | | | | | | | | | | | | | update via update_kernel.sh -v -u 5.4 Removed upstreamed patches: 350-MIPS-Add-missing-EHB-in-mtc0-mfc0-sequence-for-DSPen.patch Script refreshed patches: 902-debloat_proc.patch 904-debloat_dma_buf.patch Attempted merge conflict in following patches: 0024-MIPS-lantiq-revert-DSA-switch-driver-PMU-clock-chang.patch Build system: x86_64 Build tested: ipq806x (Netgear R7800) Signed-off-by: John Audia <graysky@archlinux.us> [fixed sha256sum of the tarball] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* target.mk: change i386 CPU type to pentium-mmxRosen Penev2020-07-081-2/+2
| | | | | | | | | | | | f4f8f4a180366ee90fd8e153213db2cb746ca361 broke ffmpeg compilation with x86 The reason is that ffmpeg's x86 assembly requires at least MMX, which the pentium CPU_TYPE was preventing. Fixes ffmpeg compilation on x86_legacy and x86_geode. Ref: https://github.com/openwrt/openwrt/pull/3061 Signed-off-by: Rosen Penev <rosenp@gmail.com>
* build: add 'make kernel_xconfig' commandSergio E. Nemirowski2020-07-082-1/+5
| | | | | | This adds the kernel_xconfig make target. Signed-off-by: Sergio E. Nemirowski <sergio@outerface.net>
* build: add nconfigSergio E. Nemirowski2020-07-071-0/+7
| | | | | | | | Add support for make target nconfig (ncurses) Reviewed-by: Eneas U de Queiroz <cotequeiroz@gmail.com> Signed-off-by: Sergio E. Nemirowski <sergio@outerface.net> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* build: conditionally enable testing-kernel featureDavid Bauer2020-07-071-1/+3
| | | | | | | | | | | Only enable the testing-kernel feature for the target when the testing kernel version does not match the stable kernel version. This way, the option for building the testing kernel in the build config menu is only exposed when there's a testing kernel available. Signed-off-by: David Bauer <mail@david-bauer.net> Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: Update kernel 5.4 to version 5.4.50Hauke Mehrtens2020-07-041-2/+2
| | | | | | | Run tested: ath79, ipq40xx Build tested: ath79, ipq40xx Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Update kernel 4.19 to version 4.19.131Hauke Mehrtens2020-07-041-2/+2
| | | | | | | | | | | | | Fixes: - CVE-2020-10757 The "mtd: rawnand: Pass a nand_chip object to nand_release()" commit was backported which needed some adaptations to other code. Run tested: ath79 Build tested: ath79 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Update kernel 4.14 to version 4.14.187Hauke Mehrtens2020-07-041-2/+2
| | | | | | | | | | | | Fixes: - CVE-2020-10757 The "mtd: rawnand: Pass a nand_chip object to nand_release()" commit was backported which needed some adaptations to other code. Build tested: ramips Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* build: store default/device packages in JSONPaul Spooren2020-06-301-0/+1
| | | | | | | | | | | | With this commit the `profiles.json` contain both the target specific `default_packages` as well as the device specific `device_packages` as a array of strings. This information is required for downstream projects like the various web-based interactive firmware generators. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Signed-off-by: Paul Spooren <mail@aparcar.org>
* kernel: bump 5.4 to 5.4.48Petr Štetiar2020-06-221-2/+2
| | | | | | | | | | | | | | | | Resolved merge conflict in the following patches: layerscape: 701-net-0213-dpaa2-eth-Add-CEETM-qdisc-support.patch ramips: 0013-owrt-hack-fix-mt7688-cache-issue.patch Refreshed patches, removed upstreamed patch: bcm63xx: 020-v5.8-mtd-rawnand-brcmnand-fix-hamming-oob-layout.patch Run tested: qemu-x86-64 Build tested: x86/64 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* toolchain: remove gcc libssp and use libc variantIan Cooper2020-06-171-1/+1
| | | | | | | | | | | | | | | Removes the standalone implementation of stack smashing protection in gcc's libssp in favour of the native implementation available in glibc and uclibc. Musl libc already uses its native ssp, so this patch does not affect musl-based toolchains. Stack smashing protection configuration options are now uniform across all supported libc variants. This also makes kernel-level stack smashing protection available for x86_64 and i386 builds using non-musl libc. Signed-off-by: Ian Cooper <iancooper@hotmail.com>
* kernel: bump 5.4 to 5.4.46Petr Štetiar2020-06-161-2/+2
| | | | | | | | | Refreshed patches. Run tested: qemu-x86-64, wrt3200acm Build tested: x86/64, imx6, mvebu/cortexa9, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: bump 5.4 to 5.4.45Petr Štetiar2020-06-091-2/+2
| | | | | | | | | | | | | | | | | | | Fixes CVE-2020-10757 via upstream commit df4988aa1c96 ("mm: Fix mremap not considering huge pmd devmap"). Resolved merge conflict in the following patches: bcm27xx: 950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch Refreshed patches, removed upstreamed patch: generic: 751-v5.8-net-dsa-mt7530-set-CPU-port-to-fallback-mode.patch generic: 754-v5.7-net-dsa-mt7530-fix-roaming-from-DSA-user-ports.patch Run tested: qemu-x86-64 Build tested: x86/64, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* build, imagebuilder: Do not require libncurses-devPaul Spooren2020-06-031-0/+2
| | | | | | | | | | The buildroot and SDK both require `libncurses-dev` to be installed on the system, however the ImageBuilder uses precompiled binaries. This patch changes the prerequirements checks to skip the `libncurses-dev` part if running as ImageBuilder. Signed-off-by: Paul Spooren <mail@aparcar.org>
* prereq-build: test for perl's Data::DumperRosen Penev2020-06-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | Required for installation of autoconf: make[5]: Entering directory `/openwrt/build_dir/host/autoconf-2.69' Making all in bin make[6]: Entering directory `/openwrt/build_dir/host/autoconf-2.69/bin' autom4te_perllibdir='..'/lib AUTOM4TE_CFG='../lib/autom4te.cfg' ../bin/autom4te -B '..'/lib -B '..'/lib --language M4sh --cache '' --melt ./autoconf.as -o autoconf.in Can't locate Data/Dumper.pm in @INC (@INC contains: ../lib /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ../lib/Autom4te/C4che.pm line 33. BEGIN failed--compilation aborted at ../lib/Autom4te/C4che.pm line 33. Compilation failed in require at ../bin/autom4te line 40. BEGIN failed--compilation aborted at ../bin/autom4te line 40. make[6]: *** [autoconf.in] Error 2 Signed-off-by: Rosen Penev <rosenp@gmail.com>
* treewide: provide consistent basic DEVICE_TYPEAdrian Schmutzler2020-06-031-1/+2
| | | | | | | | | | | | | | | | | | | | | While the effective "default" based on frequent use is "router", the DEVICE_TYPE variable actually provides a "basic" configuration without selecting any additional packages. This is currently set up with the identifier "bootloader", which seems to be not used at all. However, the only targets not using "router" or "nas" are actually archs38 and arc770, which use their own value "developerboard" for DEVICE_TYPE which seems to have been invented when these targets where added. The latter is not implemented in target.mk, though, and will fall back to the "basic" set of packages then. So, to clean this up and make it more readable, let's just define a DEVICE_TYPE "basic" and use it for the aforementioned cases. Cc: Christian Lamparter <chunkeey@gmail.com> Cc: Sungbo Eo <mans0n@gorani.run> Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: bump 5.4 to 5.4.43Petr Štetiar2020-06-021-2/+2
| | | | | | | | | | | Refreshed patches, removed upstreamed patch: bcm27xx: 950-0642-component-Silence-bind-error-on-EPROBE_DEFER.patch Run tested: qemu-x86-64 Build tested: x86/64, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* build: compress kernel debuginfo using zstdMatthias Schiffer2020-05-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | zstd with its default settings (compression level -3) compresses better than bzip2 -9 (which is the default setting), and is an order of magnitude faster. I made the following measurements for the most common compression tools (all standard Debian Buster versions, default flags unless noted otherwise), using the debug information of a large x86-64 kernel with ALL_KMODS: * kernel-debug.tar: 376M * kernel-debug.tar.gz: 101M, compressed in ~12s * kernel-debug.tar.bz2: 91M, compressed in ~15s * kernel-debug.tar.xz: 57M, compressed in ~101s * kernel-debug.tar.zst: 86M, compressed in ~1s With zstd, there is still some room for improvement by increasing the compression, but the slight increase in compression ratio (22.83% -> 19.46%) does not justify the significant increase in compression time (about 5 times on my machine) in my opinion. Note that multithreaded compression (-T argument) does not affect reproducibility with zstd. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* build: add zstd support to pack/unpack functionsMatthias Schiffer2020-05-312-0/+5
| | | | Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* build: add option to treat recursive deps as errorEneas U de Queiroz2020-05-201-5/+8
| | | | | | | | Running make with RECURSIVE_DEP_IS_ERROR=1 will cause a hard failure when a recursive dependency is detected. This is useful to apply stricter Ci tests, for example. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* build: show make output in scripts/config when V=sEneas U de Queiroz2020-05-201-1/+2
| | | | | | This should make debugging build errors in scripts/config a bit easier. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* kernel: bump 5.4 to 5.4.42Petr Štetiar2020-05-201-2/+2
| | | | | | | | | | | Refreshed patches, removed upstreamed patch: generic/pending: 001-v5.4-pinctrl-qcom-fix-wrong-write-in-update_dual_edge.patch.patch Run tested: qemu-x86-64 Build tested: x86/64, ath79/nand, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: bump 5.4 to 5.4.41Koen Vandeputte2020-05-141-2/+2
| | | | | | | | | Refreshed all patches. Compile-tested on: imx6 Runtime-tested on: imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.19 to 4.19.123Koen Vandeputte2020-05-141-2/+2
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 5.4 to 5.4.40Koen Vandeputte2020-05-121-2/+2
| | | | | | | | | Refreshed all patches. Compile-tested on: imx6 Runtime-tested on: imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.19 to 4.19.122Koen Vandeputte2020-05-121-2/+2
| | | | | | | | | | | | | | | | | | Refreshed all patches. Remove upstreamed: - 551-loop-Better-discard-support-for-block-devices.patch Fixed: - CVE-2020-11884 - CVE-2020-12114 - CVE-2019-3016 - CVE-2020-11669 Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.180Koen Vandeputte2020-05-121-2/+2
| | | | | | | | | | | | | Refreshed all patches. Fixes: - CVE-2020-12114 - CVE-2020-11669 Compile-tested on: pistachio Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 5.4 to 5.4.39Petr Štetiar2020-05-071-2/+2
| | | | | | | | | Refreshed patches. Run tested: qemu-x86-64 Build tested: x86/64, imx6, sunxi/a53, layerscape/armv7+armv8_64b Signed-off-by: Petr Štetiar <ynezz@true.cz>
* buildsystem: add CPE information to ipkg packages and manifest filesFlorian Eckert2020-05-051-0/+1
| | | | | | | | | | | Common Platform Enumeration (CPE) is a structured naming scheme for information technology systems, software, and packages. This information already exists in some makefiles. In order for the information to be processed further, it should also be added to the manifest file and the control file of ipkg packages. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* kernel: bump 5.4 to 5.4.38Petr Štetiar2020-05-041-2/+2
| | | | | | | | | Refreshed patches. Run tested: qemu-x86-64, apalis Build tested: x86/64, ipq40xx, ath79, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: bump 5.4 to 5.4.36Petr Štetiar2020-04-301-2/+2
| | | | | | | | | | | | | | | Refreshed patches, removed upstreamed patch: generic/hack: 551-loop-Better-discard-support-for-block-devices.patch Added generic config symbol `ARM64_ERRATUM_1542419` due to Fixes: f2791551cedb ("arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419"). Run tested: qemu-x86-64, apalis, nbg6617 Build tested: x86/64, imx6, ipq40xx, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* build: prereq: change minimum make version to 3.82Kevin Darbyshire-Bryant2020-04-291-2/+2
| | | | | | | undefine was added in make 3.82 which is now some 10 years ago, some make scripts are beginning to use 'undefine' Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* u-boot.mk: switch download to httpsLucian Cristian2020-04-261-1/+2
| | | | | | | ftp can cause problems on some networks switch primary download location to https and add another mirror Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* kernel: bump 5.4 to 5.4.35Petr Štetiar2020-04-251-2/+2
| | | | | | | | | Refreshed one patch. Run tested: qemu-x86-64 Build tested: x86/64, imx6, sunxi/a53, rockchip/armv8 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: bump 5.4 to 5.4.34Petr Štetiar2020-04-211-2/+2
| | | | | | | | | Refreshed patches. Run tested: qemu-x86-64, apalis, a64-olinuxino Build tested: x86/64, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: netfilter.mk: fix kmod-ipt-nat6 installation on 5.4DENG Qingfang2020-04-201-1/+0
| | | | | | | | | | xt_MASQUERADE.ko is picked up by both kmod-ipt-nat and kmod-ipt-nat6, causing conflict As kmod-ipt-nat6 already depends on kmod-ipt-nat, remove xt_MASQUERADE from it Fixes: FS#2924 Fixes: 0fad8af85158 ("kernel: Include xt_MASQUERADE for kernel 5.2 and later") Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* kernel: bump 5.4 to 5.4.33Petr Štetiar2020-04-171-2/+2
| | | | | | | | | | | | Refreshed patches, removed upstreamed patches: oxnas: 001-irqchip-versatile-fpga-Handle-chained-IRQs-properly.patch oxnas: 002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch Run tested: qemu-x86-64, apalis Build tested: x86/64, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: bump 4.19 to 4.19.115Koen Vandeputte2020-04-161-2/+2
| | | | | | | | | | | | | | | | | | Refreshed all patches. Remove upstreamed: - 600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch - 184-USB-serial-option-add-Wistron-Neweb-D19Q1.patch Fixes: - CVE-2020-8647 - CVE-2020-8648 (potentially) - CVE-2020-8649 Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.176Koen Vandeputte2020-04-161-2/+2
| | | | | | | | | | | | | | | | | | | Refreshed all patches. Remove upstreamed: - 0001-net-thunderx-workaround-BGX-TX-Underflow-issue.patch - 600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch - 184-USB-serial-option-add-Wistron-Neweb-D19Q1.patch Fixes: - CVE-2020-8648 (potentially) - CVE-2020-8647 - CVE-2020-8649 Compile-tested on: cns3xxx, octeontx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 5.4 to 5.4.32Petr Štetiar2020-04-141-2/+2
| | | | | | | | | | | Refreshed patches, removed upstreamed patches: generic: 746-stable-net-dsa-mt7530-fix-null-pointer-dereferencing-in-por.patch Run tested: qemu-x86-64, apalis Build tested: x86/64, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* Revert "build: add option to warn on recursive dependency"Jo-Philipp Wich2020-04-121-1/+1
| | | | | | | | | | This reverts commit 3204430e38f1a2ba7fda9471720a2a1042adf5e0. Reverting this commit in preparation for reverting dcf3e63a35 ("build: scripts/config - update to kconfig-v5.6") which introduces various unaddressed build breakages. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* build: add option to warn on recursive dependencyEneas U de Queiroz2020-04-091-1/+1
| | | | | | | | | | | This addes the option to treat recursive dependencies as warnings instead of errors, by running make with WARN_RECURSIVE_DEP=1. Note that the script/config targets will not get rebuilt when you add or remove WARN_RECURSIVE_DEP while running make. One must run 'make config-clean' before building config with a different setting. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* build: simplify building *config targetsEneas U de Queiroz2020-04-091-11/+4
| | | | | | | | | | | | Instead of passing pkg-config location through a variable when building qconf (make xconfig), prepend its parent directory to the PATH, as it is being done for other conf targets. Use a Makefile pattern rule to group all 'scripts/config/%onf' (currently conf, mconf, qconf) targets in a single rule. Add -O2 to CFLAGS when building them as well. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
* build: move symvers files to kernel build dirFelix Fietkau2020-04-091-4/+6
| | | | | | | | | | The symvers files of older kernel versions are incompatible with the ones from 5.4, so changing the kernel version without running make clean was causing build failures in kernel module packages. Fix this by moving the directory, ensuring that symvers files get thrown away with a kernel version change Signed-off-by: Felix Fietkau <nbd@nbd.name>