Commit Graph

2187 Commits

Author SHA1 Message Date
Hauke Mehrtens
4c05f9eefb tools: firmware-utils: update to Git HEAD (2024-10-20)
4b76389 iptime-crc32: add support for ipTIME AX3000M

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-10-20 23:59:51 +02:00
Hauke Mehrtens
f33fd7d8be tools: firmware-utils: update to Git HEAD (2024-10-16)
5192cf9 mktplinkfw2: Add 16Mmtk layout
ca444f1 tplink-safeloader: add support for cpe710-v2
88fbd52 bcmclm: support printing channels

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-10-19 23:51:00 +02:00
Michael Pratt
ac483e1c2a tools/ninja: update to 1.12.1
Update to the most recent stable release,
including a new job scheduler and bug fixes.

Backport a patch to assist in reworking jobserver support.

The original patch for jobserver support requires reworking
due to the function CanRunMore() and its usage
being significantly changed, including the return
becoming an integer instead of a boolean.

AcquireToken() must now be used in CanRunMore()
in order to quantify how much the job searching loop
is able to run at any time, and in order to do so
CanRunMore() cannot be a constant function anymore.

Added:
 - 010-backport-gtest.patch

Manually Adjust:
 - 100-make_jobserver_support.patch

Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/16693
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-10-14 13:58:44 +02:00
Michael Pratt
df303c7ef4 tools/ninja: use existing ninja to build ninja
Add methods to skip the building and execution of Ninja by python
in order to allow Make to execute Ninja after the configure script.

This allows the user to build Ninja only once
if they already have an older version of Ninja built.

It also allows the user to test the jobserver functionality
by having Ninja built twice (clean then compile).

Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/16693
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-10-14 13:58:44 +02:00
Michael Pratt
3efedda1da tools/ninja: cleanup Makefile
Use default CXXFLAGS and LDFLAGS variables.

Directly add --verbose flag without a variable.

Split up lines for script arguments.

Delete unnecessary lines.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/16693
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-10-14 13:58:44 +02:00
Jack Sun
9cccc4d7c2 tools/cmake: update to 3.30.5
Release notes: https://cmake.org/cmake/help/latest/release/3.30.html

Signed-off-by: Jack Sun <sunjiazheng321521@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16657
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-10-13 11:55:07 +02:00
Robert Marko
0b05cc7048 tools: libdeflate: bump to 1.22
Bump to the latest 1.22 version which allows dropping our only patch.

Changelog:
Version 1.22
* The CMake-based build system now implements a workaround for gcc being paired
  with a too-old binutils version.  This can prevent build errors.

Version 1.21
* Fixed build error on x86 with gcc 8.1 and gcc 8.2.

* Fixed build error on x86 when gcc 11 is paired with a binutils version that
  doesn't support AVX-VNNI, e.g. as it is on RHEL 9.

* Fixed build error on arm64 with gcc 6.

* Fixed build error on arm64 with gcc 13.1 and later with some -mcpu options.

* Enabled detection of dotprod support in Windows ARM64 builds.

Link: https://github.com/openwrt/openwrt/pull/16617
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-10-06 23:20:59 +02:00
Hauke Mehrtens
32024dbcaa tools: mtd-utils: update to 2.2.1
Release notes:
https://lists.infradead.org/pipermail/linux-mtd/2024-September/106193.html

The rbtree implementation was moved, adapted the patches manually.

Link: https://github.com/openwrt/openwrt/pull/16594
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-10-05 12:41:16 +02:00
Michael Pratt
484f71f4e6 tools/elfutils: prevent invalid include of stack binary
In some versions of Xcode, some C++ header has an include
of the standard C++ header "stack" while "." is in the include paths
which can conflict with the binary "stack" built by elfutils.
This leads to a decode error as the binary is interpreted as text.

Add an arbitrary dependency between stack and the C++ program.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
2024-09-30 11:07:04 +02:00
Felix Fietkau
f4c453fbf2 yafut: fix build on non-linux systems
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-09-29 18:09:22 +02:00
Shiji Yang
603a3c6955 tools: fakeroot: update to 1.36
The type 'id_t' check has been moved to configure.ac in upstream commit:
819063eb4d27 ("test for id_t with autoconf instead of blind typedef, fixes FTBFS on FreeBSD")

