<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/nbd/include/package-defaults.mk, branch master</title>
<subtitle>Felix Fietkaus staging tree</subtitle>
<id>https://git-03.infra.openwrt.org/openwrt/staging/nbd/atom?h=master</id>
<link rel='self' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/'/>
<updated>2025-10-20T11:50:15Z</updated>
<entry>
<title>build: handle --root feeds script feature</title>
<updated>2025-10-20T11:50:15Z</updated>
<author>
<name>Christian Marangi</name>
</author>
<published>2025-10-19T18:43:09Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=330d17f52d3cbe50802101966368c45e1d822453'/>
<id>urn:sha1:330d17f52d3cbe50802101966368c45e1d822453</id>
<content type='text'>
Rework the package SOURCE entry handling to account for the --root feeds
script feature.

Move the SOURCE entry string manipulation logic outside package-defaults.mk
in package.mk and limit only to non DUMP scenario to not pollute the .mk
too much.

Restructure the previous logic and add a new additional condition.
If we detect the package comes from a feed, replace any feed path that
have the _root prefix to the feed name with the non-root variant (the
feeds script create a symbolic link to it) and point the package SOURCE
entry to what the symbolic link points to.

Example:
Feed link: feeds/base_root/package -&gt; feeds/base
Package: feeds/base_root/package/system/uci -&gt; feeds/base/system/uci

Link: https://github.com/openwrt/openwrt/pull/20459
Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: add support for PKG_SUBDIRS variable</title>
<updated>2024-07-08T06:49:42Z</updated>
<author>
<name>Michael Pratt</name>
</author>
<published>2024-06-20T04:23:39Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=3de19697fdd5baee3df9c67fdec48fe48e673894'/>
<id>urn:sha1:3de19697fdd5baee3df9c67fdec48fe48e673894</id>
<content type='text'>
Add support for overriding the SUBDIRS variable while invoking Make
by defining it after Make in the command line.

This is useful for builds that have previously patched out
the building of certain subdirectories in projects
that use recursive and independent Makefiles,
for example, to block the building of docs or test suites.

The wildcard function is used in the case of there being
subdirectories within any of the subdirectories,
for example, in the building of gengetopt,
in order to avoid the problem where Make will attempt
to execute a Makefile in a subdirectory that does not exist
within the subdirectory it is currently running from
because it really exists at the top-level, or one that exists
within one of the subdirectories when ran from top-level.
There are also cases where the Makefiles in the subdirectories
have the recursive building rules even though there are no more
subdirectories beyond that point, for example, with gnulib.

Signed-off-by: Michael Pratt &lt;mcpratt@pm.me&gt;
Link: https://github.com/openwrt/openwrt/pull/15853
Signed-off-by: Robert Marko &lt;robimarko@gmail.com&gt;
</content>
</entry>
<entry>
<title>treewide: use APK compatible version schema</title>
<updated>2024-03-22T21:14:22Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2024-03-17T17:43:10Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=e8725a932e16eaf6ec51add8c084d959cbe32ff2'/>
<id>urn:sha1:e8725a932e16eaf6ec51add8c084d959cbe32ff2</id>
<content type='text'>
Different from OPKG, APK uses a deterministic version schema which chips
the version into chunks and compares them individually. This enforces a
certain schema which was previously entirely flexible.

 - Releases are added at the very and end prefixed with an `r` like
`1.2.3-r3`.
- Hashes are prefixed with a `~` like `1.2.3~abc123`.
- Dates become semantic versions, like `2024.04.01`
- Extra tags are possible like `_git`, `_alpha` and more.

For full details see the APK test list:
https://gitlab.alpinelinux.org/alpine/apk-tools/-/blob/master/test/version.data

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
</content>
</entry>
<entry>
<title>build: align SOURCE path for build system and SDK</title>
<updated>2024-02-17T13:45:35Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2024-02-12T15:59:50Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=cbc7393294960861a50681ef84914858748f5c6b'/>
<id>urn:sha1:cbc7393294960861a50681ef84914858748f5c6b</id>
<content type='text'>
Building a package in the build system or the SDK results in different
values for the `SOURCE` property, it's either `packages/&lt;package name&gt;`
or `feeds/base/&lt;package name&gt;`. The reason is that the SDK handles
`openwrt.git` as an external feed called while the build system contains
the *base* packages directly.

