Commit Graph

187 Commits

Author SHA1 Message Date
John Crispin
2d255ac8d9 include: add a no dict version of lzma to new image build code
Required to compress kernels in a brnboot compatible way.

Signed-off-by: Mathias Kresin <openwrt@kresin.me>

SVN-Revision: 49240
2016-04-26 11:43:24 +00:00
John Crispin
4fe3fda78a include/image.mk: allow including U-Boot environment in UBI
Signed-off-by: Daniel Golle <daniel@makrotopia.org>

SVN-Revision: 49039
2016-03-20 14:41:06 +00:00
Jo-Philipp Wich
f6b399c8ab include: image.mk: use correct flag for fixed mtimes with make_ext4fs (#21768)
The correct flag for fixed mtime is -T, not -t.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 48610
2016-02-01 13:58:43 +00:00
Felix Fietkau
dc476f5fa4 include/image.mk: fix missing right parenthesis (#21766)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48609
2016-02-01 13:42:59 +00:00
Felix Fietkau
6a42ee6517 include/image: use SOURCE_DATE_EPOCH if set for squashfs + ext4 images
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>

SVN-Revision: 48588
2016-01-31 23:29:31 +00:00
Felix Fietkau
08a0095a9e include/image: don't save gzip name/timestamp metadata
Signed-off-by: bryan newbold <bnewbold@robocracy.org>

SVN-Revision: 48587
2016-01-31 23:29:22 +00:00
Felix Fietkau
be6acba4dc build system: have tar use $SOURCE_DATE_EPOCH for --mtime
The --mtime argument to 'tar' sets the modification time for all files within
the archive, which determines the timestamp files will get when they are
extracted. In this case, rootfs and other tarballs will get mtimes which
correspond to the last commit timestamp of the build system, as reported by
git/subversion.

This is a step towards reproducible image builds.

Signed-off-by: bryan newbold <bnewbold@robocracy.org>
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48586
2016-01-31 23:29:16 +00:00
Felix Fietkau
4ab26a52ef build: skip rebuild of kernel images if the source did not change
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48145
2016-01-06 18:38:49 +00:00
Felix Fietkau
c9f75a77ed export KERNEL_INITRAMFS_IMAGE
`Build/ubnt-erx-factory-kernel` in `target\linux\ramips\image\Makefile`
references `$(KERNEL_INITRAMFS_IMAGE)`
which is not exported

Signed-off-by: YounJae Rho <luxflow@live.com>

SVN-Revision: 48116
2016-01-04 15:11:37 +00:00
Felix Fietkau
6a90baf2bf image.mk: use new pure make functions for sanitizing image filenames
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48106
2016-01-03 20:58:02 +00:00
Felix Fietkau
0a0bfc8507 images imagebuilder: Allow to add sanitized extra name
For final output image names allow user to add an
extra string (which is sanitized).  This is particularly
useful with ImageBuilder where you may generate multiple
images from the same base and for the same board,
with different package selections and additional files
(via FILES=).

Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com>

SVN-Revision: 48083
2016-01-03 14:44:56 +00:00
Felix Fietkau
150a1b18c5 images: use configured distribution name for output image names
We allow to configure the version distribution name;
let's also use it for the final image filenames.

Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com>

SVN-Revision: 48082
2016-01-03 14:44:48 +00:00
Felix Fietkau
caf3a14a3c image.mk: use cross toolchain cpp for processing dts file instead of relying on the host compiler
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47937
2015-12-19 11:15:41 +00:00
Felix Fietkau
09335a0a2f build: fix arch used during dts compilation
Use kernel arch for dts compilation.
Also use Image/BuildDTB to build dts for ramips.

Signed-off-by: Nikolay Martynov <mar.kolya@gmail.com>

SVN-Revision: 47823
2015-12-10 12:39:32 +00:00
Felix Fietkau
86a46a817b image: append-ubi: add optional UBI subpage size
Signed-off-by: Claudio Leite <leitec@staticky.com>

SVN-Revision: 47411
2015-11-07 13:19:35 +00:00
Felix Fietkau
46f6626052 include/image.mk: Introduce generic option to wrap kernel into JFFS2
Some devices require the kernel to be in a JFFS2 file system. Make the
support for this more generic so that it can be used by other devices.

Signed-off-by: Benjamin Berg <benjamin@sipsolutions.net>

SVN-Revision: 47404
2015-11-07 12:51:31 +00:00
Felix Fietkau
141793c96c include/image.mk: introduce KERNEL_INITRAMFS_NAME variable
In case if we're interested in generation of non-binary images
(for example if we want images to be valid .elfs - and that's what we
want for ARC now) we have to instruct Device/Build/initramfs target to
use input file with some extension (in case of ARC it will be
essentially .elf).

Otherwise default binary vmlinux-initramfs (without extension) is used and
resulting images then are binaries instead of elfs.

Now having KERNEL_INITRAMFS_NAME variable it's possible to substitute
default $$(KERNEL_NAME)-initramfs with preferred option like
$$(KERNEL_NAME)-initramfs.elf.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Felix Fietkau <nbd@openwrt.org>
Cc: John Crispin <blogic@openwrt.org>

SVN-Revision: 47403
2015-11-07 12:51:24 +00:00
Felix Fietkau
2927e32deb include/image.mk: Use PROFILE_SANITIZED in targz image task
Signed-off-by: Petr Štetiar <ynezz@true.cz>

SVN-Revision: 47311
2015-10-31 09:28:14 +00:00
Felix Fietkau
86136e2bc3 include/image.mk: Introduce sanitized profile variable
Making common code reusable as there's a lot of duplicate code in imx6,
kirkwood and oxnas archs.

Signed-off-by: Petr Štetiar <ynezz@true.cz>

SVN-Revision: 47307
2015-10-31 09:27:04 +00:00
Felix Fietkau
d495ef6d59 build: make mkfs-* depend on kernel installation to fix parallel build issues
Reported-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47296
2015-10-30 22:01:27 +00:00
Felix Fietkau
4baec2468a include/image.mk: make tar reproducible
several packages reported different file order between builds
make binutils, kmod-sched reproducible

Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>

SVN-Revision: 46859
2015-09-11 16:33:26 +00:00
Jonas Gorski
4bbfb09362 image: allow exactly KERNEL_SIZE sized kernels
The KERNEL_SIZE should be the maximum size, inclusive, so we need to
check for greater equal, not just greater.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46792
2015-09-04 14:45:16 +00:00
Jonas Gorski
b958c12d2c image: move netgear-image to top and rename to -dni
Use the same naming as netgear-chk.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46791
2015-09-04 14:45:09 +00:00
Jonas Gorski
a164be8ebe build: add a build step for generic sysupgrade nand image
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46784
2015-09-04 14:44:27 +00:00
Jonas Gorski
db8ae81f89 image: add a build step for building and appending an ubinized rootfs
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46783
2015-09-04 14:44:10 +00:00
Jonas Gorski
4e81a1473e brcm63xx: move gzip build command to include/image.mk
Allow other targets to make use of it.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46601
2015-08-14 15:10:47 +00:00
Jonas Gorski
960113fcfc image.mk: add a fit recipe
Add a recipe to build a fit wrapped kernel (and optional dtb).

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46600
2015-08-14 15:10:42 +00:00
Jonas Gorski
8e69c9f7ef image.mk: store the device name variable
Make the device name accessible for any build commands instead of
forcing targets to define it themselves.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46597
2015-08-14 13:05:22 +00:00
Jonas Gorski
4ecae78c16 image.mk: replace all Build/netgear-chk with a generic implementation
Instead of letting each target define it themselves, create on in
include/image.mk and let the targets use it.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46596
2015-08-14 13:05:14 +00:00
Jonas Gorski
bed330204a image.mk: move KDIR_TMP definition to a central location
Instead of each target defining it the same, move the KDIR_TMP
definition to include/image.mk. In addition Image/Build/SysupgradeNAND
already requires KDIR_TMP to be set, so it makes sense to have it
globally defined.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46592
2015-08-14 10:20:53 +00:00
Felix Fietkau
5b25a12e8f image: fix handling of per-device kernel build commands
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46589
2015-08-13 19:02:26 +00:00
Felix Fietkau
6bb13be4f0 image: fix device variable exports for initramfs images
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 46496
2015-07-26 11:42:27 +00:00
Jonas Gorski
e7b5dd0e1d image.mk: add a BuildDTB define
Add a Image/BuildDTB command that takes the path to an dts file and
applies the CPP using the default include directories, then uses dtc
to compile the dts as the specified output file.
Additional CPP and DTC flags can be supplied as additional arguments.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46389
2015-07-16 11:12:52 +00:00
John Crispin
096b3759a9 build: Prevent more gzip timestamps
To improve reproducibility, prevent the inclusion of timestamps
in the gzip header.

Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>

SVN-Revision: 46361
2015-07-14 09:57:45 +00:00
Felix Fietkau
61a0b05dbf image.mk: add Build step pad-to
pad-to can be used in a pipe to pad the image to a specific chunk-size.
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>

SVN-Revision: 45980
2015-06-15 07:45:36 +00:00
Felix Fietkau
a417bf9f43 image.mk: add Build step combined-image
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>

SVN-Revision: 45979
2015-06-15 07:45:27 +00:00
Jo-Philipp Wich
0d19e8da7f include: image.mk: ensure that $(KDIR)/tmp exists in the IB case as well
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 45870
2015-06-01 18:00:35 +00:00
Felix Fietkau
bf93fde164 build: do not call initramfs build from within the image builder
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45837
2015-05-29 13:41:31 +00:00
Felix Fietkau
d1372992c4 build: in new image building code, do not rebuild kernel images in the image builder
Some kernel images need to be wrapped in a loader, which cannot be built
without a working toolchain.
Also, this speeds up the image builder run.

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

SVN-Revision: 45836
2015-05-29 13:41:21 +00:00
Felix Fietkau
ddf120fc03 build: store initramfs kernels in $(KDIR)/tmp - prevents them from being included in the image builder tarball
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45835
2015-05-29 13:41:02 +00:00
Felix Fietkau
a6ad9f8ad8 build: store firmware images in $(KDIR)/tmp - prevents them from being included in the image builder tarball
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45834
2015-05-29 13:40:55 +00:00
Jonas Gorski
497fdc3f09 image.mk: make image too big warnings more visible
Output warnings through stderr to allow them to be easilier spotted
when building with V=w.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45746
2015-05-25 08:27:55 +00:00
Felix Fietkau
9c7a520ba8 image: disable compile target within image builder
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45674
2015-05-11 09:17:51 +00:00
Felix Fietkau
49e1682861 build: disable initramfs build within image builder
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45673
2015-05-11 09:17:39 +00:00
Felix Fietkau
c05f9b9c23 build: make initramfs kernel builds depend on the image prepare step
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45671
2015-05-11 09:07:58 +00:00
Felix Fietkau
4acc2a3947 build: add support for adding a per-device compile step in the new image building code
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45670
2015-05-11 09:07:21 +00:00
Felix Fietkau
2be2604a19 include: make dtb argument optional in MkFIT
As mkits.sh makes the -d argument optional, we'll make this same
argument optional in the MkFIT function as well.

With this change, MkFIT can be used both to generate FIT images with DT,
and without DT.

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

SVN-Revision: 45660
2015-05-10 11:46:50 +00:00
Jo-Philipp Wich
0ee9504911 all: replace genext2fs with make_ext4fs
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 45517
2015-04-20 13:57:43 +00:00
Felix Fietkau
2f49517c2f image.mk: do not emit multiple target definitions for kernel images
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45498
2015-04-18 21:35:22 +00:00
Felix Fietkau
8ca1e211df image.mk: force rebuild of kernel dependent parts - fixes auto-rebuild on DTS changes
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45495
2015-04-18 19:32:20 +00:00