Commit Graph

2008 Commits

Author SHA1 Message Date
Robert Marko
87477c756e tools: bzip2: use static lib and tools
Currently, bzip2 is built with a dynamically linked library on which all
of the bzip2 tools depend on.

However, when trying to use the staging dir bzip2 during building on
Fedora 40 the following error appers:
staging_dir/host/bin/bzip2: error while loading shared libraries: libbz2.so.1.0: cannot open shared object file: No such file or directory

Looking into it, the binary is dynamically linked:
$ ldd staging_dir/host/bin/bzip2
linux-vdso.so.1 (0x00007f5ebd9ff000)
libbz2.so.1.0 => not found
libc.so.6 => /lib64/libc.so.6 (0x00007f5ebd7f5000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5ebda01000)

libbz2.so.1.0 is installed into staging_dir/lib but that directory is not
evaluated for the required libraries and Fedora only ships:
/usr/lib64/libbz2.so.1
/usr/lib64/libbz2.so.1.0.8

Thus it cannot find the libbz2 that bzip2 is linked against and thus
trying to use bzip2 will fail and stop compilation as it is used for
bzip2 compressed tarballs.

So, to avoid OpenWrt compiled bzip2 to even attempt to load a required
library from the host we can just static compile libbz2 and bzip2.

Link: https://github.com/openwrt/openwrt/pull/16520
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-28 12:05:48 +02:00
Sander Vanheule
a2a67804fc firmware-utils: bump to latest openwrt-23.05
This version bump contains one patch improving compatibility with recent
vendor firmware versions:
  - commit f3b636d0ee47 ("tplink-safeloader: bump EAP610-V3 compat_level")

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-09-22 16:47:19 +02:00
Matthias Schiffer
c4c43c64aa
tools: libtool: do not symlink files in bootstrap
Another instance of files in build_dir symlinking to staging_dir. While
the symlinks do not currently cause any bugs in the libtool package,
such symlinks were found to make the build more fragile, as writing to
the symlink may accidentally modify the shared file in staging_dir. Pass
--copy to bootstrap to disable the symlinking.

Link: https://github.com/openwrt/openwrt/pull/15825
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
(cherry picked from commit d6e5459319)
2024-08-29 20:06:03 +02:00
Rosen Penev
6928faa350 tools/sparse: fix compilation with GCC14
Upstream backport.

Get rid of PKG_RELEASE as it's irrelevant to tools.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 253d777c96)
Link: https://github.com/openwrt/openwrt/pull/15898
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-07-08 21:13:25 +02:00
Fabrice Fontaine
11b8b62fd8 tools/flex: fix PKG_CPE_ID
cpe:/a:westes:flex is the correct CPE ID for flex:
https://nvd.nist.gov/products/cpe/search/results?keyword=cpe:2.3🅰️westes:flex

Fixes: c61a239514 (add PKG_CPE_ID ids to package and tools)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
(cherry picked from commit 832460b452)
Link: https://github.com/openwrt/openwrt/pull/15881
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-07-06 18:31:14 +02:00
Fabrice Fontaine
c587573710 tools/zlib: fix PKG_CPE_ID
cpe:/a:zlib:zlib is the correct CPE ID for zlib:
https://nvd.nist.gov/products/cpe/search/results?keyword=cpe:2.3🅰️zlib:zlib

Fixes: c61a239514 (add PKG_CPE_ID ids to package and tools)

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
(cherry picked from commit e9ecaade6f)
Link: https://github.com/openwrt/openwrt/pull/15881
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-07-06 18:31:14 +02:00
Christian Marangi
28bf0137b4
tools: refresh all patches
Refresh all tools patches now that tools/refresh correctly works.

CI now checks for them and actively complain if tools have unrefreshed
patches.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-22 12:41:10 +02:00
Christian Marangi
aa77c796fe
tools/padjffs2: use Host/Prepare/Default instead of raw commands
Now that Host/Prepare/Default is always defined, we can use that instead
of using raw commands to move files from the src directory to
HOST_BUILD_DIR.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit 01048c7456)
2024-05-22 12:00:40 +02:00
Christian Marangi
9897724ada
tools/missing-macros: install files from HOST_BUILD_DIR instead of src
Install files from HOST_BUILD_DIR instead of src. These files are now
correctly copied to HOST_BUILD_DIR and can be referenced from there.

