Commit Graph

131 Commits

Author SHA1 Message Date
Sven Roederer
f45b5da0bd scripts: add new script target_config_profile.lua
this script creates a file $GLUON_TMPDIR/§TARGET with following syntax:

> board1: "packages"
> board2: "packages"
> ...

this list can be used to build the final images with the imagebuilder
2020-03-06 01:00:44 +01:00
Sven Roederer
15b7036f20 scripts/target_config_lib.lua: improve debug 2020-03-06 01:00:44 +01:00
Sven Roederer
2f3396d1eb scripts/target_config_lib.lua: add new function get_pkglist()
it returns a table with all boards of a target and a list of packages
for each board.
2020-03-06 01:00:44 +01:00
Sven Roederer
e2e7ecb4c8 scrtips/target_config_lib: add new function devpkgs(dev)
this moves the transformation of "dev.options.packages" and
"site_packages(dev.image)" to a string ps packages from the
main code.
As the main-code gets a single string with all packages, it
does not need to evaluate the pkg-sources again.
2020-03-06 01:00:44 +01:00
Sven Roederer
d40b1e5916 scripts/target_config_lib.lua: add debug-output for profile and package-lists 2020-03-06 01:00:44 +01:00
Sven Roederer
7431b3916c scripts/target_config_lib.lua: make arg[3] optional
by defaulting to nil
2020-03-06 01:00:44 +01:00
Sven Roederer
59d1653be6 scripts/target_config_check.lua:add some debug 2020-03-06 01:00:44 +01:00
Sven Roederer
ef947b4a51 scripts: implement parsing of "EXTRA_PACKAGES"
This will just build packages, without adding them into an image.
2020-03-06 01:00:44 +01:00
Sven Roederer
8e318a4d42 scripts: improve debug-output 2020-03-06 01:00:44 +01:00
Sven Roederer
4653e49b56 scripts/target_config_lib.lua: rename extra_packages to default_packages 2020-03-06 01:00:44 +01:00
Sven Roederer
3f05204c3b scripts: improve debug-output 2020-03-06 01:00:44 +01:00
Sven Roederer
b9ec073a07 Revert "scripts: mark lib.target_packages as "m" modular"
This reverts commit 4219f0e9af9ee7fec74b31b48c7bd615eec6847f.
2020-03-06 01:00:44 +01:00
Sven Roederer
63aff3bd96 scripts: mark lib.target_packages as "m" modular 2020-03-06 01:00:44 +01:00
Sven Roederer
cb7f7fbb66 scripts: improve debug-output of site_packages(image) 2020-03-06 01:00:44 +01:00
Sven Roederer
ef5263724f scripts: add F.config_m(...) as template from F.config() 2020-03-06 01:00:44 +01:00
Sven Roederer
21291dc412 scripts: improve debug-output of F.config(...) 2020-03-06 01:00:44 +01:00
Sven Roederer
b40f7a483c debug: add some debug to the scripts 2020-03-06 01:00:44 +01:00
Sven Roederer
7ef25ce4ca extend FOREIGN_BUILD to include different target/generic 2020-03-06 00:45:43 +01:00
Sven Roederer
a4e0b26470 gluon: (partial) add FLAG "GLUON_FOREIGN" to make the framework usable for other types of firmwares
ignored changes in MAkefile

defining this FLAG (to "1") disables / skips some things

