<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/hauke/include/kernel-defaults.mk, branch v22.03.3</title>
<subtitle>Hauke Mehrtens staging tree</subtitle>
<id>https://git.openwrt.org/openwrt/staging/hauke/atom?h=v22.03.3</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/hauke/atom?h=v22.03.3'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/'/>
<updated>2022-04-06T13:03:58Z</updated>
<entry>
<title>kernel: set SOURCE_DATE_EPOCH for initramfs root dir</title>
<updated>2022-04-06T13:03:58Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2022-04-06T11:19:31Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=bb8300069b5595b2ae322127a173d1bd3d04543e'/>
<id>urn:sha1:bb8300069b5595b2ae322127a173d1bd3d04543e</id>
<content type='text'>
Make sure the timestamp of the root directory of the initramfs is set
to SOURCE_DATE_EPOCH as well.

Fixes: 29d7461d11 ("kernel: set options to make external initramfs reproducible")
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
(cherry picked from commit 54bcf586b0beb510345fdbac731ce1c04b6fa56b)
</content>
</entry>
<entry>
<title>kernel: fix initramfs reproducibility</title>
<updated>2022-04-06T13:03:58Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2022-03-29T12:54:14Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=ca83af21ccd510d260d20775a50045e7afca7211'/>
<id>urn:sha1:ca83af21ccd510d260d20775a50045e7afca7211</id>
<content type='text'>
Make sure xz uses at least 2 threads so compression always runs in
multi-threaded mode as the resulting file in single-threaded mode
differs.

Fixes: 29d7461d11 ("kernel: set options to make external initramfs reproducible")
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
(cherry picked from commit fc6a83e63b187ecfd0e427c062ae09e3c104e291)
</content>
</entry>
<entry>
<title>kernel: set options to make external initramfs reproducible</title>
<updated>2022-03-27T15:14:00Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2022-03-24T03:25:28Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=077e8064b5bbb275a9f36921a009772ee448013a'/>
<id>urn:sha1:077e8064b5bbb275a9f36921a009772ee448013a</id>
<content type='text'>
Run cpio as well as compressors in such ways that they are generating
reproducible output.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
(cherry picked from commit 29d7461d1135b91905120a44dc028b786693ecc4)
</content>
</entry>
<entry>
<title>image: fix CONFIG_EXTERNAL_CPIO handling</title>
<updated>2021-11-28T20:15:10Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2021-11-27T12:02:05Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=0a4f5d06c23215f4ea9945f8d72dff5ba60c34e5'/>
<id>urn:sha1:0a4f5d06c23215f4ea9945f8d72dff5ba60c34e5</id>
<content type='text'>
CONFIG_EXTERNAL_CPIO is a string variable, hence testing for 'y'
doesn't make much sense here.

Fixes: 330bd380e8 ("image: allow building FIT and uImage with ramdisk")
Reported-by: Huangbin Zhan &lt;zhanhb88@gmail.com&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>build: kernel: avoid unnecessary package rebuilds</title>
<updated>2021-11-01T19:18:55Z</updated>
<author>
<name>Eneas U de Queiroz</name>
</author>
<published>2021-10-15T13:30:05Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=6b8b5e7248fd8562e8cdd5ef6f3d52f51418fc3b'/>
<id>urn:sha1:6b8b5e7248fd8562e8cdd5ef6f3d52f51418fc3b</id>
<content type='text'>
The $(LINUX_DIR)/.config timesptamp changes between runs of
make target/compile and make target/install (which builds the image).

Kernel-dependent packages and out of tree modules are built in between
those runs, and they check the .config timestamp to decide if they need
to be rebuilt.

Save the target/compile .config to use its timestamp if the file does
not change between runs.  That way the subsequent kernel packages are
not unnecessarily rebuilt when you run 'make' back to back.

Signed-off-by: Eneas U de Queiroz &lt;cotequeiroz@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: fix regression for kernels &lt; 5.10</title>
<updated>2021-05-25T17:46:13Z</updated>
<author>
<name>Sebastian Kemper</name>
</author>
<published>2021-04-13T12:22:20Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=54070a1f5cf355e908425d4a5787bb05bee22f25'/>
<id>urn:sha1:54070a1f5cf355e908425d4a5787bb05bee22f25</id>
<content type='text'>
This fixes a regression introduced with commit
5ed1e5140a80558ab47fd70410ae3242bed5becf ("build: build kernel image
before building modules/packages").

Before this commit the make target would always include "modules",
resulting in a MODPOST and a complete Module.symvers file. Since this
commit a MODPOST of the kernel modules is not guaranteed for kernels &lt;
5.10. This results in some broken SDKs in which external packages that
depend on exported symbols from kernel modules fail to compile.

Adding "modules" back to the calls to the CompileImage defines fixes the
regression. For kernels &gt; 5.10 this is not needed, but it doesn't cause
any harm either.

Tested with kernels 5.4.x and 5.10.x.

Signed-off-by: Sebastian Kemper &lt;sebastian_ml@gmx.net&gt;
</content>
</entry>
<entry>
<title>kernel-defaults: fix external kernel build when user_headers is missing</title>
<updated>2021-05-23T13:11:38Z</updated>
<author>
<name>Matt Merhar</name>
</author>
<published>2021-02-26T04:28:53Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=cc76e34c10e57cb1a4f7971268a77aad2f24c8ca'/>
<id>urn:sha1:cc76e34c10e57cb1a4f7971268a77aad2f24c8ca</id>
<content type='text'>
Use an 'if' so the absence of $(LINUX_DIR)/user_headers doesn't make the
line evaluate to false and cause the build to fail.

Signed-off-by: Matt Merhar &lt;mattmerhar@protonmail.com&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/hauke/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>
<entry>
<title>build: use numeric uid/gid on cpio calls</title>
<updated>2021-03-03T15:09:59Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-03-03T15:09:04Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=785ab2b62c8d9366023095641f2ba237e2b0ed8e'/>
<id>urn:sha1:785ab2b62c8d9366023095641f2ba237e2b0ed8e</id>
<content type='text'>
There are systems that don't have the 'root' group, so don't rely on host
specific user/group names

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>treewide: fix spelling 'seperate' -&gt; 'separate'</title>
<updated>2021-02-28T23:59:21Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2021-02-28T23:58:10Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/hauke/commit/?id=ebcb4f1d0a091d1fa87d6aa04ecae355ef23ef22'/>
<id>urn:sha1:ebcb4f1d0a091d1fa87d6aa04ecae355ef23ef22</id>
<content type='text'>
This popular spelling mistake was also introduced by myself lately.
Fix it everywhere.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
</feed>
