aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/metadata.pm
Commit message (Collapse)AuthorAgeFilesLines
* base-files, metadata: support additional group membershipDaniel Golle2021-10-281-1/+7
| | | | | | | | | | | | Some packages may require additional group membership for the system user added by that package. Allow defining additional groups as third member of the ':'-separated tuple, allowing to specify multiple ','-separated groups with optional GID. Example: USERID:=foouser=1000:foogroup=1000:addg1=1001,addg2=1002,addg3 Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* scripts: store maintainer in package metadataPaul Spooren2021-09-231-0/+1
| | | | | | | The maintainer could be usable for downstream tooling, so start storing it in the metadata. Signed-off-by: Paul Spooren <mail@aparcar.org>
* build: drop ABI version from metadataFelix Fietkau2021-02-141-1/+0
| | | | | | | Preparation for supporting dynamic ABI versions that depend on the runtime configuration. Read the suffix from the staging dir pkginfo version files. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: add option to mark devices as BROKENAdrian Schmutzler2020-07-301-0/+4
| | | | | | | | | | | By specifying "BROKEN := 1" or "BROKEN := y" for a device, it will be hidden (and deselected) by default. By that, it provides a stronger option to "disable" a device beyond just using DEFAULT := n. To make these devices visible, just enable the BROKEN option in developer settings as already implemented for targets and packages. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* build: allow overriding default selection state for devicesJonas Gorski2019-08-131-1/+3
| | | | | | | | | | | | | | | | | | | Allow overriding the default selection state for Devices, similar to setting a default for packages. E.g. by setting DEFAULT to n, they won't be selected by default anymore when enabling all device in the multi device profile. This allows preventing images being built by the default config for known broken devices, devices without enough RAM/flash, or devices not working with a certain kernel versions. This does not prevent the devices from being manually selected or images being built by the ImageBuilder. These devices often still have worth with a reduced package-set, or as a device for regression testing, when no better device is available. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* build: add a config option for enabling a testing version of the target kernelFelix Fietkau2019-05-111-0/+1
| | | | | | | If the target supports a newer kernel version that is not used by default yet, it can be enabled with this option Signed-off-by: Felix Fietkau <nbd@nbd.name>
* IB: include SUPPORTED_DEVICES in 'make info' outputDaniel Golle2019-03-111-0/+2
| | | | Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ib: display whether profile comes with image metadataDaniel Golle2019-03-061-0/+2
| | | | | | | | Having image metadata (and signature) appended is a condition for semi-automated sysupgrade, hence IB needs to be able to tell which images will end up with metadata. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* build: expose ABI version in .packageauxvarsJo-Philipp Wich2019-01-191-0/+1
| | | | | | | Subdequent commits need this information to resolve the ABI version when computing binary ipk dependencies. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* scripts/metadata.pm: avoid adding dup names in provides listYousong Zhou2018-09-091-0/+1
| | | | | | | | | | | | The need arises from building Open vSwitch kernel datapath modules, e.g. - kmod-openvswitch from Linux upstream - kmod-openvswitch-intree from openvswitch source code where both provides virtual package "kmod-openvswitch" for userspace packages to select and depend on Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* scripts/metadata.pm: allow group-only Require-User specsMatthias Schiffer2018-02-261-2/+4
| | | | | | | | /lib/functions.sh can deal with Require-User specifications that only contain a group, but no user. Adjust metadata.pm to allow such specifications as well. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* build: remove obsolete "package feature" featureMatthias Schiffer2018-01-131-22/+1
| | | | | | | | Package "features" seem to be unused for some time. In any case, custom Config.in snippets and package PROVIDES are a much more flexible way to express similar options. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: scripts/feeds: distinguish between source and binary packages, ↵Matthias Schiffer2018-01-131-0/+2
| | | | | | | | | | resolve virtual dependencies Properly resolve build depends to source packages and runtime depends to binary packages. Dependencies on virtual packages are resolved to the first provider now. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: always resolve dependencies through provides listMatthias Schiffer2018-01-131-7/+8
| | | | | | | | | | | Instead of adding virtual packages to the normal package list, keep a separate list for provides, make each package provide itself, and resolve all dependencies through this list. This allows to use PROVIDES to replace existing packages. Fixes FS#837. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* build: remove package preconfig featureMatthias Schiffer2018-01-131-19/+1
| | | | | | | This feature has been unused for years, and its scope is too limited to be actually useful. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: remove redundant fields from package hashMatthias Schiffer2018-01-131-3/+0
| | | | Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: replace %subdir hash with a path field in source packagesMatthias Schiffer2018-01-131-9/+3
| | | | | | | Every single reference to subdir was concatenated with the source package name, so it makes sense to store the concatenated value instead. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: change pkg->{src} field to hold a referenceMatthias Schiffer2018-01-131-26/+25
| | | | | | | | We often want to access fields of a source packages through pkg->{src}. Allow accessing them directly instead of resolving the source hash through srcpackages. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: interate over source packages when generating MakefileMatthias Schiffer2018-01-131-0/+1
| | | | | | | | | | | | All build dependencies are between source packages. Interating over source rather than binary packages simplifies parts of the code and prepares further improvement. As a side effect, this changes the implicit default variant of a few packages (the first defined is used now instead of the lexicographically first). Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: move 'builddepends' from binary to source packagesMatthias Schiffer2018-01-131-3/+3
| | | | Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: move 'buildtypes' from binary to source packagesMatthias Schiffer2018-01-131-2/+2
| | | | | | | Build types are a property of source rather than binary packages. This is a preparation for followup cleanup. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* metadata: make srcpackage extensibleMatthias Schiffer2018-01-131-2/+4
| | | | | | | Turn the srcpackage values into hashes to allow storing more information than just binary package names. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* scripts/package-metadata.pl: parse and validate field Require-UserYousong Zhou2017-06-181-1/+71
| | | | | | | | | | | | | The script will now detect uid/gid collision and can generate a table of current allocation ./scripts/package-metadata.pl usergroup tmp/.packageinfo \ | sort -k 1,1r -k 3,3n \ | column -t This should ensure that no collision will happen for each single build Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* scripts/package-metadata.pl: fix kmod pakage dependencies within the SDKFelix Fietkau2016-07-071-3/+3
| | | | | | | | | | Instead of ignoring all metadata for package/kernel/linux, process it and only suppress emitting config data to tmp/.config-package.in This ensures that packages that select kmod-* packages can inherit their depdendencies. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: implement support for selecting multiple device profilesFelix Fietkau2016-06-071-0/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: remove profile kernel/build system config override supportFelix Fietkau2016-05-151-2/+0
| | | | | | It has been unused for years Signed-off-by: Felix Fietkau <nbd@nbd.name>
* scripts/metadata.pl: add support for generating profile make code for the ↵Felix Fietkau2016-05-131-0/+5
| | | | | | image builder Signed-off-by: Felix Fietkau <nbd@nbd.name>
* metadata.pl: fix target profile sorting checkFelix Fietkau2016-05-111-3/+3
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* metadata.pl: add support for forcing sorting of profilesFelix Fietkau2016-05-111-1/+6
| | | | | | | Used to mix device profiles (specified in the image makefile) with regular target profiles. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* target.mk: remove the unused Target-Path fieldFelix Fietkau2016-05-111-1/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* scripts: remove "Package-Subdir" metadata handlingJo-Philipp Wich2016-04-131-1/+0
| | | | Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* scripts: metadata: use the new "Repository" fieldJo-Philipp Wich2016-04-131-0/+1
| | | | | | Switch to the new "Repository" metadata field to populate tmp/.packagesubdirs Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* include: group kmod ipk files into a "kernel" subdirectoryJo-Philipp Wich2016-01-241-1/+1
| | | | | | | | | | This is useful to just use the kmods from an official build while supplying base packages from a custom feed or the other way around; for just overriding the kmods with a local repo while using official repos for the rest. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 48475
* scripts/metadata.pl: add support for ignoring source packages when ↵Felix Fietkau2016-01-101-1/+4
| | | | | | | | generating metadata Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48170
* scripts/metadata.pm: save target makefile namesFelix Fietkau2015-03-151-0/+3
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 44780
* scripts/metadata.pl: move parse_target_metadata() to metadata.pmFelix Fietkau2015-03-151-1/+85
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 44776
* build: propagate override information to .config fileJohn Crispin2015-02-091-1/+10
| | | | | | | | | | | | | | With this change, override information is now parsed from the metadata and put in the %packages hash. A new hash - %overrides - is created and exported, to be used during the .config-package.in generation. If an override is detected, a new option CONFIG_OVERRIDE_PKGS will be created in the .config, and will contain a space-separated list of all the overridden packages. Signed-off-by: Mathieu Olivari <mathieu@qca.qualcomm.com> SVN-Revision: 44336
* generate list of license information for packagesJohn Crispin2014-10-261-0/+2
| | | | | | | | | | | | | Many packages define already metadata about their license (PKG_LICENSE), but this is only included in the ipk files. This change allows to create the information also on the build-host, to get an overview on the used licenses. In the full list, also all packages without this info are shown Signed-off-by: Thomas Langer <thomas.langer@lantiq.com> SVN-Revision: 43070
* build: add support for declaring package CONFLICTS which only affect ↵Felix Fietkau2014-10-051-0/+1
| | | | | | | | selecting built-in packages Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 42770
* build: allow packages with build variants to explicitly select a default variantFelix Fietkau2014-09-231-0/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 42654
* build: introduce per feed repository supportJo-Philipp Wich2014-08-051-0/+1
| | | | | | | | | This changeset implements a new menuconfig option to generate separate repositories for each enabled package feed instead of one monolithic one. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 42002
* scripts: change metadata.pm and metadata.pl to not emit "default m if ALL" ↵Jo-Philipp Wich2013-07-181-1/+0
| | | | | | Kconfig instructions for hidden packages SVN-Revision: 37397
* add support for hidden packages that get selected/built but do not show up ↵Felix Fietkau2011-07-021-0/+1
| | | | | | in menuconfig SVN-Revision: 27344
* add a new package metadata variable MDEPENDS for specifying local menuconfig ↵Felix Fietkau2011-04-051-0/+2
| | | | | | dependencies that do not propagate to other packages SVN-Revision: 26491
* metadata: allow build variants to contain "-"Felix Fietkau2010-01-231-1/+1
| | | | SVN-Revision: 19284
* build system: introduce a new feature called build variants. it allows ↵Felix Fietkau2009-11-101-0/+1
| | | | | | building a package multiple times in one pass with different build dirs, based on the same build settings. replaces templating hacks like the one used in the hostapd package SVN-Revision: 18357
* add experimental support for a new menuconfig submenu "Package features". ↵Felix Fietkau2009-10-171-1/+23
| | | | | | allows selection between multiple packages providing the same feature, which affects dependencies of other packages. will be used e.g. for choosing between DirectFB and X.org for libraries like GTK2 SVN-Revision: 18056
* metadata.pl: do not strip whitespaces from multiline dataFelix Fietkau2009-10-021-1/+0
| | | | SVN-Revision: 17827
* scripts/feeds: fix a warning (#4474)Felix Fietkau2009-05-041-0/+1
| | | | SVN-Revision: 15600
* move host build in packages into a separate namespace: ↵Felix Fietkau2009-03-171-0/+3
| | | | | | package/<name>/host/<target> this allows dependencies between host and target packages, and saves unnecessary host builds for packages that contain both variants SVN-Revision: 14905