Commit Graph

69 Commits

Author SHA1 Message Date
Paul Spooren
7da724e479 build: Fix Shellcheck for get_source_date_epoch.sh
If a `cd` to `TOPDIR` fails the script should quit.

Also unify `try_mtime` function by storing it in a variable.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-01 17:26:28 +08:00
Paul Spooren
62b44eccae build: ipkg-build use fakeroot with PKG_FILE_MODES
The `ipkg-build` script converts a folder into a `opkg` installable
package. Until now it would use root:root for all packages and try to
preserve file modes.

This has the two drawbacks of packages want to add non-root files or add
SUID files, like the `sudo` package does.

To give more flexibility regarding file modes and avoid init script
hacks, a new variable called `PKG_FILE_MODES`. The variable contains a
list of files modes in the format `path:owner:group:mode`.

An example for the `sudo` package below:

```
PKG_FILE_MODES:=\
        /usr/bin/sudo:root:root:4755 \
        /etc/sudoers:root:root:0440
```

The `ipkg-build` now runs within a fakeroot environment to set any mode
and directly store it in the resulting `ipk` package archive.

Both options `-o` and `-g` are no longer required due to the introduction
of the more flexible `-m` options, which takes the `PKG_FILE_MODES` as
input.

Lastly the option `-c` is removed as it's unused within the script.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-01 17:24:55 +08:00
Jo-Philipp Wich
5b2eac4349
Revert "scripts/download: add sources CDN as first mirror"
This reverts commit c737a9ee6a.

The source CDN has been discontinued in its current form and will take a
while to be reestablished. Even then it makes little sense to put a CDN
before other CDNs such as kernel.org, apache.org, sourceforge etc.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit bf96eb55c8)
2020-08-25 13:24:29 +08:00
Paul Spooren
6c2adde17a
treewide: replace which with command -v
Fix shellcheck SC2230
> which is non-standard. Use builtin 'command -v' instead.

Using `command -v` is POSIX compliant while `which` is not.  Also to
mention, `command -v` is a shell builtin whereas `which` is a separate
busybox applet.

Once applied to everything concerning OpenWrt we can disable the busybox
feature `which` and save 3.8kB.

Acked-by: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: Paul Spooren <mail@aparcar.org>
[also replace cases in zram-swap]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-08-13 23:30:21 +08:00
David Bauer
a9b2cc4804
scripts: download.pl: fix indentation
Signed-off-by: David Bauer <mail@david-bauer.net>
2020-08-05 21:04:18 +08:00
Petr Štetiar
38191cfc56
scripts: remove checkpatch.sh
That file was added accidentally in v3 of the patch and I haven't
properly reviewed that patch before pushing it.

Fixes: 656b562aff ("scripts: Add Buildbot dump-target-info.pl script")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-08-04 23:56:33 +08:00
Paul Spooren
5021064aec
scripts: Add Buildbot dump-target-info.pl script
The script comes from buildbot.git[0] and is used to print available
targets and architectures, which are then build.

As the buildbot clones openwrt.git anyway, the script might as well live
here to be used for other cases as well, e.g. determining what
architectures are available when building Docker containers or show
developers an overview which architectures are used by which target.

It's called with either the parameter `architectures` or `targets`,
showing architectures followed by supported targets or targets, followed
by the supported architectures:

$ ./scripts/dump-target-info.pl architectures
aarch64_cortex-a53 bcm27xx/bcm2710 mediatek/mt7622 mvebu/cortexa53 sunxi/cortexa53
aarch64_cortex-a72 bcm27xx/bcm2711 mvebu/cortexa72
...

$ ./scripts/dump-target-info.pl targets
apm821xx/nand powerpc_464fp
apm821xx/sata powerpc_464fp
...

In the future the the script could be removed from the buildbot
repository and maintained only here.

Rename `dumpinfo.pl` to `dump-target-info.pl` to improve verbosity of
filename.

[0]: https://git.openwrt.org/?p=buildbot.git;a=blob;f=scripts/dumpinfo.pl;h=aa97f8d60379076a41b968402e9337cea824ece5;hb=HEAD

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-08-04 23:54:03 +08:00
Adrian Schmutzler
c9f4e3c652
scripts/checkpatch.pl: fix README.md file name after rename
checkpatch.pl uses a list of files to detect the root OpenWrt
directory. This includes README, which has been renamed to
README.md in the previous commit.

