<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/pepe2k/include/host-build.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: 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: improve ccache support</title>
<updated>2020-07-11T13:19:53Z</updated>
<author>
<name>Roman Yeryomin</name>
</author>
<published>2020-06-12T18:43:46Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=2ca084ccaae619ac8031e902c66817d021ac6fd5'/>
<id>urn:sha1:2ca084ccaae619ac8031e902c66817d021ac6fd5</id>
<content type='text'>
Set CCACHE_DIR to $(TOPDIR)/.ccache and CCACHE_BASEDIR to $(TOPDIR).
This allows to do clean and dirclean. Cache hit rate for test build
after dirclean is ~65%.
If CCACHE is enabled stats are printed out at the end of building process.
CCACHE_DIR config variable allows to override default, which could be useful
when sharing cache with many builds.
cacheclean make target allows to clean the cache.

Changes from v1:
- remove ccache directory using CCACHE_DIR variable
- remove ccache leftovers from sdk and toolchain make files
- introduce CONFIG_CCACHE_DIR variable
- introduce cacheclean make target

Signed-off-by: Roman Yeryomin &lt;roman@advem.lv&gt;
</content>
</entry>
<entry>
<title>build: call Host/Uninstall before wiping the host build dir</title>
<updated>2019-10-21T12:18:17Z</updated>
<author>
<name>Andre Heider</name>
</author>
<published>2019-09-28T11:10:59Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=02330a655676bbb0432e5fc30bfe7fdd21a9c9c9'/>
<id>urn:sha1:02330a655676bbb0432e5fc30bfe7fdd21a9c9c9</id>
<content type='text'>
Uninstall targets may depend on build artefacts, like `make uninstall`
or `ninja uninstall`.

Signed-off-by: Andre Heider &lt;a.heider@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: do not override CCACHE_DIR when ccache is disabled</title>
<updated>2018-07-24T13:23:05Z</updated>
<author>
<name>Jo-Philipp Wich</name>
</author>
<published>2018-07-24T13:23:05Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=991c7a4f69976f72bcee3f76d6917b224da45ea1'/>
<id>urn:sha1:991c7a4f69976f72bcee3f76d6917b224da45ea1</id>
<content type='text'>
Signed-off-by: Jo-Philipp Wich &lt;jo@mein.io&gt;
</content>
</entry>
<entry>
<title>build: pass HOSTCXX to host builds as CXX</title>
<updated>2018-04-20T11:20:25Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2018-04-20T11:04:41Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=a1c65b41cbaa12b43af7bbd40db23d482be629c8'/>
<id>urn:sha1:a1c65b41cbaa12b43af7bbd40db23d482be629c8</id>
<content type='text'>
Fixes cmake build on some systems that also have an older clang++

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>build: allow PKG_PREPARED_DEPENDS and PKG_CONFIG_DEPENDS to be changed after including package.mk</title>
<updated>2017-12-12T11:45:28Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2017-12-12T11:20:56Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=905bbc96efdef696c33d8a8bc202a7a35fe7fe35'/>
<id>urn:sha1:905bbc96efdef696c33d8a8bc202a7a35fe7fe35</id>
<content type='text'>
Reverts commit a9c96ef0ac7ac99e4928f5312f3d0d1252c98328 and replaces it
with a different approach

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