<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/adrian/Makefile, branch rft-devices</title>
<subtitle>Staging tree of Adrian Schmutzler</subtitle>
<id>https://git.openwrt.org/openwrt/staging/adrian/atom?h=rft-devices</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/adrian/atom?h=rft-devices'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/'/>
<updated>2021-01-07T01:31:18Z</updated>
<entry>
<title>build: use ccache -C for cleaning the cache</title>
<updated>2021-01-07T01:31:18Z</updated>
<author>
<name>Sven Wegener</name>
</author>
<published>2021-01-01T10:46:04Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=cd5f66652bd405872fc33ca6410dc8f9b51fee09'/>
<id>urn:sha1:cd5f66652bd405872fc33ca6410dc8f9b51fee09</id>
<content type='text'>
This keeps the configuration, like the size of the cache, and the
statistics intact. Move the removal of the cache directory to the
distclean target, but only delete the .ccache directory inside of our
build tree, as we should not mess with a user-configured external ccache
directory this destructively.

Signed-off-by: Sven Wegener &lt;sven.wegener@stealer.net&gt;
</content>
</entry>
<entry>
<title>build: replace which with Bash command built-in</title>
<updated>2021-01-04T18:32:25Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2020-12-22T09:33:02Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=c7aec47e5e3a3ff7b5fdaa11cd1e62cae6746acb'/>
<id>urn:sha1:c7aec47e5e3a3ff7b5fdaa11cd1e62cae6746acb</id>
<content type='text'>
`which` utility is not shipped by default for example on recent Arch
Linux and then any steps relying on its presence fails, like for example
following Python3 prereq build check:

 $ python3 --version
 Python 3.9.1

 $ make
 /bin/sh: line 1: which: command not found
 /bin/sh: line 1: which: command not found
 /bin/sh: line 1: which: command not found
 ...
 Checking 'python3'... failed.
 ...

Fix this by switching to Bash builtin `command` which should provide
same functionality.

Fixes: FS#3525
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>build: use CCACHE_DIR for ccache directory</title>
<updated>2021-01-01T23:31:11Z</updated>
<author>
<name>Sven Wegener</name>
</author>
<published>2021-01-01T10:43:50Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=01653fe3c765c88af23de650aebff2768dbecc32'/>
<id>urn:sha1:01653fe3c765c88af23de650aebff2768dbecc32</id>
<content type='text'>
It is being set by rules.mk with the same expression.

Signed-off-by: Sven Wegener &lt;sven.wegener@stealer.net&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/adrian/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: refactor JSON info files to `profiles.json`</title>
<updated>2020-04-03T10:17:45Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2020-03-12T22:55:41Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=07449f692ce4c4525e946401f4c3ed0cbbc8c4df'/>
<id>urn:sha1:07449f692ce4c4525e946401f4c3ed0cbbc8c4df</id>
<content type='text'>
JSON info files contain machine readable information of built profiles
and resulting images. These files were added in commit 881ed09ee6e2
("build: create JSON files containing image info").

They are useful for firmware wizards and script checking for
reproducibility.

Currently all JSON files are stored next to the built images, resulting
in up to 168 individual files for the ath79/generic target.

This patch refactors the JSON creation to store individual per image
(not per profile) files in $(BUILD_DIR)/json_info_files and create an
single overview file called `profiles.json` in the target directory.

Storing per image files and not per profile solves the problem of
parallel file writes. If a profiles sysupgrade and factory image are
finished at the same time both processes would write to the same JSON
file, resulting in randomly broken outputs.

Some target like x86/64 do not use the image code yet, resulting in
missing JSON files. If no JSON info files were created, no
`profiles.json` files is created as it would be empty anyway.

As before, this creation is enabled by default only if `BUILDBOT` is set.

Tested via buildroot &amp; ImageBuilder on ath79/generic, imx6 and x86/64.

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
[json_info_files dir handling in Make, if case refactoring]
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>build: clean menuconfig utility as part of dirclean</title>
<updated>2020-03-10T20:44:30Z</updated>
<author>
<name>Kevin Darbyshire-Bryant</name>
</author>
<published>2020-03-10T15:13:40Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=0c4d91f121b7a3660dbf433a8a6858573a86d137'/>
<id>urn:sha1:0c4d91f121b7a3660dbf433a8a6858573a86d137</id>
<content type='text'>
When sharing a common build directory between different build platforms
eg. macos v docker based linux v virtual machine, a 'make dirclean'
isn't quite enough to clean all the platform related binaries.  The
'conf' and 'mconf' aka 'make menuconfig/defconfig &amp; friends' utilities
remain.

Clean those as part of 'dirclean' so they get rebuilt for the current
platform on the next 'make'