Update the file name in checkpatch.pl to prevent errors like the
following when running the script:

   Must be run from the top-level dir. of a OpenWrt tree

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-08-03 00:38:13 +08:00
CN_SZTL
c03c3488ec
scripts/download.pl: add cqu mirror for kernel downloading 2020-07-31 23:27:33 +08:00
Kevin Darbyshire-Bryant
407c2c8e75
scripts/env: Fix 56f813674a scripts/env: use command -v instead of which
We don't need to see how git will be executed and it produces non silent
output on 'scripts/env diff' commands when there are no differences
unlike before.

Re-introduce original silent behaviour.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2020-07-12 23:11:33 +08:00
Adrian Schmutzler
12e8f0d993 scripts/mkits.sh: fix use of printf
Due to a line break, printf was accidentally called with three
arguments instead of two, causing a different output than before.

Fix it by splitting the printf command into two lines.

Fixes: 907053193a ("scripts/mkits.sh: replace echo -e with printf")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-07-12 12:28:38 +08:00
Petr Štetiar
e768b5bb9a scripts/mkits.sh: fix remaining shellcheck warning
Fixes following shellcheck warning:

 In scripts/mkits.sh line 19:
 		 "-k kernel [-D name -d dtb] -o its_file" "$(basename $0)"
                                                                       ^-- SC2086: Double quote to prevent globbing and word splitting.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-07-12 12:23:10 +08:00
Rosen Penev
147e34e3c8 scripts/mkits.sh: switch from bash to sh
This no longer needs bash.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:22:50 +08:00
Rosen Penev
4786fff311 scripts/mkits.sh: fix improper string and array concatenation
Found with shellcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:22:23 +08:00
Rosen Penev
e950836cf5 scripts/mkits.sh: add missing quotes
Found with shellcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:21:38 +08:00
Rosen Penev
ff16a9fddf scripts/mkits.sh: replace echo -e with printf
echo flags are not POSIX. printf does the same with added \n.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:20:56 +08:00
Rosen Penev
ec90c3c72e scripts/gen_image_generic.sh: use /bin/sh
This has nothing bash specific.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:17:33 +08:00
Rosen Penev
3c4c5f6efb scripts/gen_image_generic.sh: replace -o with if/&&
-o is not well defined.

Found with shellcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:17:04 +08:00
Petr Štetiar
1dcedbaea4 scripts/env: fix remaining shellcheck warning
Fixes following shellcheck warning:

 In scripts/env line 25:
 	exit ${1:-1}
             ^-----^ SC2086: Double quote to prevent globbing and word splitting.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-07-12 12:16:41 +08:00
Rosen Penev
322d67e4b7 scripts/env: use read -r instead of read
read mangles backslashes.

Found with shellcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:15:49 +08:00
Rosen Penev
ec7fae6712 scripts/env: exit in case of failure to cd
Found with shellcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:15:28 +08:00
Rosen Penev
6ddfe9204a scripts/env: replace \! with !
The latter is more standard. The former throws an error under
shellcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:15:07 +08:00
Rosen Penev
8cacc08351 scripts/env: use command -v instead of which
Simpler and built in to the shell.

Found with shellcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-07-12 12:14:39 +08:00
Sergio E. Nemirowski
7a77108169 build: mconf readme update
This updates mconf.c readme message to maintain less changes with
upstream and consistency with nconf.c

Signed-off-by: Sergio E. Nemirowski <sergio@outerface.net>
2020-07-08 12:02:08 +08:00
Sergio E. Nemirowski
a10d39da7d build: add nconfig
Add support for make target nconfig (ncurses)

Reviewed-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Signed-off-by: Sergio E. Nemirowski <sergio@outerface.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-07-08 12:01:27 +08:00
AmadeusGhost
a273d13857 Merge Lean's source 2020-05-30 12:25:05 +08:00
Rosen Penev
dea6a0375c scripts/flashing/flash.sh: remove trailing whitespaces
Signed-off-by: Rosen Penev <rosenp@gmail.com>
[cut out of patch with different subject]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-05-24 22:45:18 +08:00
Rosen Penev
e25d9adf1b scripts/flashing/flash.sh: Add missing quotes
These are in if statements (where they should be), and echo output that is
not piped to anything. These should be safe.

Found with shellcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-05-24 22:44:13 +08:00
Eneas U de Queiroz
29e88ef16d build: have config-clean deal with old temp files
This is a temporary commit to have 'make config-clean' remove
temporary files from the previous scripts/config version.

The .gitignore file is updated to deal with the old files as well.

Cc: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2020-05-23 20:21:04 +08:00
Eneas U de Queiroz
a3fbe34edb build: scripts/config - update to kconfig-v5.6
Major changes include:
 - Much more readable reverse dependencies separated in groups
 - Improved recursive dependency report
 - More readable .config files: add comments to signal end of menus
 - More warnings for incorrect Config.in entries, such as a 'choice'
   default not contained in the 'choice'
 - Hability to properly display pseudographics with non-latin locales
 - Recursive dependencies can optionally be treated as errors

