aboutsummaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* kernel: update kernel 4.4 to version 4.4.30Stijn Segers2016-11-021-2/+2
| | | | | | | | | | This patch bumps the 4.4 kernel from .28 to .30 and refreshes the patches. Compile-tested on ar71xx, x86/64, ramips/mt7621, brcm47xx and kirkwood. Run-tested on ar71xx & ramips/mt7621, brcm47xx and kirkwood (last two confirmed by P. Wassi). Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
* include: properly update .install stamp filesJo-Philipp Wich2016-11-021-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now the $(PKG_INSTALL_STAMP) files are only written if a package is selected as <*> but never deleted or emptied if the corresponding package is getting deselected. For ordinary packages this usually is no problem as the package/install recipe performs its own check for enabled packages when assembling the list of install stamp files to consider, but this logic might fail under certain circumstances for packages providing multiple build variants. In case of a multi-variant package, the buildroot first checks if any of the variants is enabled, then resolves all variants of the common source package and finally processes the corresponding .install stamp files of all variants, relying on the assumption that only the selected .install stamp file exists. When an initially selected variant is getting deselected or changed from <*> to <m> and another variant is marked as <*> instead, the .install stamp file of the deselected variant remains unchanged and a second .install stamp file for the newly selected variant is getting created, causing the package/install recipe to pick up two .install stamps with conflicting variants, leading to opkg file clashes. This issue happens for example if package "ip" is set to <m> and package "ip-full" to <*> - the install command will eventually fail with: * check_conflicts_for: The following packages conflict with ip: * check_conflicts_for: ip-full * * opkg_install_cmd: Cannot install package ip. In order to fix the problem, always process the removal requests or the .install stamp files, even for deselected packages but only write the package base name into the stamp file if the corresponding package is marked as builtin. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* include/host-build.mk: use STAGING_DIR_HOSTPKGJo-Philipp Wich2016-11-011-1/+1
| | | | | | | Instead of hardcoding $(STAGING_DIR)/host, use the new $(STAGING_DIR_HOSTPKG) variable to refer to the directory. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: update kernel 4.4 to version 4.4.28Paul Wassi2016-10-311-2/+2
| | | | | | | | Refresh patches for all targets that support kernel 4.4. compile/run-tested on ar71xx, brcm47xx, kirkwood. Signed-off-by: Paul Wassi <p.wassi@gmx.at> Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* config: ext4: drop option to set maximum number of inodesJo-Philipp Wich2016-10-271-1/+0
| | | | | | | | | | | There is very little practical use to limit the number of available inodes on an ext4 filesystem and the make_ext4fs utility is able to calculate useful defaults by itself. Drop the option to make resulting ext4 filesystems more flexible by default. Signed-off-by: Jo-Philipp Wich <jo@mein.io> Acked-by: Michael Heimpold <mhei@heimpold.de>
* include: image.mk: make ext4 reserved blocks percentage optionalJo-Philipp Wich2016-10-271-1/+1
| | | | | | | | Allow CONFIG_TARGET_EXT4_RESERVED_PCT to be empty as make_ext4fs is usually able to figure out a suitable default. Signed-off-by: Jo-Philipp Wich <jo@mein.io> Reviewed-by: Michael Heimpold <mhei@heimpold.de>
* kernel: update kernel 3.18 to version 3.18.43Stijn Tintel2016-10-241-2/+2
| | | | | | | | | | Refresh patches for all targets supporting 3.18 and not marked broken. Compile-tested on all targets using 3.18 and not marked broken. Changes to generic/610-netfilter_match_bypass_default_checks.patch based on 84d489f64f3b382d5544e342f66d8806e94e85d3. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: update kernel 4.1 to version 4.1.34Stijn Tintel2016-10-241-2/+2
| | | | | | | | | | | | Refresh patches for all targets supporting 4.1 and not marked broken. Compile-tested on all targets using 4.1 and not marked broken. Changes to generic/610-netfilter_match_bypass_default_checks.patch based on 84d489f64f3b382d5544e342f66d8806e94e85d3. Changes to generic/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch based on a90ee92337d60fd14b6431adcda9929b955f3408. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* kernel: update kernel 4.4 to version 4.4.27Álvaro Fernández Rojas2016-10-231-2/+2
| | | | | | | Refresh patches for all targets that support kernel 4.4. compile/run-tested on brcm2708/bcm2710 only. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: update kernel 4.4 to version 4.4.26Koen Vandeputte2016-10-211-2/+2
| | | | | | | Refresh patches for all targets that support kernel 4.4. compile/run-tested on cns3xxx & imx6. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* sdk: predefine SOURCE_DATE_EPOCHJo-Philipp Wich2016-10-212-1/+3
| | | | | | | | | When building packages within the SDK, there is no Git revision history available so prepopulate SOURCE_DATE_EPOCH in version.mk, similar to how we handle REVISION already. Acked-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: update kernel 4.4 to version 4.4.25Koen Vandeputte2016-10-161-2/+2
| | | | | | | Refresh patches for all targets that support kernel 4.4. compile/run-tested on cns3xxx & imx6. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* build: copy contents of 'src' folder to build dirs (if present)Alexandru Ardelean2016-10-152-0/+2
| | | | | | | | | | | | | | | | | | | | | The normal Prepare step for a build is unpack, apply patches. But for certain packages, patches contain whole files, which would be nice to have separately and copied over as a last step in the Prepare phase. We need it for some other packages + patches, but I think the 'hostapd' package can be used as a test for this. As a quick note: the reason the condition is being evaluated as `[ ! -d ./src/ ] || $(CP) ./src/* $(HOST_BUILD_DIR)` and not with `[ -d ./src/ ] && $(CP) ./src/* $(HOST_BUILD_DIR)` is that the latter would translate in a build failure if the `src` folder is not present (the exit code would be 1). The first one, succeeds for both cases (if `src` present or not). Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* build: fix cleaning configured stamp fileYousong Zhou2016-10-151-1/+1
| | | | | | | | | | | | | | We have packages with their own parts appended to standard STAMP_CONFIGURED (mostly with an underscore character). This will render the current STAMP_CONFIGURED_WILD setting invalid and the build system may miss a rebuild on config change 1. Build with config A 2. Build with config B, yet .configured_A_xx did not get cleaned 3. Return to config A, but rebuild will not happen because stamp file of config A still exists Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* autotools: use correct version for gettext FIXUPDirk Neukirchen2016-10-131-1/+1
| | | | | | | 0.19.8.1 gettext-full uses "archive-version" of 0.19.8 to replace makros, leading to breakage of PKG_FIXUP:=gettext-version Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>
* build: use CXXFLAGS if definedHauke Mehrtens2016-10-133-3/+3
| | | | | | | | | | | Instead of using TARGET_CFLAGS and EXTRA_CFLAGS in cmake and scons build use the TARGET_CXXFLAGS and EXTRA_CXXFLAGS like it is done for normal make and configure. configure used TARGET_CXXFLAGS and EXTRA_CFLAGS for the CXXFLAGS. The package-default.mk sets "EXTRA_CXXFLAGS = $(EXTRA_CFLAGS)" so using EXTRA_CXXFLAGS flags should be save. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* include: prereq-build.mk: improve gcp checkJo-Philipp Wich2016-10-111-2/+2
| | | | | | | | | Adjust the check for gcp (GNU copy command) to rule out false positives with "Goffi's CoPier" a python copy command. Fixes FS#218. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: update kernel 4.4 to version 4.4.24Álvaro Fernández Rojas2016-10-081-2/+2
| | | | | | | Refresh patches for all targets that support kernel 4.4. compile/run-tested on brcm2708/bcm2710 only. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* include: remove XZ host prereqJo-Philipp Wich2016-10-061-3/+0
| | | | | | | We build XZ as part of tools/, so no need to require it to be available on the host system. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* include/package-ipkg.mk: use TARGET_PATH_PKG in Package/*/install stepsMatthias Schiffer2016-10-061-0/+2
| | | | | | | Package/*/install was using a different PATH than all other steps like Build/Install, which was confusing and easily led to mistakes. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* include/host-build.mk: set Host/Exports for Host/Install stepMatthias Schiffer2016-10-061-0/+1
| | | | | | | | | Having a different PATH in Host/Install than in other steps like Host/Build is confusing and easily leads to mistakes. Setting all of Host/Exports makes host builds match target builds (Build/Install is part of $(STAMP_BUILT), which has Build/Exports set). Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* include/host-build.mk: fix ACLOCAL_INCLUDEMatthias Schiffer2016-10-061-1/+1
| | | | | | | | It seems the intention was to add both $(STAGING_DIR_HOST)/... and $(STAGING_DIR)/host/... instead of passing $(STAGING_DIR_HOST) twice. This makes the definition match HOST_CPPFLAGS and HOST_LDFLAGS. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* include/host-build.mk: pass HOST_BUILD_PREFIX to Host/installMatthias Schiffer2016-10-061-2/+2
| | | | | | | | | | Using HOST_BUILD_PREFIX instead of STAGING_DIR_HOST will make the argument work as expected from packages. Nothing changes for tools, for which HOST_BUILD_PREFIX and STAGING_DIR_HOST are equivalent. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* include/download.mk: Use -7e compression instead of -6 by defaultDaniel Engberg2016-10-051-1/+1
| | | | | | Adds a slightly higher compression level to xz by default which roughly raises memory usage from 100MiB to about 200MiB during compression, about 10MiB for decompression. (Source: xz manpage) Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* include/prereq-build.mk: Add xz-utils to make prereqDaniel Engberg2016-10-051-0/+3
| | | | | | Add xz-utils to make prereq Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* include/download.mk: generate reproducable SCM tarballsJo-Philipp Wich2016-10-051-4/+9
| | | | | | | | | | | | | | | | | Apply a number of changes to the tarball generation in order to produce identical files on different systems: 1) Use an explicit `gzip -cn` to avoid storing file mtime in the gzip header 2) Instruct `tar` to unconditionally use uid and gid 0 for archive members 3) Instruct `tar` to sort archive members by file name 4) For SCMs that do not preserve file modification times like Git or Mercurial, use the date of the last commit to the repository and pass it as `--mtime` value to `tar` After these changes, locally produced tarballs generated from SCM checkouts should be identical on any system, simplifying the mirroring of cache archives. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* build: fix regression on running make kernel_menuconfigFelix Fietkau2016-10-041-1/+1
| | | | | | | | The build system overrides HOST_LOADLIBES to add the staging dir to the library search path. menuconfig needs -lncurses, add another override for it. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: leaving behind incomplete metadata files on cancelled buildsFelix Fietkau2016-10-041-2/+4
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* include: relax umask checkJo-Philipp Wich2016-10-041-1/+1
| | | | | | | | For now we only want to ensure that the group permission mask is permissive enough to not clobber required permissions on the rootfs, so allow less strict masks as well. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* include: add umask prereq checkJo-Philipp Wich2016-10-041-0/+4
| | | | | | | | | | | When building LEDE with umask values other than 022, the resulting packages will embed improper permissions, which may lead to random errors or non- functional scripts on the target. In order to make users aware of this problem, add a build-prereq check to assert a correct umask setting before starting the build. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* netfilter: fix file conflicts between kmod-ipt- and kmod-nft- packagesMatthias Schiffer2016-09-301-8/+5
| | | | | | | | The nf_reject_* and nf_nat_masquerade_* modules are moved into the corresponding kmod-nf- packages. Appropriate dependencies are added to the kmod-nft- packages. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* kernel: update to v4.4.23Álvaro Fernández Rojas2016-09-301-2/+2
| | | | | | | Refresh patches for all targets that support kernel 4.4. compile/run-tested on brcm2708/bcm2710 only. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: update kernel 4.4 to version 4.4.22Stijn Segers2016-09-301-2/+2
| | | | | | Forgot to update kernel-version.mk, so updated patch. Compile-tested on x86/64 and ar71xx; run-tested on x86/64 and ar71xx. Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
* kernel: add STAGING_DIR_HOST/lib to host library search pathFelix Fietkau2016-09-291-0/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* rootfs: fail on errors in postinst scriptsMatthias Schiffer2016-09-261-0/+5
| | | | | | | | | | | | | | The Gluon firmware framework [1] uses postinst scripts for sanity checks. Make the build fail when a postinst script exits with an error to make these sanity checks effective. All postinst scripts in packages from the LEDE core and the packages feed seem to work correctly with this change and will always return 0 unless something is very broken. [1] https://github.com/freifunk-gluon/gluon Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* rootfs: remove unnecessary and potentially harmful force flags from opkg callMatthias Schiffer2016-09-262-4/+1
| | | | | | | | | | | | Especially --force-overwrite and --force-depends will often lead to broken images; it's better to fail the build in such cases than to silently ignore the errors. Instead, ignore errors in the per-device rootfs opkg remove command, so the build doesn't break when packages can't be removed because of dependencies. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* image: per-device rootfs: first remove, then install packagesMatthias Schiffer2016-09-261-3/+3
| | | | | | | | Some DEVICE_PACKAGES definitions replace one package variant with another (e.g. wpad-mini is replaced with wpad). To avoid file conflicts, first remove, then install packages. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* image: don't modify file permissions before rootfs generationMatthias Schiffer2016-09-262-22/+3
| | | | | | | | | | | | | | | | Modifying the file permissions can be harmful, as it would make files world-readable even if they weren't in the ipk packages. The Image/mkfs/prepare step is removed completely, as it is redundant now (/tmp and /overlay are already provided by base-files with the correct permissions). It has been verified that this change does not affect any permissions of files in the default package set except /etc/ppp/chap-secrets, which was world-readable before. All packages not in the default set are more likely to be installed via opkg than being part of a base image and thus were usually not affected by the permission modification anyways. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* image: fix CONFIG_CLEAN_IPKG with CONFIG_TARGET_PER_DEVICE_ROOTFSMatthias Schiffer2016-09-252-1/+3
| | | | | | | | | | | Running prepare_rootfs on TARGET_DIR deletes the opkg state when CONFIG_CLEAN_IPKG is enabled, making the per-device rootfs package install fail. To avoid this, create a copy of the TARGET_DIR before prepare_rootfs is run and use this as basis for per-device rootfs generation. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* image: per-device rootfs: don't fail without opkgMatthias Schiffer2016-09-241-2/+2
| | | | | | | Ignore errors caused by /etc/opkg not existing (i.e. when opkg is not selected). Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* image: allow specifying additional packages for device-specific rootfsMatthias Schiffer2016-09-241-2/+12
| | | | | | | | Add a new option to each device in multi-profile mode, allowing to provide a list of packages to add or remove. In case of added packages, the user must take care that these are selected to be built. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* image: don't override opkg list directory in per-device rootfs modeMatthias Schiffer2016-09-242-5/+3
| | | | | | | | | | | | opkg's -l option is always interpreted relative to the installation root. This leads to very weird paths inside the rootfs (containing the whole path to the LEDE tree on the build machine) and causes the subsequent deletion of the list directory to fail (cluttering the resulting images). Instead, use the default list directory and remove its contents in prepare_rootfs. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* kernel: update kernel 4.4 to version 4.4.21Álvaro Fernández Rojas2016-09-161-2/+2
| | | | | | | Refresh patches for all targets that support kernel 4.4. Compile-tested on brcm2708 only. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: update kernel 4.4 to version 4.4.20Álvaro Fernández Rojas2016-09-151-2/+2
| | | | | | | Refresh patches for all targets that support kernel 4.4. Compile-tested on brcm2708 only. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* image: remove padding parameter from append-kernel/append-rootfsMathias Kresin2016-09-131-2/+2
| | | | | | | | | | | Using pad-to instead of passing the optional padding to append-kernel or append-rootfs. It could be that the value of a variable is passed. In case the variable is empty no error is thrown. Furthermore the purpose of the extra parameter is hard to get without reading the code. Signed-off-by: Mathias Kresin <dev@kresin.me>
* image: use check-size from new image build codeMathias Kresin2016-09-131-8/+1
| | | | | | Use the new image build code and deduplicate the code. Signed-off-by: Mathias Kresin <dev@kresin.me>
* image: add KERNEL_SIZE to the default device varsMathias Kresin2016-09-131-1/+1
| | | | | This reverts commit ec37a565878fd79d4127cbb843c17ce3b8dc97c0 and fixes the underlying issue.
* build: drop UBI EOF marker from images by defaultFelix Fietkau2016-09-121-1/+1
| | | | | | | | Only add them where they are actually required. Should help with compatibility issues with stock U-Boot images that access UBI Signed-off-by: Felix Fietkau <nbd@nbd.name>
* octeon: use new ext4/f2fs overlay supportFelix Fietkau2016-09-101-0/+4
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* image: pass device blocksize to padjffs2Mathias Kresin2016-09-031-1/+2
| | | | | | | | | | | | | | | | | | At the moment the padding steps are hardcoded. Especially images for devices with a 4K sector size can be unnecessarily bloated using the hardcoded padding steps. It has been observed that 192Kb of padding was added to the image of a 4MB device, albeit due to the 4K sector size the minimum required extra padding for the jffs2 rootfs_data is 20Kb. In worst case it means that the image-size check could fail albeit there is enough space for all selected packages For device build code not exposing the blocksize, use the hardcoded padding further on. Signed-off-by: Mathias Kresin <dev@kresin.me>