changelog:
e4780b1aad/debian/changelog

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Link: https://github.com/openwrt/openwrt/pull/16530
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-09-28 10:27:41 +02:00
Rosen Penev
676a2ab03b tools: e2fsprogs: bypass libuuid check
The check is the wrong way around. It uses AC_CHECK_LIBS and then
pkg-config, probably because the latter is a second class citizen.

Just bypass it. pkg-config gets used anyway.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16480
Link: https://github.com/openwrt/openwrt/pull/16480
Link: https://github.com/openwrt/openwrt/pull/16480
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-26 11:08:23 +02:00
Rosen Penev
9567dbe3a1 tools: util-linux: fix static libuuid pkgconf
Fixes uuid.pc usage on hosts with an older glibc.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16480
Link: https://github.com/openwrt/openwrt/pull/16480
Link: https://github.com/openwrt/openwrt/pull/16480
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-26 11:08:23 +02:00
Robert Marko
95e4664b5e tools: e2fsprogs: drop e2fsck patch
After digging in the history of the e2fsck exit code patch, it seems like
there is no reason for us to carry this patch so lets drop it.

Link: https://github.com/openwrt/openwrt/pull/16500
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-25 19:53:13 +02:00
Robert Marko
da3e1ae35e tools: e2fsprogs: pass --with-crond-dir=no instead of patching
Currently, e2fsprogs is being patched to avoid detecting host crond, but
instead of doing that we can simply pass --with-crond-dir=no as an
argument and drop the patch.

Link: https://github.com/openwrt/openwrt/pull/16500
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-25 19:53:13 +02:00
Robert Marko
81527817e9 tools: e2fsprogs: drop the e4defrag patch
Considering that this patch to not build e4defrag was added 12 years ago
because:
Compilation fails on older systems due to missing syscalls

I think its safe to say that enough time is passed so that whatever those
older systems were are either updated or not used anymore so lets drop
the patch.

Link: https://github.com/openwrt/openwrt/pull/16500
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-25 19:53:13 +02:00
Daniel Golle
72accd078f tools/flex: respect STAGING_DIR_HOST
flex currently leaks the path of m4 as found on the build host.
While it is possible to override this using the M4 environment
variable (which we always did for autotools based builds) when
using CMake or Ninja the M4 variable is not set.
One easy fix is to make flex take STAGING_DIR_HOST into account
and expect m4 there if that variable is set in the environment.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-09-24 19:48:43 +01:00
Sander Vanheule
adb641e578 tools: firmware-utils: update to git HEAD
Improve device compatibility:
  - commit ed9c97fa3305 ("tplink-safeloader: bump EAP610-V3 compat_level")

Signed-off-by: Sander Vanheule <sander@svanheule.net>
2024-09-22 23:08:09 +02:00
Yegor Yefremov
8d1de4a4c8 tools/meson: update to 1.5.1
Changelog: https://mesonbuild.com/Release-notes-for-1-5-0.html

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Link: https://github.com/openwrt/openwrt/pull/16425
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-22 16:33:29 +02:00
Felix Fietkau
8043e2e746 tools/llvm-bpf: filter out STAGING_DIR_HOST/include from cflags on non-linux systems
Avoids picking up an incompatible libuuid from util-linux

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-09-20 17:43:57 +02:00
Yanase Yuki
2db7f1c67c tools/expat: update to 2.6.3
This release fixes CVE-2024-45490, CVE-2024-45491 and
CVE-2024-45492.

Changelog:
https://github.com/libexpat/libexpat/blob/R_2_6_3/expat/Changes

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/16379
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-09-19 23:05:44 +02:00
Yanase Yuki
d97dced259 tools/cmake: update to 3.30.3
Release notes: https://cmake.org/cmake/help/latest/release/3.30.html

Signed-off-by: Yanase Yuki <dev@zpc.st>
Link: https://github.com/openwrt/openwrt/pull/16378
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-18 10:56:14 +02:00
Matthias Schiffer
d6e5459319
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>
2024-08-29 20:04:02 +02:00
Hannu Nyman
c456c5592e tools/cmake: Update to 3.30.2
Update cmake to version 3.30.2
Release notes: https://cmake.org/cmake/help/v3.30/release/3.30.html

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Link: https://github.com/openwrt/openwrt/pull/16059
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-08-13 11:11:36 +02:00
Hauke Mehrtens
74553537f1 tools: firmware-utils: update to Git HEAD (2024-08-09)
26c7f05 nec-usbatermfw: add tool for NEC "USB ATERM" format

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-08-09 00:19:33 +02:00
Carsten Schuette
06b81f5d13 toolchain: mold: Update to 2.33.0
Update mold to 2.33.0
Link: https://github.com/rui314/mold/releases/tag/v2.33.0