Changes from failed dcf3e63a35 attempt:
 - Recursive dependencies are treated as warnings by default
 - The option to treat them as errors is implemented as a command-line
   flag to scripts/config/conf instead of a compile-time definition
 - fixed handling of select with umnet dependencies

Cc: Petr Štetiar <ynezz@true.cz>
Cc: Jo-Philip Wich <jow@mein.io>
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2020-05-23 20:20:04 +08:00
Eneas U de Queiroz
2e2b5959b6 build: simplify building *config targets
Instead of passing pkg-config location through a variable when building
qconf (make xconfig), prepend its parent directory to the PATH, as it is
being done for other conf targets.

Use a Makefile pattern rule to group all 'scripts/config/%onf'
(currently conf, mconf, qconf) targets in a single rule.  Add -O2 to
CFLAGS when building them as well.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2020-05-23 20:16:15 +08:00
CN_SZTL
d55af8f091 scripts/download.pl: fix typo 2020-04-25 08:16:20 +08:00
Paul Spooren
5e03475b9c
scripts/download: add sources CDN as first mirror
OpenWrt now has a CDN for sources at sources.cdn.openwrt.org which
mirrors sources.openwrt.org.

Downloading sources outside Europe or US (mainland) could
result in low throughput, extremely slowing down the first compilation of
the build system.

This patch adds sources.cdn.openwrt.org as the first mirror to offer
worldwide fast download speeds by default. If the CDN goes down for
whatever reason, the script jumps to the next available mirror and
downloads requested files as before (in regional varying speed).

Signed-off-by: Paul Spooren <mail@aparcar.org>
Acked-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2020-04-15 20:30:21 +08:00
CN_SZTL
e72a8f9b4d
scripts/download.pl: drop useless mirrors 2020-04-14 20:20:48 +08:00
CN_SZTL
17e25522c0
scripts/download.pl: add some mirror sites 2020-04-08 00:32:52 +08:00
CN_SZTL
02a5aa2c14
scripts/download: add tsinghua mirror 2020-04-06 01:35:03 +08:00
AmadeusGhost
e5f08410e0
adjust build script (#3235)
* download.pl: add jsDelivr mirror for GitHub and add utsc mirrors

* m520: fix 'hlos' not found

* dependence: add python3

* netfilter: Revert delete support for kernel 4.9

* scons: move to packages feed
2020-02-21 11:55:07 +08:00
coolsnowwolf
9f8000a6d6 sync build script for OpenWrt 19.07 2020-02-21 02:41:00 +08:00
coolsnowwolf
5e65d8e2e1 build: add ABI_VERSION to binary package names 2020-02-19 18:56:44 +08:00
AmadeusGhost
6901278ef0
kernel: bump to 4.14.169, 4.19.101 (#2963)
* kernel: bump to 4.14.169, 4.19.101

* uboot: update to latest

* mediatek: bump to v4.19

* ath79: switch to wpad

* Revert 'grub2: update to latest'
2020-02-06 21:45:40 +08:00
coolsnowwolf
ecea39f109 Revert "files: sync from openwrt v19.07 (#2690)"
This reverts commit 2289184a62.
2020-02-03 12:33:25 +08:00
AmadeusGhost
2289184a62
files: sync from openwrt v19.07 (#2690) 2020-02-01 16:50:37 +08:00
LEAN-ESX
7ea08e97fe ramips: mt7621: add support for Netgear R6800 2019-12-13 08:25:54 -08:00
LEAN-ESX
be770de958 download.pl: add jsDelivr mirror for GitHub 2019-11-11 19:58:10 -08:00
LEAN-ESX
6d0aa62fcc ipq40xx: add G-DOCK 2.0 (P&W R619AC) support 2019-10-22 23:14:35 -07:00
LEAN-ESX
39a642a130 build: create JSON files containing image info 2019-10-20 05:03:52 -07:00
LEAN-ESX
4e08c225ca build: allow overriding default selection state for devices 2019-10-19 11:35:16 -07:00
coolsnowwolf
ff0c6878d5 build: switch default target from ar71xx to x86 2019-04-21 01:24:29 +08:00
coolsnowwolf
d5107528bc kernel: bump to 4.9.166 and 4.14.109 2019-03-30 20:46:18 +08:00
coolsnowwolf
646f4ae77a build: add a script for generating Linksys EA6350v3 factory image 2019-03-07 19:45:12 +08:00