(cherry picked from commit 46bcbe4223)
[ rebased on top of openwrt-23.05 ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-05-22 11:59:59 +02:00
Christian Marangi
eda76b336b
gengetopt: backport patch fixing support for c++17
Backport patch fixing support for c++17 that got merged upstream in
gengetopt.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit a8bfdf2ed4)
2024-05-01 15:46:52 +02:00
Petr Štetiar
3d037b8c5f
tools: macOS: types.h: fix missing unsigned types
For some reason unsigned types were not added in commit 0a06fcf608
("build: fix kernel 5.4 on macos"), which led to bunch of hacks, like
commit 3cc57ba462 ("uboot-sunxi: add missing type __u64") or
commit 997ff740dc ("uboot-mediatek: fix build on Mac OS X").

So lets add the missing unsigned types to workaround it in a bit more
maintainable way.

Fixes: #13833
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 4a8961f1df)
2024-04-27 06:53:21 +00:00
Robert Marko
a48786ef40 tools: b43-tools: fix compilation with GCC14
GCC14 no longer treats integer types and pointer types as equivalent in
assignments (including implied assignments of function arguments and return
values), and instead fails the compilation with a type error.

So, as a workaround lets disable the newly introduced error
-Werror=int-conversion and just make it print a warning to enable compiling
with GCC14 as Fedora 40 now defaults to it.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-23 12:36:22 +02:00
Nick Hainke
82ba1d2635 tools/cpio: update to 2.15
Release Notes:
https://lists.gnu.org/archive/html/info-gnu/2024-01/msg00006.html

Fixes: #15228
Signed-off-by: Nick Hainke <vincent@systemli.org>
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-04-22 15:28:12 +02:00
Hauke Mehrtens
633eb115b5 firmware-utils: Fix PKG_MIRROR_HASH
This fixes the PKG_MIRROR_HASH.

Fixes: 5eb578a4fb ("firmware-utils: bump to latest openwrt-23.05")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-02-10 12:44:08 +01:00
Sander Vanheule
5eb578a4fb firmware-utils: bump to latest openwrt-23.05
This version bump contains two patches improving compatibility with
recent vendor firmware versions:
    - c46b4b4ad7e7 tplink-safeloader: bump EAP225-V3 compat_level
    - b6a7e813b61c tplink-safeloader: bump EAP225-Outdoor v1 compat

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-01-31 09:21:06 +01:00
Sander Vanheule
b54f7105df firmware-utils: move patch to maintaince branch
Patch "firmware-utils: ptgen: add SiFive GPT partition support" was
included as a separate change in 23.05. Now that we have a maintenance
branch for firmware-utils, the patch can be backported there and
included with other changes.

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-01-07 12:54:06 +01:00
Sander Vanheule
34e30fb53a firmware-utils: bump to latest openwrt-23.05
Contains two backported device suppport updates:
    - 9afd8f42bd23 "tplink-safeloader: bump EAP615-Wall compat_level"
    - 8cad449bdb5c "add dlink-sge-image for D-Link devices by SGE"

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-01-07 12:24:11 +01:00
Alexander Couzens
1b7d48dc5f tools: assign PKG_CPE_ID
The PKG_CPE_ID links to NIST CPE version 2.2.
Assign PKG_CPE_ID to all remaining tools which have a CPE ID.
Not every tool has CPE id.

Related: https://github.com/openwrt/packages/issues/8534
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2023-09-27 22:37:01 +02:00
Oskari Rauta
9349302bca ccache: add missing \
-DREDIS_STORAGE_BACKEND=OFF option is ignored due to missing \

Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>
(cherry picked from commit b61ac68b67)
2023-09-24 13:22:34 +02:00
Hauke Mehrtens
f147569ff1 patchelf: Revert "tools/patchelf: update to 0.18.0"
This reverts commit ec6bcda8e4.