Signed-off-by: Carsten Schuette <schuettecarsten@googlemail.com>
Link: https://github.com/openwrt/openwrt/pull/16048
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-08-08 17:19:43 +02:00
Michael Pratt
a9f58dddb7 tools/7z: update to 24.05
Update to a more recent stable release.

Most notably, this version includes
some fixes for building on an OS like Alpine.
This allows for the removal of hacks
that fixed building on Alpine,
but broke building on ARM archs.

Manually adjust:
- 7-zip-flags.patch
- 7-zip-musl.patch

Link: https://7-zip.org/history.txt
Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/15991
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-07-27 20:32:20 +02:00
Michael Pratt
ce4b345b7b tools/7z: cleanup Makefile
Define the version in one variable,
and use Make functions to use variations of it elsewhere.

Correct the CPE ID.

Override the default tar directory flag
by adding a new value to the tar options
instead of defining the entire command.

Use variables for adjusting build recipes
instead of adding custom build recipes.

Remove unnecessary lines and add spacing.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/15991
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-07-27 20:32:20 +02:00
Thomas Weißschuh
2b90347dd6 tools: util-linux: update to v2.40.2
Also switch from .tar.gz to .tar.xz to align with
package/utils/util-linux/Makefile.
This makes synchronized updates easier.

Release Notes:
        https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.40/v2.40-ReleaseNotes
        https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.40/v2.40.1-ReleaseNotes
        https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.40/v2.40.2-ReleaseNotes

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Link: https://github.com/openwrt/openwrt/pull/15995
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-07-27 18:59:42 +02:00
Robert Marko
4e54417502 tools: firmware-utils: update to Git HEAD (2024-06-30)
0cfd1043e6c4 zytrx: add ZyXEL LTE7490-M904
3d09357fc7b5 asusuimage: new tool for creating TRX-images compatible with AsusWRT
f35781fcd2c3 asusuimage: fix compile error with old GCC release

Link: https://github.com/openwrt/openwrt/pull/15840
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-07-09 12:33:17 +02:00
Robert Marko
f8ccf8a7a8 tools: util-linux: disable NLS again
It seems that util-linux enables NLS support by default, this worked for
almost all platforms except for macOS on x86 where it seems that libintl is
preinstalled and thus it will link against gettext with libintl for NLS
support.