Signed-off-by: Kevin Darbyshire-Bryant &lt;ldir@darbyshire-bryant.me.uk&gt;
</content>
</entry>
<entry>
<title>build: add buildinfo as single Makefile target</title>
<updated>2019-10-17T12:01:33Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2019-10-13T19:53:40Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=6caf437652d858e5795ee16bdaf9f0436d2488f9'/>
<id>urn:sha1:6caf437652d858e5795ee16bdaf9f0436d2488f9</id>
<content type='text'>
The prepare target was added some 11 years ago to build tools and
toolchain and was recently extended to  create buildinfo files for
reproducibility, meaning {feeds,version,config}.buildinfo.

As the buildbot workflow is more complex than the single prepare (kmod
feed insertion), prepare is only used to create those buildinfo files.
Running prepare however runs `target/compile` as well, taking time even
everything is already compiled.

Splitting this allows the buildbot to run only the `buildinfo` target
while others can still use the convenience feature `prepare`.

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
</content>
</entry>
<entry>
<title>build: fix host menu config targets using ncurses</title>
<updated>2019-09-25T10:50:24Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-09-20T12:54:56Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=965f341aa9fdb6e07d509d02a6ca188af050292a'/>
<id>urn:sha1:965f341aa9fdb6e07d509d02a6ca188af050292a</id>
<content type='text'>
On a recent Gentoo Linux installation, invoking `make menuconfig`, `make
kernel_menuconfig` or `make kernel_nconfig` in the build system fails,
whereas for example `make menuconfig` in the kernel tree alone works as
expected.

This is happening because STAGING_PREFIX is not defined when kernel's
{menu,n}config target calls pkg-config from the toolchain/host and thus
pkg-config returns an empty value, and the fallback values in the kernel
config script are applied but those are off and the linking fails.

Solution is to use system's pkg-config for all ncurses based menu config
targets in order to provide proper compiler/linker flags.

Ref: FS#2423
Cc: Thomas Albers &lt;thomas.gameiro@gmail.com&gt;
Tested-by: Stijn Tintel &lt;stijn@linux-ipv6.be&gt;
Tested-by: Eneas U de Queiroz &lt;cotequeiroz@gmail.com&gt;
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>build: add buildinfo files for reproducibility</title>
<updated>2019-08-13T08:40:36Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2019-06-13T00:24:04Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=454021581f630d5d04afeb8ff6581c1bda295c87'/>
<id>urn:sha1:454021581f630d5d04afeb8ff6581c1bda295c87</id>
<content type='text'>
generate feeds.buildinfo and version.buildinfo in build dir after
containing the feed revisions (via ./scripts/feeds list -sf) as well as
the current revision of buildroot (via ./scripts/getver.sh).

With this information it should be possible to reproduce any build,
especially the release builds.

Usage would be to move feeds.buildinfo to feeds.conf and git checkout the
revision hash of version.buildinfo.

Content of feeds.buildinfo would look similar to this:

    src-git routing https://git.openwrt.org/feed/routing.git^bf475d6
    src-git telephony https://git.openwrt.org/feed/telephony.git^470eb8e
    ...

Content of version.buildinfo would look similar to this:

    r10203+1-c12bd3a21b

Without the exact feed revision it is not possible to determine
installed package versions.

Also rename config.seed to config.buildinfo to follow the recommended
style of https://reproducible-builds.org/docs/recording/

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
</content>
</entry>
<entry>
<title>Revert faulty tree push</title>
<updated>2019-08-12T10:27:06Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2019-08-12T10:24:06Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/adrian/commit/?id=7ec092e64125b920aee6d1767dacea3f61b2fa6f'/>
<id>urn:sha1:7ec092e64125b920aee6d1767dacea3f61b2fa6f</id>
<content type='text'>
Revert "mac80211: add new minstrel_ht patches to improve probing on mt76x2" (9861050b85e5381c93d73ffdbc24c130400e0fb8)
Revert "kernel: use bulk free in kfree_skb_list to improve performance" (98b654de2e7502507b31f0fb82befbb48f9c8542)
Revert "ramips: add preliminary support for WIO ONE" (085141dc5ba5e763e1bf4c1a2fd6957160810ccc)
Revert "ramips: add preliminary support for SGE AP-MTKH7-0006 developer board" (b1db6d0539511f60bf65fbde28b16afa31180e34)
Revert "build: use config.site generated by autoconf-lean, drop hardcoded sitefiles" (363ce4329d4f6c00b4a7cb83dd1821fafc0d40ad)
Revert "toolchain: add autoconf-lean" (fdb30eed03ae56cd87078b64d9b2fac00799e783)
Revert "build: allow overriding the filename on the remote server when downloading" (6fa0e07758524eddf20c9b66dfcb55c490e1961e)

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