patchelf 0.18.0 requires GCC 8, it does not compile using GCC 7 any
more. Downgrade to patchelf 0.17.2 which still supports GCC 7.

Downgrade patchelf to 0.17.2 only in the OpenWrt 23.05 branch and
require GCC 8 in the master branch.

Ubuntu 18.04 uses GCC 7 by default.

Fixes: #13102
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-08-15 17:12:33 +02:00
Sander Vanheule
2cece6e2b0 firmware-utils: bump to git HEAD
Add support for a number of new TP-Link devices.

9e2de8515be1 tplink-safeloader: add EAP610 v3 and EAP613 v1
bb12cf5c3fa9 tplink-safeloader: Add support for TP-Link Deco M5
a2d49fb1e188 tplink-safeloader: add RU support-list entry for Archer C6U v1

Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 0cdcf03382)
2023-07-03 21:07:33 +02:00
Zoltan HERPAI
0f30f47d61 firmware-utils: ptgen: add SiFive-related GUID types
Add patch until it gets accepted in firmware-utils upstream.

The SiFive RISC-V SoCs use two special partition types in the boot process.
As a first step, the ZSBL (zero-stage bootloader) in the CPU looks for a
partition with a GUID of 5B193300-FC78-40CD-8002-E86C45580B47 to load the
first-stage bootloader - which in OpenWrt's case is an SPL image. The FSBL
(SPL) then looks for a partition with a GUID of
2E54B353-1271-4842-806F-E436D6AF6985 to load the SSBL which is usually an
u-boot.

With ptgen already supporting GPT partition creation, add the required GUID
types and name them accordingly to be invoked with the '-T <GPT partition
type>' parameter.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
(cherry picked from commit 18238c4428)
2023-06-14 09:22:08 +02:00
Michael Pratt
0928545f3b
tools/coreutils: rename list of installed programs
Rename the list of programs installed by coreutils
to PKG_PROGRAMS, which will create a stampfile for each
through a new feature in host-build.mk.

Also, cleanup a bit to save lines
regarding the usage of this list.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit 14a85d929b)
2023-06-12 22:10:25 +02:00
Michael Pratt
f307129561
tools/findutils: define list of installed programs
Define the variable PKG_PROGRAMS for the list
of programs installed by findutils,
which will create a stampfile for each
through a new feature in host-build.mk.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit 04053e3f20)
2023-06-12 22:10:24 +02:00
Linhui Liu
3f9526957b tools/ccache: update to 4.8.1
Release Notes:
https://ccache.dev/releasenotes.html#_ccache_4_8_1

Signed-off-by: Linhui Liu <liulinhui36@gmail.com>
2023-05-20 22:12:06 +02:00
Nick Hainke
45082d4e51 tools/cmake: update to 3.26.4
Changelog:
https://www.kitware.com/cmake-3-26-4-available-for-download/

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-19 13:48:04 +02:00
David Bauer
3a6657540c firmware-utils: update to latest HEAD
02cdbc6 tplink-safeloader: add Archer AX23 v1.2 (RU)
de36fa6 tplink-safeloader: add AX23 support-list entry
5f6fefd tplink-safeloader: order AX23 support-list
25131d6 tplink-safeloader: add Archer C59 / C60 CA ragion code

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-05-18 10:43:52 +02:00
Daniel Golle
f1f87ef350 tools: squashfs3-lzma: generate reproducible output
Always initialize header with zeros as otherwise we may end up with
uninitialized memory which ruins reproducibility.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-05-12 02:27:17 +02:00
Linhui Liu
3636b06b2d tools/cpio: update to 2.14
Noteworthy changes in this release:

* New option --ignore-dirnlink

Valid in copy-out mode, it instructs cpio to ignore the actual number
of links reported for each directory member and always store 2
instead.

* Changes in --reproducible option

The --reproducible option implies --ignore-dirlink.  In other words,
it is equivalent to --ignore-devno --ignore-dirnlink --renumber-inodes.

* Use GNU ls algorithm for deciding timestamp format in -tv mode

* Bugfixes

** Fix cpio header verification.

** Fix handling of device numbers on copy out.

