<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/stintel/Makefile, branch master</title>
<subtitle>Staging tree of Stijn Tintel</subtitle>
<id>https://git.openwrt.org/openwrt/staging/stintel/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/stintel/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/'/>
<updated>2026-09-22T16:18:58Z</updated>
<entry>
<title>build: write the build info files only when they change</title>
<updated>2026-09-22T16:18:58Z</updated>
<author>
<name>John Crispin</name>
</author>
<published>2026-09-22T10:39:37Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=ac4f1dd36ce8c3b3c06652780d86056d78efa642'/>
<id>urn:sha1:ac4f1dd36ce8c3b3c06652780d86056d78efa642</id>
<content type='text'>
buildversion, feedsversion and json_overview_image_info rewrite
version.buildinfo, feeds.buildinfo and profiles.json on every build. The
content is the same, but the new timestamp makes the checksum step hash
every image again, which takes 0.18 s for the OpenWrt One and grows with the
number of devices.

Write the three files to the temporary directory and copy them over the
result of the last build only when the content differs.

This takes the time of the index, image info and checksum step from 0.36 s
to 0.10 s, and the time of a full no-op build from 3.25 s to 3.00 s.

Signed-off-by: John Crispin &lt;john@phrozen.org&gt;
</content>
</entry>
<entry>
<title>build: run diffconfig only when the configuration changed</title>
<updated>2026-09-22T16:18:58Z</updated>
<author>
<name>John Crispin</name>
</author>
<published>2026-09-20T16:28:44Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=af60df881d1e5e221ecdf1e64444366c9ae9f603'/>
<id>urn:sha1:af60df881d1e5e221ecdf1e64444366c9ae9f603</id>
<content type='text'>
diffconfig.sh runs the configuration parser over the whole tree twice,
which takes 2 s of every build, and buildinfo runs it on each build.
The result depends only on .config and the Kconfig files.

Skip it while neither is newer than the file it wrote last time.
include/toplevel.mk guards the sync check of .config the same way.

This alone changes nothing on a parallel build, because buildinfo runs
beside the compile stamps. It pays once the other phases become shorter.

Signed-off-by: John Crispin &lt;john@phrozen.org&gt;
</content>
</entry>
<entry>
<title>build: create the index, image info and checksums in one make call</title>
<updated>2026-09-22T16:18:58Z</updated>
<author>
<name>John Crispin</name>
</author>
<published>2026-09-18T18:43:32Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=6b009ee3eafe1dd1651ef49eb73180e94a4ee3e9'/>
<id>urn:sha1:6b009ee3eafe1dd1651ef49eb73180e94a4ee3e9</id>
<content type='text'>
world runs package/index, json_overview_image_info and checksum as
three separate calls of the top-level Makefile, and each call parses it
again. The calls run without -j, so one call with all three goals runs
them in the same order.

Signed-off-by: John Crispin &lt;john@phrozen.org&gt;
</content>
</entry>
<entry>
<title>build: include tests/Makefile if available</title>
<updated>2024-06-17T15:51:31Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2024-06-06T17:28:52Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=a8ff0c1b7e5aefb8bcd31e0eeb82d2c11399223f'/>
<id>urn:sha1:a8ff0c1b7e5aefb8bcd31e0eeb82d2c11399223f</id>
<content type='text'>
Testing OpenWrt is important, and there is a test suite in the making.
For maximum convenience and minimal CI over-usage, make it simple to run
tests locally. The main Makefile now attempts to include
`tests/Makefile` and silently fails if it doesn't.

While the test suite[1] is still young, it provides good examples of how
to test things around OpenWrt: starting with shell scripts using
`bats`[2], followed by QEMU tests, and finally real device tests using
LabGrid[3]. This could lead to the creation of the best OpenWrt version
yet.

Please consult the `openwrt-tests.git` README.md for details on the
setup. Once installed you may run commands like the following:

* make tests/shell  # run shell tests
* make tests/x86-64 # run  and test x86/64 in QEMU

[1]: http://github.com/aparcar/openwrt-tests/
[2]: https://bats-core.readthedocs.io
[3]: https://labgrid.readthedocs.io

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
Link: https://github.com/openwrt/openwrt/pull/15647
Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: fix pkg-config detection when inside of a nix-shell</title>
<updated>2023-11-02T19:26:32Z</updated>
<author>
<name>Sandro Jäckel</name>
</author>
<published>2023-11-01T15:49:20Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=86ca7199dfb132042ce3110acef23d74f4ef14a7'/>
<id>urn:sha1:86ca7199dfb132042ce3110acef23d74f4ef14a7</id>
<content type='text'>
The output of command_all when inside a nix-shell looks like the below
where /usr does not match:

 ➜ scripts/command_all.sh pkg-config
