<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/pepe2k/include/package.mk, branch v21.02.6</title>
<subtitle>Staging tree of Piotr Dymacz</subtitle>
<id>https://git.openwrt.org/openwrt/staging/pepe2k/atom?h=v21.02.6</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/pepe2k/atom?h=v21.02.6'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/'/>
<updated>2022-12-04T16:18:37Z</updated>
<entry>
<title>build: handle directory with whitespace in AUTOREMOVE clean</title>
<updated>2022-12-04T16:18:37Z</updated>
<author>
<name>Christian Marangi</name>
</author>
<published>2022-09-07T21:50:36Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=12b1d2f700188e7f6fbb9761510c83e36079ddc6'/>
<id>urn:sha1:12b1d2f700188e7f6fbb9761510c83e36079ddc6</id>
<content type='text'>
Package with whitespace in their build directory are not correctly
removed when CONFIG_AUTOREMOVE is enabled. This is caused by xargs that
use whitespace as delimiters. To handle this use \0 as the delimiter and
set find to use \0 as the delimiter.

Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
(cherry picked from commit dccee21792b89031bcd801030de403f195d80278)
</content>
</entry>
<entry>
<title>build: make find_md5 reproducible with AUTOREMOVE</title>
<updated>2022-12-04T15:07:33Z</updated>
<author>
<name>Christian Marangi</name>
</author>
<published>2022-09-06T14:48:37Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=360d756fbf01e0a051ff47223523deffae647afa'/>
<id>urn:sha1:360d756fbf01e0a051ff47223523deffae647afa</id>
<content type='text'>
While experimenting with the AUTOREMOVE option in search of a way to use
prebuilt host tools in different buildroot, it was discovered that the
md5 generated by find_md5 in depends.mk is not reproducible.

Currently the hash is generated by the path of the file in addition to
the file mod time. Out of confusion, probably, there was an idea that
such command was used on the package build_dir. Reality is that this
command is run on the package files. (Makefile, patches, src)

This is problematic because the package Makefile (for example) change at
each git clone and base the hash on the Makefile mtime doesn't really
reflect if the Makefile actually changes across a buildroot or not.

A better approach is to generate an hash of each file and then generate
an hash on the sort hash list. This way we remove the problem of git
clone setting a wrong mtime while keeping the integrity of checking if a
file changed for the package as any change will result in a different
hash.

Introduce a new kind of find_md5 function, find_md5_reproducible that
apply this new logic and limit it only with AUTOREMOVE option set to
prevent any kind of slowdown due to additional hash generation.

(cherry picked from commit 53a08e37437972ba0a8fbf953a93a70a6b784ef4)
[ reworked mkhash to old implementation ]
Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: filter out own packages on package version check</title>
<updated>2021-02-15T20:10:48Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-02-15T20:09:49Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=c68d52799110262698734882bc50d960e3108eca'/>
<id>urn:sha1:c68d52799110262698734882bc50d960e3108eca</id>
<content type='text'>
This was accidentally dropped in 27a4a71c2408
("metadata: handle ABI version rebuild tracking for transient dependencies")

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>Mostly revert "build: add support for fixing up library soname"</title>
<updated>2021-02-15T17:47:21Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-02-15T16:49:46Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=075fa4cd9ae2ee5e9715fad2f70b2092ddc9ac2d'/>
<id>urn:sha1:075fa4cd9ae2ee5e9715fad2f70b2092ddc9ac2d</id>
<content type='text'>
This reverts commit b12288fa69b171f7c9405518c9bed3581a06f7ce.
The patchelf approach is too fragile, and the only users of this have been
converted to make patching unnecessary
Leave the abi_version_str variable in place in rules.mk

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>build: add support for fixing up library soname</title>
<updated>2021-02-14T18:41:51Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-02-12T08:56:56Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=b12288fa69b171f7c9405518c9bed3581a06f7ce'/>
<id>urn:sha1:b12288fa69b171f7c9405518c9bed3581a06f7ce</id>
<content type='text'>
This makes it possible to declare a package ABI_VERSION independent from the
upstream soname by setting PKG_ABI_VERSION in the package makefile.
The library filename is fixed up for files installed to packages and to the
staging dir. References to the original from executables within the same
package are also fixed up

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>build: fix ABI version rebuild dependency</title>
<updated>2021-02-14T18:41:51Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-02-12T08:47:14Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=8597da20acce8533a538d436a536795a61b2e8e0'/>
<id>urn:sha1:8597da20acce8533a538d436a536795a61b2e8e0</id>
<content type='text'>
A stray comma was being appended to the last package version dependency,
causing it to be missed for ABI version checks

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>build: use SPDX license tags</title>
<updated>2021-02-05T13:54:47Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2020-09-22T02:48:37Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=a17b8eaa2e4b319b7069170398fe965786a813e9'/>
<id>urn:sha1:a17b8eaa2e4b319b7069170398fe965786a813e9</id>
<content type='text'>
The license folder is a core part of OpenWrt and all GPL-2.0 licensed.
Use SPDX license tags to allow machines to check licenses.

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
[rebase, keep some Copyright lines, sharpen commit message]
Signed-off-by: Adrian Schmutzler &lt;freifunk@adrianschmutzler.de&gt;
</content>
</entry>
<entry>
<title>build: drop ccache variables from specific targets</title>
<updated>2021-01-01T20:29:07Z</updated>
<author>
<name>Sven Wegener</name>
</author>
<published>2020-12-27T10:47:45Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=e9fb9b79f62f7d1224a2c88b5b88969a2442d56a'/>
<id>urn:sha1:e9fb9b79f62f7d1224a2c88b5b88969a2442d56a</id>
<content type='text'>
With commit 2ca084cc ("build: improve ccache support") these variables
are being set globally and we don't need them for specific targets.

Signed-off-by: Sven Wegener &lt;sven.wegener@stealer.net&gt;
</content>
</entry>
<entry>
<title>download: handle possibly invalid local tarballs</title>
<updated>2020-11-27T13:46:13Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2020-11-19T15:32:46Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=4e19cbc553350b8146985367ba46514cf50e3393'/>
<id>urn:sha1:4e19cbc553350b8146985367ba46514cf50e3393</id>
<content type='text'>
Currently it's assumed, that already downloaded tarballs are always
fine, so no checksum checking is performed and the tarball is used even
if it might be corrupted.

From now on, we're going to always check the downloaded tarballs before
considering them valid.

Steps to reproduce:

 1. Remove cached tarball

   rm dl/libubox-2020-08-06-9e52171d.tar.xz

 2. Download valid tarball again

   make package/libubox/download

 3. Invalidate the tarball

   sed -i 's/PKG_MIRROR_HASH:=../PKG_MIRROR_HASH:=ff/' package/libs/libubox/Makefile

 4. Now compile with corrupt tarball source

   make package/libubox/{clean,compile}

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>build: fix extreme build system slowdown caused by SOURCE_DATE_EPOCH changes</title>
<updated>2020-09-05T09:26:57Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2020-09-05T09:19:11Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=7716a4309207addc5f359a4b5ab22f0104996028'/>
<id>urn:sha1:7716a4309207addc5f359a4b5ab22f0104996028</id>
<content type='text'>
Adding inline shell invocations in per-target variables causes them to be
executed over and over again, which causes a significant slowdown.
Fix this by evaluating it only once per package directory

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
</feed>