** Fix calculation of CRC in copy-out mode.

** Rewrite the fix for CVE-2015-1197.

** Fix combination of --create --append --directory.

** Fix appending to archives bigger than 2G.

Removed upstreamed:
- 001-duplicate-program-name.patch
- 010-clang.patch

Signed-off-by: Linhui Liu <liulinhui36@gmail.com>
2023-05-09 11:38:18 +02:00
Linhui Liu
9207c72850 tools/pkgconf: update to 1.9.5
Release Notes:
https://github.com/pkgconf/pkgconf/blob/master/NEWS

Signed-off-by: Linhui Liu <liulinhui36@gmail.com>
2023-05-09 11:37:16 +02:00
Nick Hainke
2526b98a62
tools/xz: update to 5.4.3
Changelog:
https://git.tukaani.org/?p=xz.git;a=blob;f=NEWS;h=2f4d35adca6198671434d2988803cc9316ad1ec8;hb=c247d06e1f6cada9a76f4f6225cbd97ea760f52f#l5

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-06 07:16:15 +02:00
Michael Pratt
09f8f21ae3
tools/coreutils: bootstrap to local gnulib source
Using the local gnulib source during bootstrap
allows for fine-grained control over the macros
and source files for use with coreutils
but part of gnulib instead of coreutils,
without having to wait for a release
or deal with gnulib as a git submodule.

In this case, the execution of autotools
must be skipped by force.
Autoconf and Automake during bootstrap on coreutils
only works right when using directly checked-out source.

There is a symbol in gnulib, @GNULIB_TIME@
that is not yet defined in coreutils source,
so we use the backup of lib/time.in.h instead
of the one provided by gnulib source.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-05-04 06:07:30 +02:00
Michael Pratt
87e902fcdc
tools/libtool: bootstrap to local gnulib source
Using the local gnulib source during bootstrap
allows for fine-grained control over the macros
and source files for use with libtool
but part of gnulib instead of libtool,
without having to wait for a release
or deal with gnulib as a git submodule.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-05-04 06:07:30 +02:00
Michael Pratt
4437434b8a
tools/gengetopt: override SUBDIRS variable with Makefile
Instead of editing the SUBDIRS variable with a patch,
it can be overriden at the end of the command line when invoking Make.

This tool has a series of recursive Makefiles in each subdirectory,
therefore SUBDIRS is set to a pattern of Make functions
so that the result is variable depending on the current subdirectory
that Make is being invoked in.

By eliminating the patch, autoreconf is no longer required.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-05-04 06:07:28 +02:00
Michael Pratt
e764a909e3
tools/flex: override SUBDIRS variable with Makefile
Instead of editing the SUBDIRS variable with a patch,
it can be overriden at the end of the command line when invoking Make.

Skip the build for po files as well, which is causing a conflict
depending on the version of gettext detected, and macros present.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-05-04 06:07:28 +02:00
Michael Pratt
89a8269c10
tools/automake: move file requirements to higher strictness
GNU standards requires certain files at the top-level directory
of a package that automake is used with, mostly documentation.

If one of these files happens to be missing, autoreconf would fail.

Move these file requirements to the more strict 'GNITS' setting.

Link: https://www.gnu.org/software/automake/manual/html_node/Strictness.html
Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-05-04 06:07:28 +02:00
Michael Pratt
d39c6cd29b
tools/missing-macros: bump version of makeinfo alternative script
Some new releases of GNU tools are checking for a higher version
of makeinfo than what our scripted alternative shows
when working with checked-out sources instead of releases.

Since this is a "fake" makeinfo we can also just fake the version.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-05-04 06:07:27 +02:00
Michael Pratt
e4977f614f
tools/missing-macros: prefer macros provided by gnulib source
These 7 macro files are provided by gnulib,
so we can now replace these statically stored copies
with the latest copy from GNU sources.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-05-04 06:07:27 +02:00
Michael Pratt
fe33d5ba13
tools: add gnulib source
By having a local copy of gnulib, we can:
import the latest macro fixes into any package,
get rid of some statically stored macros that were otherwise missing,
bootstrap GNU tools with the latest relevant source
without having to wait for a release or rely on git submodules,
and possibly more...