/nix/store/ifr6srqgpvygd5vp14748d109ri31isv-pkg-config-wrapper-0.29.2/bin/pkg-config

Signed-off-by: Sandro Jäckel &lt;sandro.jaeckel@gmail.com&gt;
</content>
</entry>
<entry>
<title>treewide: add ORIG_PATH variable</title>
<updated>2023-06-05T06:31:47Z</updated>
<author>
<name>Michael Pratt</name>
</author>
<published>2023-05-25T06:31:17Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=d87a8aa148ddf93b199a759deb088fff73787025'/>
<id>urn:sha1:d87a8aa148ddf93b199a759deb088fff73787025</id>
<content type='text'>
Add a variable that stores the original value of $PATH
in the host system's shell, before Make alters it.

This can be useful for when it is necessary
to ignore symlinks and programs made by the build system.

Define this new variable before all instances of
'export PATH:=' or similar.

Signed-off-by: Michael Pratt &lt;mcpratt@pm.me&gt;
</content>
</entry>
<entry>
<title>treewide: derive host and hostpkg path from STAGING_DIR</title>
<updated>2023-01-09T20:33:20Z</updated>
<author>
<name>Christian Marangi</name>
</author>
<published>2022-12-02T19:56:12Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=2a3283643ccf77b55d67c7a3f96d40576227499c'/>
<id>urn:sha1:2a3283643ccf77b55d67c7a3f96d40576227499c</id>
<content type='text'>
STAGING_DIR may be provided from command line. We currently hardcoded
STAGING_DIR_HOST and STAGING_DIR_HOSTPKG to the default location but we
currently have some relocatable patch that derive the path from
STAGING_DIR.

Fix this and correctly derive STAGING_DIR_HOST and STAGING_DIR_HOSTPKG
from STAGING_DIR.

The intention is to fix inconsistency from the relocatable patch and the
use of STAGING_DIR_HOST that is always hardcoded.
This with a wrong configuration may end up in broken state with some
host tools expecing a PATH from STAGING_DIR and others using library
from the default staging_dir/host path.

To save downstream project the original implementation is saved while
fixing the inconsistency between patch and .mk.

Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
</content>
</entry>
<entry>
<title>Makefile: fix stray \ warnings with grep-3.8</title>
<updated>2022-09-27T14:45:08Z</updated>
<author>
<name>Nick Hainke</name>
</author>
<published>2022-09-11T06:15:52Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=a29d3bc48c40c6a2a93ae1806bea2ac26455cdbb'/>
<id>urn:sha1:a29d3bc48c40c6a2a93ae1806bea2ac26455cdbb</id>
<content type='text'>
We simply grep for "/usr". So no need for "-E" or "\/". Furthermore, in
the new grep versions this creates warnings.

As written in the grep-3.8 announcement:
  Regular expressions with stray backslashes now cause warnings, as
  their unspecified behavior can lead to unexpected results.
  For example, '\a' and 'a' are not always equivalent
  &lt;https://bugs.gnu.org/39678&gt;.

Fixes warnings in the form of:
  grep: warning: stray \ before /

Signed-off-by: Nick Hainke &lt;vincent@systemli.org&gt;
</content>
</entry>
<entry>
<title>Makefile: replace head call with grep's -m</title>
<updated>2022-09-10T13:42:36Z</updated>
<author>
<name>Rosen Penev</name>
</author>
<published>2022-08-20T21:12:32Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=22b7bd6b1355baf7220136b6bd8277a321b70c39'/>
<id>urn:sha1:22b7bd6b1355baf7220136b6bd8277a321b70c39</id>
<content type='text'>
head is not necessary here.

Signed-off-by: Rosen Penev &lt;rosenp@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: don't remove BUILD_LOG_DIR in _clean</title>
<updated>2022-04-30T21:56:43Z</updated>
<author>
<name>Huangbin Zhan</name>
</author>
<published>2022-04-24T01:58:25Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/stintel/commit/?id=aeaa816cd2bd22de165c71a41d8d198a9235e971'/>
<id>urn:sha1:aeaa816cd2bd22de165c71a41d8d198a9235e971</id>
<content type='text'>
targetclean should not remove BUILD_LOG

Fixes: db34b93331e9 (add a version that can be bumped to force toolchain/target rebuild)
Signed-off-by: Huangbin Zhan &lt;zhanhb88@gmail.com&gt;
</content>
</entry>
</feed>
