build: move package list generation to target_config_lib.lua, fix precedence
The precedence of different package lists was broken since #1876, disallowing removal of GLUON_FEATURES packages via GLUON_SITE_PACKAGES. Including all package selections, both implicit defaults and explicit handling in Gluon, the order of precedence is now the following: 1. OpenWrt defaults (including target-specific defaults) 2. Device-specific packages from OpenWrt 3. Generic default packages (from target/generic) 4. Target default packages (target/$(GLUON_TARGET)) 5. Removal of opkg for tiny targets 6. Packages derived from GLUON_FEATURES + GLUON_FEATURES_$(class) 7. GLUON_SITE_PACKAGES 8. GLUON_SITE_PACKAGES_$(class) 9. Device-specific packages from target/$(GLUON_TARGET) 10. Device-specific packages from GLUON_$(device)_SITE_PACKAGES This also contains various pieces of cleanup: - No hardcoded order of device classes for target_config.lua arguments anymore (in fact, the Makefile doesn't know anything about device classes now) - target_conifg_lib.lua only hardcodes the fallback class for x86, no other occurences of specific class names - Feature -> package list mapping is moved from Makefile to the Lua code as well (still implemented in Shell though)
Showing
- Makefile 6 additions, 36 deletionsMakefile
- scripts/copy_output.lua 3 additions, 2 deletionsscripts/copy_output.lua
- scripts/target_config_lib.lua 114 additions, 47 deletionsscripts/target_config_lib.lua
- scripts/target_lib.lua 1 addition, 6 deletionsscripts/target_lib.lua
- targets/x86-geode 0 additions, 2 deletionstargets/x86-geode
- targets/x86.inc 0 additions, 2 deletionstargets/x86.inc
Please register or sign in to comment