This would the later cause e2fsprogs and mtd-utils to fail:
Undefined symbols for architecture x86_64:
  "_libintl_gettext", referenced from:
      _random_tell_source in libuuid.a[13](libuuid_la-randutils.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Issue appeared after I converted the tool to use --disable-all-programs and
accidentally dropped the --disable-nls from the args.

Fixes: 54115ec22d ("tools: util-linux: use --disable-all-programs")
Link: https://github.com/openwrt/openwrt/pull/15909
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-07-09 10:55:10 +02:00
Michael Pratt
3b3a81f18e tools/elfutils: simplify and cleanup Makefile
After changes to default host build recipes
and default variable definitions,
several custom definitions can be removed,
and the gnulib recipes replaced
with hooks to common recipes.

Also remove leftover PKG_INSTALL
which has no effect for host builds.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/15853
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-07-08 08:49:43 +02:00
Michael Pratt
f9a1996367 tools/elfutils: remove header symlink between subdirectories
Replace the symlink in the build recipe for gnulib
with an extra include path flag in CPPFLAGS to the lib subdirectory
so that it is the last in the order of include paths,
and use a quote escape to make the flag a literal string
in order to use Make variables within it.

The original reason this is necessary is because the config.h header
provided by the project at the top-level build directory
calls another header eu-config.h
which is stored in the lib subdirectory instead of the top-level,
and building the gnulib library requires the config.h header.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/15853
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-07-08 08:49:42 +02:00
Shiji Yang
7d2ca4e410 tools: mkimage: update to U-Boot release v2024.07
Update to latest version.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-07-04 21:15:26 +02:00
Robert Marko
fd085a737b tools/e2fsprogs: fixup STAGING_DIR_HOST path evaluation in shell scripts
We have to use curly braces on the exported STAGING_DIR_HOST env variable,
instead of evaluating it directly as we are not in Make but a separate
shell script.

Otherwise it would fail with:
staging_dir/host/bin/compile_et: line 6: STAGING_DIR_HOST: command not found
staging_dir/host/bin/mk_cmds: line 5: STAGING_DIR_HOST: command not found

And so when krb5 tries to build it will fail as compile_et and mk_cmds will
return an error.

Fixes: 55bda9863d ("tools/e2fsprogs: fix shell scripts under SDK")
Link: https://github.com/openwrt/openwrt/pull/15854
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-07-02 14:04:49 +02:00
Rosen Penev
a787ebf716 tools/util-linux: build libuuid as PIC
Needed to fix users of libuuid.a as autoconf applies PIC to only shared
libraries by default.

Found when trying to build python3/host.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15852
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-07-02 11:59:06 +02:00
Rosen Penev
55bda9863d tools/e2fsprogs: fix shell scripts under SDK
7c32295b00 exposed a problem where the SDK
builds these shell scripts with a nonsensical absolute path for the DIR
variable. Use sed to patch in $STAGING_DIR_HOST.

Also remove PKG_RELEASE as that is nonsensical for tools.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15841
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-30 19:05:21 +02:00
Robert Marko
b43c0a915f tools: util-linux: mark hexdump patch as backport
The hexdump fix for --disable-all-programs has been merged upstream, so
mark it so.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-27 12:22:53 +02:00
Michael Pratt
4710134f12 tools/coreutils: remove 64-bit time disable flag
This was added to support building coreutils on host systems
that still only have 32-bit time support.

Because other tools now also require the flag for building
with 32-bit time when support for 64-bit time is not present,
this flag is now added to all host builds
on a variable basis using the same test before building,
so it can now be removed from specific tools.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/15799
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-27 09:31:53 +02:00
Robert Marko
843b51b26d tools: mtd-utils: use libuuid provided by util-linux
Now that util-linux is building libuuid we can simply use that instead
of manually pointing to e2fsprogs libuuid so we can disable building
libuuid in e2fsprogs.

Link: https://github.com/openwrt/openwrt/pull/15806
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-26 11:21:04 +02:00
Robert Marko
215d5bbe4e tools: e2fsprogs: use standard make uninstall
There is no need to manually only remove 2 binaries during cleanup and
leave rest of the e2fsprogs installed stuff untouched, so instead use
make uninstall to do the cleanup.

Link: https://github.com/openwrt/openwrt/pull/15806
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-26 11:21:04 +02:00
Robert Marko
bd48ca1245 tools: e2fsprogs: use libuuid provided by util-linux
We are now using util-linux to provide libuuid so disable building it
in e2fsprogs and simply use the util-linux provided one.

Disabling libuuid removes the need for custom install recipe.

Link: https://github.com/openwrt/openwrt/pull/15806
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-26 11:21:04 +02:00
Robert Marko
8b0f892b31 tools: util-linux: build libuuid
util-linux usually provides libuuid, and is preffered by mtd-utils so lets
enable building libuuid so we can disable it later in e2fsprogs.

Only the static version of library is intentionally built.

Link: https://github.com/openwrt/openwrt/pull/15806
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-26 11:21:04 +02:00
Robert Marko
fb99a8d2e6 tools: util-linux: use standard make install/uninstall
Instead of manually installing the binaries and removing them, we can now
simply rely on standard make install/uninstall as we are only building
tools we want to use.

This will be especially important when we start building libraries in
util-linux.

Link: https://github.com/openwrt/openwrt/pull/15806
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-26 11:21:03 +02:00
Robert Marko
54115ec22d tools: util-linux: use --disable-all-programs
util-linux supports passing --disable-all-programs configure flag to
disable building anything that isnt then manually enabled.

So, lets switch to using that instead of manually having to disable all
tools we dont need.

However, current drawback is that there is no upstream support for enabling
building hexdump so I included a patch that is pending upstream[0].

[0] https://github.com/util-linux/util-linux/pull/3101

Link: https://github.com/openwrt/openwrt/pull/15806
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-26 11:21:03 +02:00
Robert Marko
1029340353 tools: mtd-utils: fix disabling tests
Passing --disable-tests does not do anything since upstream commit [0]
("Fix test binary installation") as that commit removed it since there is
already and existing --without-tests compile option to not compile
the tests at all as --disable-tests was just disabling their installation.

So, lets just pass --without-tests instead to disable test compilation.

[0] https://git.infraroot.at/mtd-utils.git/commit/?id=7170a28d46d5db1e7a9da24a5555a194a233ef0b

Fixes: 67efb6a661 ("tools: mtd-utils: Update to version 2.1.4")
Link: https://github.com/openwrt/openwrt/pull/15791
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-25 17:57:07 +02:00
Robert Marko
e07cc3237e tools: mtd-utils: update to 2.2.0
Release notes:
https://lists.infradead.org/pipermail/linux-mtd/2024-March/104058.html

Manually refresh the portability and JFFS2 LZMA patches.

Since mtd-utils have converted most of the JFFS2 compressors to be compile
time configurable and manual refreshing of JFFS2 LZMA was needed I also
converted it to a compile time option and enabled the new --with-lzma
option.

Link: https://github.com/openwrt/openwrt/pull/15791
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-25 17:57:07 +02:00
Konstantin Demin
6988fe3d98 tools/llvm: update to 18.1.7
- release notes:
  - https://discourse.llvm.org/t/llvm-16-0-0-release/69326
  - https://discourse.llvm.org/t/llvm-17-0-1-released/73549
  - https://discourse.llvm.org/t/llvm-18-1-0-released/77448
  - https://discourse.llvm.org/t/llvm-18-1-1-released/77540
  - https://discourse.llvm.org/t/18-1-2-released/77821
  - https://discourse.llvm.org/t/18-1-3-released/78136
  - https://discourse.llvm.org/t/18-1-4-released/78430
  - https://discourse.llvm.org/t/18-1-5-released/78740
  - https://discourse.llvm.org/t/18-1-6-released/79068
  - https://discourse.llvm.org/t/18-1-7-released/79433
- remove PKG_RELEASE (irrelevant to tools)
- set default target/triplet to "bpf"
- rearrange configuration options
- better control feature support and improve build reproducibility:
  disable auxiliary features that are enabled implicitly - their
  support is detected at build-time

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/15704
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-24 13:56:14 +02:00
Michael Pratt
f864b83b1d tools/fakeroot: fix check for whether to wrap time64 functions
Fakeroot uses an egrep configure check to look for the string "time64"
within a preprocessed include of the sys/stat.h header
in order to decide whether or not to create declarations
and internal functions used for wrapping the native functions
stat64_time64 fstat64_time64 lstat64_time64 and fstatat64_time64.

On specific older versions of glibc these functions are not included,
but there are some references to "time64" unrelated to functions,
like aliasing the time64_t typedef to the standard time_t typedef
when the size of a word is 64 bits or defining it if not.

In this case, a grep for "stat64"
of the preprocessed sys/stat.h header matches nothing,
however, the grep for "time64" in the configure check
of the preprocessed sys/stat.h header matches a line
that has nothing to do with the functions
that will be wrapped as a result of successful matching.

  __extension__ typedef __int64_t __time64_t;

This causes the attempt to wrap the functions to occur,
which fails due to some of the corresponding macros being empty
since the native declarations they are based on do not exist,
causing a common error claiming that a part of the syntax is missing.

  error: expected '=', ',', ';', 'asm' or '__attribute__' before ...

Fix this by making the testing regular expression more complex
in order to match actual function names ending in "_time64"
with or without a set of preceding underscores, but none after.

Signed-off-by: Michael Pratt <mcpratt@pm.me>
Link: https://github.com/openwrt/openwrt/pull/15773
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-06-22 20:42:45 +02:00
Christian Marangi
66edb2f9ad
tools: firmware-utils: update to Git HEAD (2024-06-20)
224d497dd94f srec2bin: drop unused "dum" variable
6777b2d51961 uimage_sgehdr: use "char" type for header struct strings
81db3025aac5 uimage_sgehdr: drop unused "ltmp" variable
bd7fcc74b43e pc1crypt: make decrypt/encrypt functions take void * as argument
6ac44974185a linksys: add magic header generation tool for e8350 v1

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-21 13:34:32 +02:00