Since packages created with either method are (ideally) the same (bit
for bit), align the content of SOURCE. To do so this commit creates a
symlink from `feeds/base` to `$(TOPDIR)/package` and adopts the SOURCE
when building from inside the build system.

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
</content>
</entry>
<entry>
<title>Revert "build: align SOURCE path for build system and SDK"</title>
<updated>2024-02-12T19:03:17Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2024-02-12T19:02:48Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=3a67c5b662c0e388e776fe0c496d12b082825c55'/>
<id>urn:sha1:3a67c5b662c0e388e776fe0c496d12b082825c55</id>
<content type='text'>
This reverts commit 131e41614dcfae1f995e55330ada6573ca244ba3.
Sadly it makes menuconfig fail with
tmp/.config-package.in:171: glob failed: No files found "feeds/base/utils/busybox/Config.in"
make: *** [/usr/src/openwrt/include/toplevel.mk:136: menuconfig] Error 1

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>build: align SOURCE path for build system and SDK</title>
<updated>2024-02-12T16:06:41Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2024-02-12T15:59:50Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=131e41614dcfae1f995e55330ada6573ca244ba3'/>
<id>urn:sha1:131e41614dcfae1f995e55330ada6573ca244ba3</id>
<content type='text'>
Building a package in the build system or the SDK results in different
values for the `SOURCE` property, it's either `packages/&lt;package name&gt;`
or `feeds/base/&lt;package name&gt;`. The reason is that the SDK handles
`openwrt.git` as an external feed called while the build system contains
the *base* packages directly.

Since packages created with either method are (ideally) the same (bit
for bit), align the content of SOURCE. To do so this commit creates a
symlink from `feeds/base` to `$(TOPDIR)/package` and adopts the SOURCE
when building from inside the build system.

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
</content>
</entry>
<entry>
<title>packages: add PKG_URL variable</title>
<updated>2024-01-08T13:06:38Z</updated>
<author>
<name>Paul Spooren</name>
</author>
<published>2024-01-06T17:50:00Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=e32edf712b7c43e25b4bec40fedfd948a0ed5bd6'/>
<id>urn:sha1:e32edf712b7c43e25b4bec40fedfd948a0ed5bd6</id>
<content type='text'>
Using PKG_URL one may set the URL for all sub packages, which is usually
shared anyway. Future packages should only use PKG_URL instead of adding
it per sub-package.

Signed-off-by: Paul Spooren &lt;mail@aparcar.org&gt;
</content>
</entry>
<entry>
<title>build: disable automake dependency tracking</title>
<updated>2023-03-13T21:53:41Z</updated>
<author>
<name>Michael Pratt</name>
</author>
<published>2022-08-25T02:32:13Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=129be247a6a0cb11132691bdf27104f48ab08530'/>
<id>urn:sha1:129be247a6a0cb11132691bdf27104f48ab08530</id>
<content type='text'>
Recent versions of Automake
have changed dependency tracking significantly
(reference commit below)
causing breakage in some package builds
when using newer Automake with packages that need autoreconf
that were bootstrapped with an old version of Automake.

Those changes cause a great inconsistency between packages over time
where some packages may or may not use this feature,
and may or may not update the .ac and .am files
to work with the new methods.
This problem might exist in many packages
where autoreconf is not currently required,
but would cause build failure if autoreconf is used.

Fortunately, this feature is practically useless
for the purposes of Openwrt and the average developer,
so we can disable it.

GNU Automake manual states in part:

  "Because dependencies are only computed as a side-effect of compilation...
   no dependency information exists the first time a package is built...
   dependency tracking is completely useless for one-time builds..."

A nice side-effect is that build times are slightly faster.

Ref: 6a675ef17edf7109da189f5ae70e2dc6b7665896 (automake.git)
Signed-off-by: Michael Pratt &lt;mcpratt@pm.me&gt;
</content>
</entry>
<entry>
<title>tree-wide: Do not use package librt and libpthread</title>
<updated>2022-12-29T17:50:24Z</updated>
<author>
<name>Hauke Mehrtens</name>
</author>
<published>2022-12-18T16:32:46Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/nbd/commit/?id=f12bad6c19df4ad10b274e0c1e10bcdaaccf96f3'/>
<id>urn:sha1:f12bad6c19df4ad10b274e0c1e10bcdaaccf96f3</id>
<content type='text'>
The libraries libpthread, libdl, libutil, libanl have been integrated
into the libc library in version 2.34. it is not needed to explicitly
link them any more.

Most of the functions have been moved from the librt.so into libc.so
some time ago already.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&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-03.infra.openwrt.org/openwrt/staging/nbd/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>
</feed>
