<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/pepe2k/include/image.mk, branch v22.03.2</title>
<subtitle>Staging tree of Piotr Dymacz</subtitle>
<id>https://git.openwrt.org/openwrt/staging/pepe2k/atom?h=v22.03.2</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/pepe2k/atom?h=v22.03.2'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/'/>
<updated>2022-10-14T21:15:30Z</updated>
<entry>
<title>image: always rebuild kernel loaders</title>
<updated>2022-10-14T21:15:30Z</updated>
<author>
<name>Matthias Schiffer</name>
</author>
<published>2022-03-27T21:15:48Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=a7fb589e8a9df06bd0e36c91d05806f1e8aeb9e8'/>
<id>urn:sha1:a7fb589e8a9df06bd0e36c91d05806f1e8aeb9e8</id>
<content type='text'>
Kernel loaders like the lzma-loader currently don't track changes to
their sources. This can lead to an old version of a loader to be used
when a build tree is not clean between builds.

As the loaders are tiny and the build times are insignificant, simply
force rebuilding them on every build to avoid this problem.

Signed-off-by: Matthias Schiffer &lt;mschiffer@universe-factory.net&gt;
(cherry picked from commit a01d23e755ba46f41e667d558d82d4871d7f5450)
</content>
</entry>
<entry>
<title>build: store sha256_unsigned in JSON</title>
<updated>2022-04-06T13:03:58Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2022-03-28T02:29:09Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=a5cf20d1974f8247ed87fad4a61216cc75eddfdb'/>
<id>urn:sha1:a5cf20d1974f8247ed87fad4a61216cc75eddfdb</id>
<content type='text'>
Introduce `sha256_unsigned` which is a checksum of the image _before_ a
signature is attached. This is helpful to compare image reproducibility.

Since the `.sha256sum` file is located in the $(KDIR) folder, switch
$(BIN_DIR) with $(KDIR) to simplify the code. The value of $(BIN_DIR)
itself is not stored inside the resulting JSON file, so it can be
replaced.

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
(cherry picked from commit 8822a8d850ba2df69b81289758959bb90643a696)
</content>
</entry>
<entry>
<title>image: let mksquashfs4 use all processors</title>
<updated>2022-04-06T13:03:58Z</updated>
<author>
<name>Stijn Tintel</name>
</author>
<published>2022-02-19T15:54:22Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=82e1f041f9a6cf9232c9f73938ef3b11c34cca0f'/>
<id>urn:sha1:82e1f041f9a6cf9232c9f73938ef3b11c34cca0f</id>
<content type='text'>
Drop the -processors argument from the mksquashfs4 call, so it will use
all available processors. This dramatically reduces the time to create
squashfs filesystems.

The times below are observed when building an image for my main router,
the WatchGuard Firebox M300 (qoriq target):

Before:
real    4m45,973s

After:
real    0m23,497s

With this commit `mksquashfs` may use more cores than defined via `-j`.
This is the same behaviour as for archive creation of ImageBuilder, SDK
or toolchain. There is no trivial way to limit `mksquashfs` CPU core
usage to the amount of "free" make jobs since two running `mksquashfs`
instances would each run with the total allowed number (-j) of threads.

Signed-off-by: Stijn Tintel &lt;stijn@linux-ipv6.be&gt;
[extended reasoning in commit message]
Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
(cherry picked from commit df2ae8826ced4f374bcb693b44d8a113ad150d70)
</content>
</entry>
<entry>
<title>image: define DEVICE_DTS_DELIMITER as per-device variable</title>
<updated>2021-10-24T09:19:58Z</updated>
<author>
<name>Christian Lamparter</name>
</author>
<published>2021-10-23T19:01:24Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=cb11eaf5dd2f443f46f1f73109a16c15551c2f3a'/>
<id>urn:sha1:cb11eaf5dd2f443f46f1f73109a16c15551c2f3a</id>
<content type='text'>
DEVICE_DTS_DELIMITER needs to be in the DEFAULT_DEVICE_VARS
list to work as expected. This was missing from the original
version and got overlooked.

Fixes: fd6790864739 ("scripts: mkits.sh: Allow legacy @ mode for dts creation")
Signed-off-by: Christian Lamparter &lt;chunkeey@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: store artifacts in JSON</title>
<updated>2021-09-14T20:42:38Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2021-09-13T09:44:04Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=5ef4608c02ef6db9698c8d10011b9c14a8ca073b'/>
<id>urn:sha1:5ef4608c02ef6db9698c8d10011b9c14a8ca073b</id>
<content type='text'>
Multiple profiles create artifacts, these should be stored in the JSON
file as well, allowing downstream tooling to show those files, too.