* including gluon-core packages
* strict inclusion of some packages
* per device sepecific kernel build
* a gluon specific target/generic_gluon will be considered
2020-03-06 00:43:28 +01:00
Jan-Tarek Butt
a2ced263ab
build: add make targets lint, lint-sh, lint-lua
[Matthias Schiffer: minor script improvements]
2019-12-29 15:18:50 +01:00
Jan-Tarek Butt
dd76e0898d
treewide: solve shellcheck warnings 2019-12-14 18:35:11 +01:00
Matthias Schiffer
78054cddbf
scripts: target_config_lib: fix inclusion of device-specific packages from site.mk
Fixes: 071cf7b20f ("Switch to Lua for target definitions")
2019-09-14 13:46:56 +02:00
Christof Schulze
afa3e89890 scripts/update.sh: add verbose error message when commit cannot be found (#1794)
This displays the branch, repo and commitID that was attempted to update to but
failed. Users then can compare this output to the configuration they meant to
activate in modules and hopefully better find their typos.
2019-08-21 23:48:06 +02:00
Matthias Schiffer
09a09d634a
scripts: avoid global variables in target handler scripts 2019-06-18 01:34:45 +02:00
Matthias Schiffer
c9f1fdf6ee
scripts: check_site: use setfenv to keep global environment clean
This is now much nicer to luacheck.
2019-06-17 20:36:35 +02:00
bobcanthelpyou
4249d65af7 treewide: fix luacheck warnings 2019-06-16 22:51:53 +02:00
Matthias Schiffer
912490c026
Add GLUON_DEPRECATED flag
This new build flag is mandatory for now (it may default to 0 in a future
Gluon version). It may be set to the following values:

* 0 - Do not build any images for deprecated devices.
* upgrade - Only build sysupgrade images for deprecated devices.
* full - Build both sysupgrade and factory images for deprecated devices.

"Other" images are handled like factory images, as they are also used for
the initial installation of Gluon on a device.
2019-06-15 23:34:07 +02:00
Matthias Schiffer
071cf7b20f
Switch to Lua for target definitions
The old bash-based parsing code was way too complex. Replace it with Lua.
2019-06-15 23:34:07 +02:00
Matthias Schiffer
16a78b4e9e
scripts/check_site.lua: use new format() function to simplify var_error() 2019-04-28 19:17:47 +02:00
Matthias Schiffer
5abddd2976
scripts/check_site.lua: fix array_to_string with non-string/number array elements
Fixes need_one_of() with boolean elements.
2019-04-28 19:16:28 +02:00
Martin Weinelt
423aafbd29 gluon-core: improve channel and add chanlist validation 2019-04-28 18:17:40 +02:00
bobcanthelpyou
fe521db441 build: add site check for obsolete settings (#1702) 2019-04-28 14:38:08 +02:00
Petr Štetiar
9dc1ac7f58
build: replace hardcoded paths with overridable variables
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-22 22:00:45 +02:00
bobcanthelpyou
2c4f022994 build: rename DEVICES to GLUON_DEVICES (#1686) 2019-04-12 01:05:04 +02:00
David Bauer
c1b9ea2d9c gluon-scheduled-domain-switch: add package (#1555)
This package allows to automatically switch to another domain, either
at a given point in time or after the node was offline long enough.
2019-02-12 11:00:29 +01:00
David Bauer
6e48dedeb8 scripts: include binaries in patch
This commit allows for binary content in patches created via 'make
update-patches'.

Binary patches are needed for BDFs required for al boards on the new
ipq40xx target. Before this commit, binaries were omitted from the
generated patch which resulted in the patch not able to apply.

Patches without binary content do not differ in case they are created
with the '--binary' flag.
2018-07-16 01:39:36 +02:00
Matthias Schiffer
7460431faa
scripts/copy_output.sh: add support for "extra" images
The new extra_image command allows to copy additional images that don't
fall into the sysupgrade or factory categories to the output directory.
These images will be placed in the "other" subdirectory.

The extra_image command takes 3 arguments: in_suffix (suffix in OpenWrt
bin directory), out_suffix (suffix in Gluon output directory) and ext (file
extension). Example:

  extra_image '-tftp' '-tftp' '.bin'

The ext argument can be omitted to control the whole filename suffix
including the extension from in_suffix and out_suffix. Multiple extra_image
commands can be used for a single device; aliases work as usual.

Based-on-patch-by: David Bauer <mail@david-bauer.net>
2018-07-14 18:33:37 +02:00
Matthias Schiffer
e8cb34bae2
scripts/copy_output.sh: refactor 2018-07-14 18:17:36 +02:00
Matthias Schiffer
63c16c01a0
scripts: move DEFAULT_FEEDS definition to a separate file
modules.sh can't depend on openwrt/feeds.conf.default, otherwise the
initial update will fail.
2018-07-11 21:47:50 +02:00
Matthias Schiffer
210d97c53e
Switch to OpenWrt 18.06 branch 2018-07-10 22:57:40 +02:00
Matthias Schiffer
a49cf395bd
cripts/check_site.lua: print paths separated by '.' rather than '/'
Using slashs instead of dots is a bit unexpected, and as long as we're not
going for full-blown JSONPath, neither is more correct than the other.
2018-06-29 20:47:59 +02:00
Matthias Schiffer
aeae9df001
check_site: improve error message for unset values 2018-04-27 17:48:36 +02:00
Matthias Schiffer
ad7d154c5a
scripts/check_site.lua: show type of incorrect values in error messages 2018-04-01 23:21:18 +02:00
Matthias Schiffer
b7be32d9f4
scripts/check_site.lua: print proper error message for non-string keys in need_alphanumeric_key() 2018-04-01 23:18:53 +02:00
Martin Weinelt
85c0bd6f57
scripts/check_site.lua: add table_keys() helper 2018-03-20 17:23:48 +01:00
Matthias Schiffer
1a7d93a2b9
scripts/check_site.lua: add support for alternative checks 2018-03-20 17:15:55 +01:00
Matthias Schiffer
6ae067cb37
gluon-core: add domain aliases and pretty name
Based-on-patch-by: lemoer <git@irrelefant.net>
2018-01-26 12:32:47 +01:00
Matthias Schiffer
8cb0388416
scripts/check_site.lua: enable in_site()/in_domain() checks 2018-01-26 12:32:47 +01:00
Matthias Schiffer
51c0ceeb55
scripts/check_site.lua: merge site and domains for validation
Each domain is validated separately, preferring domain values to site
values.

Based-on-patch-by: lemoer <git@irrelefant.net>
2018-01-26 12:32:46 +01:00
Matthias Schiffer
24a085a542
gluon-site: add default domain and check for it
This does not do anything yet, as this_domain() is not implemented yet.

Based-on-patch-by: lemoer <git@irrelefant.net>
2018-01-26 12:32:46 +01:00