The patch assists in bootstrapping by ignoring
the building of po files using gettext,
and also to allow a user-defined path to a program
to include parameters.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2023-05-04 06:07:27 +02:00
Nick Hainke
ec6bcda8e4 tools/patchelf: update to 0.18.0
Release Notes:
https://github.com/NixOS/patchelf/releases/tag/0.18.0

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-04-29 17:37:45 +02:00
Nick Hainke
4c54ec74fc tools/coreutils: update to 9.3
Update to latest bugfix release.

Remove upstreamed patches:
- 001-copy-fix-reflink-auto-to-fallback-in-more-cases.patch
- 002-date-diagnose-f-read-errors.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-04-29 17:36:20 +02:00
Nick Hainke
86c24d8806
tools/isl: update to 0.26
Changelog:
https://repo.or.cz/isl.git/blob/e58af07f91c94db81627fb801fa6f52c3a7201a8:/ChangeLog

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-04-22 01:33:16 +02:00
Nick Hainke
1b624eb29d
tools/libressl: update to 3.7.2
Release Notes:
https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.7.2-relnotes.txt

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-04-22 01:31:50 +02:00
Christian Marangi
c7c3208192
tools/squashfs4: backport OpenWrt extended options patch
Due to us keeping a patch around for years and never proposing it to
squashfs4 repository, we resulted in having the same squashfs4 version
but with different supported options. (openwrt patched -- upstream)

To workaround this problem, a non-standard option was required.

To not have surprise on tool bump, backport the patch and add the new
config option required to enable these extended non-standard options.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-04-20 21:30:52 +02:00
Rosen Penev
291b137778
tools/lz4: build with meson
Simplifies Makefile and speeds up compilation.

Before:
Executed in   68.00 secs    fish           external
   usr time  104.17 secs    1.33 millis  104.17 secs
   sys time    4.29 secs    0.35 millis    4.29 secs

After:
Executed in   27.98 secs    fish           external
   usr time   25.18 secs    1.32 millis   25.18 secs
   sys time    3.31 secs    0.35 millis    3.31 secs

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2023-04-20 14:21:46 +02:00
Nick Hainke
1416b9bbe9 tools/dwarves: update to 1.25
Remove AUTORELEASE and HOST_BUILD_PARALLEL.

Release Notes:
https://lore.kernel.org/dwarves/ZDG4qxirpIfmbiip@kernel.org/T/#u

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-04-19 01:02:26 +02:00
Nick Hainke
89f6ac5fd1 tools/cmake: update to 3.26.3
Release Notes:
- https://www.kitware.com/cmake-3-26-1-available-for-download/
- https://www.kitware.com/cmake-3-26-2-available-for-download/
- https://www.kitware.com/cmake-3-26-3-available-for-download/

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-04-19 00:53:39 +02:00
Tony Butler
36150ff6ff
tools/bzip2: add bzip2 binaries
`bzip2` is the standard executable for bzip2 compression

this includes development includes and both static and shared libs
(libbz2) which can be used by other packages

the initramfs generator offers the BZIP2 option but there was no
executable to support it, and worked only via side effect of having a
system-installed version of bzip2, which could be less predictable

Signed-off-by: Tony Butler <spudz76@gmail.com>
[ remove unintended change ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-04-18 15:25:21 +02:00
Christian Marangi
b691362d1d
Revert "tools/bzip2: add bzip2 binaries"
This reverts commit 394d7134ec.

The commit has unintentded change that cause compilation error with SDK
or LZO compression.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2023-04-18 15:22:48 +02:00
Tony Butler
394d7134ec
tools/bzip2: add bzip2 binaries
`bzip2` is the standard executable for bzip2 compression

this includes development includes and both static and shared libs
(libbz2) which can be used by other packages

the initramfs generator offers the BZIP2 option but there was no
executable to support it, and worked only via side effect of having a
system-installed version of bzip2, which could be less predictable

Signed-off-by: Tony Butler <spudz76@gmail.com>
2023-04-18 13:57:47 +02:00