Artifacts don't have specific filesystems so only the fields `name`,
`type` and `sha256` are available.

Rename env variable names from IMAGE_ to FILE_ prefixes to reflect that
images, kernels and artifacts are added with the same command.

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
</content>
</entry>
<entry>
<title>image: fix build with SELinux</title>
<updated>2021-08-19T00:37:35Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2021-08-19T00:23:41Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=c5616a8ae1649ef55d362462a39aa133b65dc1e3'/>
<id>urn:sha1:c5616a8ae1649ef55d362462a39aa133b65dc1e3</id>
<content type='text'>
The option '-xattr' for mksquashfs4 should be '-xattrs' which lead to
build failure with SELinux enabled. Add the missing 's'.

Fixes: 4baf47b9a8 ("images: squashfs: xattrs should not depend on buld host")
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>images: squashfs: xattrs should not depend on buld host</title>
<updated>2021-08-03T17:28:53Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2021-08-02T18:14:53Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=4baf47b9a828b2e2ba2f174083676fe79b0ab527'/>
<id>urn:sha1:4baf47b9a828b2e2ba2f174083676fe79b0ab527</id>
<content type='text'>
Enable xattr for the generated squashfs only if needed for SELinux.
This eliminates warnings during boot on target when building
(non-SELinux) OpenWrt on SELinux-enabled hosts like Fedora.

Reported-by: fda77 &lt;fda77@users.noreply.github.com&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>build: fix build for devices without initramfs</title>
<updated>2021-06-08T20:53:14Z</updated>
<author>
<name>David Bauer</name>
</author>
<published>2021-06-08T17:30:12Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=bb749e49a6e149f681a058b3d7e45fd8d4f79305'/>
<id>urn:sha1:bb749e49a6e149f681a058b3d7e45fd8d4f79305</id>
<content type='text'>
Don't attempt to copy initramfs images for devices which do not output
an initramfs image.

This was breaking builds for mpc85xx-p1010 since mid-march.

Signed-off-by: David Bauer &lt;mail@david-bauer.net&gt;
</content>
</entry>
<entry>
<title>build/json: fix DEVICE_PACKAGES</title>
<updated>2021-06-02T20:58:13Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2021-06-02T20:09:58Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=29c94fe28ec6ec2f2cbd08e5af9a1b665587b3fe'/>
<id>urn:sha1:29c94fe28ec6ec2f2cbd08e5af9a1b665587b3fe</id>
<content type='text'>
The variable was missing in the definition of DEFAULT_DEVICE_VARS which
caused it to contain wrong values, messing up the resulting JSON files.

This patch adds the variable DEVICE_PACKAGES to DEFAULT_DEVICE_VARS.

Suggested-by: Baptiste Jonglez &lt;git@bitsofnetworks.org&gt;
Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
</content>
</entry>
<entry>
<title>build: introduce $(MKHASH)</title>
<updated>2021-05-13T13:13:15Z</updated>
<author>
<name>Leonardo Mörlein</name>
</author>
<published>2021-05-09T20:28:15Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=b993b68b6ca8444b5227a0c18df4600b37ac565c'/>
<id>urn:sha1:b993b68b6ca8444b5227a0c18df4600b37ac565c</id>
<content type='text'>
Before this commit, it was assumed that mkhash is in the PATH. While
this was fine for the normal build workflow, this led to some issues if

    make TOPDIR="$(pwd)" -C "$pkgdir" compile

was called manually. In most of the cases, I just saw warnings like this:

    make: Entering directory '/home/.../package/gluon-status-page'
    bash: line 1: mkhash: command not found
    bash: line 1: mkhash: command not found
    bash: line 1: mkhash: command not found
    bash: line 1: mkhash: command not found
    bash: line 1: mkhash: command not found
    bash: line 1: mkhash: command not found
    bash: line 1: mkhash: command not found
    bash: line 1: mkhash: command not found
    [...]

While these were only warnings and the package still compiled sucessfully,
I also observed that some package even fail to build because of this.

After applying this commit, the variable $(MKHASH) is introduced. This
variable points to $(STAGING_DIR_HOST)/bin/mkhash, which is always the
correct path.

Signed-off-by: Leonardo Mörlein &lt;me@irrelefant.net&gt;
</content>
</entry>
</feed>
