[LEDE-DEV] [PATCH 00/15] Metadata generator refactoring, cleanup and PROVIDES improvements
Matthias Schiffer
mschiffer at universe-factory.net
Mon Jan 8 06:52:13 PST 2018
When attempting to fix FS#837, I decided to treat our metadata generator to
a greater refactoring, which resulted in this patchset. FS#837 is fixed in
patch 13.
I also removed two seemingly obsolete features, "preconfig" and "package
features", which are not used by any package in the OpenWrt/LEDE base or
our default feeds.
The changes in this patchset also improve dependency diagnostics and
clearly separate between build depends (on source packages) and runtime
depends (on binary packages, implying build depends). This requires some
fixes in package Makefiles with broken dependencies (patch 10, [1], [2]).
There are also broken runtime depends in many feed packages, which I did
not fix, but which will be shown more prominently during prepare-tmpinfo
now. I'm not sure what the best way to handle such broken dependencies is,
as they might also be caused by missing feeds, e.g. LuCI depending on
telephony packages.
- Keep the warning, but try to build the packages as before (current
solution in this patchset)?
- Hide the warning again (old state)?
- Ignore packages with missing build dependencies altogether (just show a
warning in the metadata generators)?
As hinted in patch 15, I have further refactoring in mind, but let's try to
get this set reviewed and committed first...
Regards,
Matthias
[1] https://github.com/openwrt/packages/pull/5370
[2] https://github.com/openwrt-routing/packages/pull/345
Matthias Schiffer (15):
metadata: remove 'base-files' special case
metadata: make srcpackage extensible
metadata: move 'buildtypes' from binary to source packages
metadata: move 'builddepends' from binary to source packages
metadata: interate over source packages when generating Makefile
metadata: change pkg->{src} field to hold a reference
metadata: replace %subdir hash with a path field in source packages
metadata: remove redundant fields from package hash
build: remove package preconfig feature
treewide: fix build depends to refer to source package names
metadata: handle target build depends together with host build depends
metadata: simplify generation of build depends from runtime depends
metadata: always resolve dependencies through provides list
build: remove obsolete "package feature" feature
include/package-dumpinfo.mk: don't duplicate source package
information for every binary package
include/autotools.mk | 4 +-
include/nls.mk | 2 +-
include/package-dumpinfo.mk | 53 +----
package/Makefile | 3 -
package/network/config/ltq-adsl-app/Makefile | 2 +-
package/network/config/ltq-vdsl-app/Makefile | 2 +-
scripts/feeds | 28 +--
scripts/metadata.pm | 101 +++------
scripts/package-metadata.pl | 299 +++++++++------------------
9 files changed, 158 insertions(+), 336 deletions(-)
--
2.15.1
More information about the Lede-dev
mailing list