Commit Graph

227 Commits

Author SHA1 Message Date
Rosen Penev
eb1d7b2e19 tools/fakeroot: update to 1.27
Remove macOS stuff. Upstream has fixed it in the same way.

Add SOL_TCP define. Taken from elsewhere in the code.

Refreshed patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-03-06 23:54:26 +08:00
Felix Fietkau
d0e8b61831 tools/fakeroot: fix unresolved symbols on arm64 macOS
The $INODE64 symbol variants are not present, since the base system
always uses 64-bit file offsets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2022-03-06 23:53:50 +08:00
Rosen Penev
15728e7ba3 tools/expat: update to 2.4.6
Switched to CMake for faster compilation and greater parallel
friendliness.

Added CMake options from the packages feed.

This release fixes various CVEs.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-03-05 22:38:42 +08:00
Rosen Penev
e6388d8559 tools/findutils: update to 4.9.0
Add compilation fix for Ubuntu 20.04. Provided by upstream maintainer:

https://github.com/openwrt/packages/issues/17912#issuecomment-1046726426

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-03-05 22:38:27 +08:00
Rosen Penev
ef1a2436f6 tools/zstd: update to 1.5.2
Switched to building with meson as it's faster and does not need a
dependency on cmake, which takes a long time to build.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-03-05 22:38:14 +08:00
Rosen Penev
47699e8b6a tools/ccache: add cmake dependency
This will be needed for the next commit as ccache's cmake dependency is
satisfied by zstd currenly.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-03-05 22:37:12 +08:00
Rosen Penev
f0b7af8fe1 tools/cmake: update to 3.22.2
Mostly random Python 3.10 fixes.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-03-05 22:36:58 +08:00
Rosen Penev
12f07ec2e3 tools/mtools: update to 4.0.37
No changelog is available.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-03-05 22:36:32 +08:00
Rosen Penev
a04966f269 tools/mklibs: update to 0.1.45
Refresh 2to3 patch. Upstream partially did this against some older
python version. This is still needed.

Refreshed other patches to be python3 safe.

Remove uClibc patches as only musl is present now.

Refresh others.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-03-05 22:36:19 +08:00
Josef Schlehofer
43e7543842
tools/libressl: update to version 3.4.2
Release notes:
https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.4.2-relnotes.txt

```
It includes the following security fix

  * In some situations the X.509 verifier would discard an error on an
    unverified certificate chain, resulting in an authentication bypass.
    Thanks to Ilya Shipitsin and Timo Steinlein for reporting.
```

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
(cherry picked from commit 495c4f4e19)
2022-03-03 10:36:55 +08:00
Rosen Penev
5f037fa109 tools/meson: update to 0.61.2
Seems to be minor bugfixes with Cygwin and Windows.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-02-28 16:09:44 +08:00
Rosen Penev
41b0916362 tools/meson: update to 0.61.1
Changelog:

backend_startup_project
Add a man page backend to refman
extract_objects() supports generated sources
Python 3.6 support will be dropped in the next release
Warning if check kwarg of run_command is missing
meson rewrite can modify extra_files
meson rewrite target <target> info outputs target's extra_files
Visual Studio 2022 backend
Support for CMake <3.14 is now deprecated for CMake subprojects
Added support for sccache
install_symlink function

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-02-28 16:09:01 +08:00
Rosen Penev
e6bb10ac92 tools/meson: update to 0.60.1
change meson binary to use py extension. Fixes issue with meson's
symbolextractor using the host python instead of the system one.

We intentionally use a .py extension here so that meson launches
additional python scripts with the same build host python interpreter as
itself is running under (and not the host package one once it becomes
available)

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-02-28 16:08:46 +08:00
Rosen Penev
7e04a381d2 tools/quilt: update to 0.67
- Call pager with original LANG environment variable
  - Consistently complain early if no series file is found
  - Fix handling of symbolic links by several commands
  - Tighten the patch format parsing
  - Reuse the shell (performance)
  - Document the series file format further
  - Document that quilt loads /etc/quilt.quiltrc
  - configure: Make stat configurable
  - series: Minor optimizations
  - setup: Don't obey the settings of any englobing .pc
  - setup: Default to fast mode
  - quilt.el: Fix documentation of quilt-pc-directory
  - quilt.el: Load /etc/quilt.quiltrc if ~/.quiltrc doesn't exist
  - quilt.el: Fix quilt-editable when QUILT_PATCHES_PREFIX is set

Refresh patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[add changelog]
Signed-off-by: Paul Spooren <mail@aparcar.org>
2022-02-26 11:18:21 +08:00
Paul Spooren
2753b246dc tools: use https for bc mirrors
All mirrors offer encrypted downloads, use it.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2022-02-26 11:17:35 +08:00
Rosen Penev
d37c0d6a59 tools/cmake: add MAKE config variable
Makes sure that Ninja from staging_dir is used and nowhere else.

Reported by reproducible builds project. Builds have been failing ever
since tools/cmake started using Ninja.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-02-21 11:02:16 +08:00
Josef Schlehofer
1689eefe60
tools/cmake: update to version 3.22.1
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
(cherry picked from commit 4b587f2561)
2022-01-01 17:30:08 +08:00
AmadeusGhost
08a01c9be4 Revert "tools/mkimage: fix build on MacOS arm64"
This reverts commit 956511e802.
Closed: #534
2021-12-17 10:50:09 +08:00
Rosen Penev
f4ce68f817 tools/ccache: update to 4.5.1
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-12-15 23:52:15 +08:00
Rosen Penev
e07c42952e tools/cmake: update to 3.22.0
Refreshed patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-12-15 23:52:05 +08:00
Rosen Penev
0ee3e2beba tools/cpio: fix compilation with clang
A define dealing with builtin type is wrong. A gnulib update fixes
this, but that requires a new cpio version.

Refresh other patch.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-12-15 23:51:19 +08:00
Sergey V. Lobanov
956511e802 tools/mkimage: fix build on MacOS arm64
Fixed -no-pie compilation warning on MacOS
Fixed errors related to using absolute addressing on MacOS arm64

Based on upstream patch from Jessica Clarke and suggestions from Ronny Kotzschmar

Link to original patch and discussion:
3b142045e8

Signed-off-by: Sergey V. Lobanov <sergey@lobanov.in>
2021-12-15 23:50:15 +08:00
Rosen Penev
bb151a91ce tools/meson: update to 0.60.0
Add cmake support to meson. Otherwise only pkgconfig can be used.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-12-09 23:50:18 +08:00
Sergey V. Lobanov
ce085d34a1 tools/fakeroot: fix build on MacOS arm64
Added patch for MacOS without 32 bit inodes support
(__DARWIN_ONLY_64_BIT_INO_T is true)

This patch based on discussion https://github.com/archmac/bootstrap/issues/4

Signed-off-by: Sergey V. Lobanov <sergey@lobanov.in>
2021-12-05 23:56:00 +08:00
Rosen Penev
8a52924c8e
tools/libressl: update to 3.4.1
Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 03bb3412a2)
2021-11-28 00:02:46 +08:00
Rui Salvaterra
ef4a2c9509 tools/isl: update the download URL
isl.gforge.inria.fr has been dead since early this month [1]. Switch to
libisl.sourceforge.io for the time being.

[1] https://groups.google.com/g/isl-development/c/JGaMo2VUu_8

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2021-10-24 00:16:22 +08:00
Felix Fietkau
14f3dbb8b0 tools/llvm-bpf: add llvm+clang build suitable for compiling code to eBPF
Preparation for building packages that ship eBPF code

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2021-10-24 00:08:23 +08:00
Felix Fietkau
83f1d6b96e tools/fakeroot: explicitly pass CPP variable
For some reason, the generated configure script fails to properly set up
the internal preprocessor command variable, causing the host OS check for
Darwin to fail after the last update.
Explicitly setting CPP fixes this issue

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2021-10-19 00:02:48 +08:00
Rosen Penev
0046ae202e tools/ccache: update to 4.4.2
Refreshed patch.

Disable hiredis backend since it seems to default to it now.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-10-12 23:40:45 +08:00
Rosen Penev
d544c1b0d7 tools/meson: fix usage with SDK
The python path cannot be embedded in the meson binary as it changes
with the SDK.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-10-12 23:40:34 +08:00
Rosen Penev
b082f04ae3 tools/meson: update to 0.59.2
Update install procedure based on upstream feedback. Normally, meson is
to be installed with pip. But as pip is not mandated by the build
system, it cannot be used. Upstream provides a nice script to pack meson
automatically.

Moved src/ to files/. No need to copy to BUILD_DIR.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-10-08 23:39:42 +08:00
Rosen Penev
0b24cf0aef tools/cmake: update to 3.21.3
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-10-06 23:34:58 +08:00
Rosen Penev
3f3da66abe tools/bison: update to 3.8.2
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-10-06 23:34:05 +08:00
Felix Fietkau
0d57f8b297 tools/fakeroot: fix build error on macOS
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2021-09-28 23:37:03 +08:00
Hauke Mehrtens
3eb78a8e0c libtool: Revert "libtool: bump to 2.4.6"
This breaks the package builds using the SDK.
The targets all build fine, but the package builder fails on many
packages. The package builder uses the OpenWrt SDK.

This reverts commit c377d874be.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-09-23 23:56:08 +08:00
Rosen Penev
85bdd87fc4 tools/e2fsprogs: update to 1.46.4
Refresh patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-22 23:35:20 +08:00
Rosen Penev
7457d9bc2b tools/autoconf-archive: update to 2021.02.19
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-22 23:35:06 +08:00
Rosen Penev
00b400024b tools/sstrip: update to 3.2
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-22 23:34:49 +08:00
Rosen Penev
f20796d631 tools/sparse: update to 0.6.4
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-22 23:34:38 +08:00
Rosen Penev
f2b0893fc0 tools/mtools: update to 4.0.35
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-22 23:34:21 +08:00
Rosen Penev
a62ae81c66 tools/m4: update to 1.4.19
Remove upstreamed patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-22 23:34:11 +08:00
Rosen Penev
164b915c2c tools/fakeroot: update to 1.26
Remove upstreamed patches. Refresh other.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-22 23:34:00 +08:00
Rosen Penev
40614a630c tools/bison: update to 3.8.1
Remove upstreamed patch.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-22 23:33:49 +08:00
Eneas U de Queiroz
49eb757386 libtool: bump to 2.4.6
This updates libtool to its current release, from 2015.  Current patches
were renumbered and given a description text.  The fix in
160-passthrough-ssp.patch is no longer needed.

A patch to speed up build was cherry-picked, and another openwrt
specific patch was needed to not use quotes in $(SHELL), to acommodate
our "SHELL=/usr/bin/env bash" usage.

The already present call to ./bootstrap ensures that generated files are
refreshed, so the patches are applied only to their sources.  Also, that
bootstrap call was adjusted to run at the appropriate time when QUILT=1.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2021-09-21 23:39:32 +08:00
Rosen Penev
41b0200487 tools/pkgconf: update to 1.8.0
Switch to compiling with meson for faster and more reliable compilation.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-19 00:09:29 +08:00
Rosen Penev
3d0dc072f1 tools/pkgconf: update to 1.7.3
Remove upstreamed patch.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-19 00:06:37 +08:00
Jo-Philipp Wich
c2ff1d8c03 pkgconf: always retain -I and -L flags
The pkgconf fork filters -I and -L flag values from .pc files which match
pkgconf's builtin system directory value.

During configure, pkgconf derives the default system include and library
search path values from exec_prefix, which is set to staging_dir/host in
the host tool build phase.

Due to that, pkgconf will drop all -I and -L flags pointing to
staging_dir/host/include or staging_dir/host/lib, unless invoked with
--keep-system-cflags and --keep-system-libs respectively, breaking our
kernel libelf discovery / stack validation workarounds.

In order to inhibit the filtering, add --keep-system-cflags and
--keep-system-libs to our pkg-config shell wrapper.

Fixes: GH#2832
Fixes: 867298cf47 ("tools/pkg-config: Replace with pkgconf")
Ref: https://lists.infradead.org/pipermail/openwrt-devel/2020-March/022182.html
Ref: https://git.openwrt.org/fe43969336201f2cc7d103b68fd6e65989bee184
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Acked-by: Petr Štetiar <ynezz@true.cz>
2021-09-19 00:06:26 +08:00
Rosen Penev
0a3ac3cc02 tools/pkgconf: Run pkg-config wrapper through shellcheck
Mainly quoting fixes.

Separated parameters by \ for easier readability.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-19 00:06:16 +08:00
Rosen Penev
3246dc7f15 tools/pkg-config: Replace with pkgconf
pkgconf is a newer, actively maintained implementation of pkg-config that
supports more aspects of the pkg-config file specification and provides a
library interface that applications can use to incorporate intelligent
handling of pkg-config files into themselves (such as build file
generators, IDEs, and compilers). Through its pkg-config compatibility
interface (activated when it is run as "pkg-config"), it also can
completely replace the original implementation.

It is also lighterweight and does not require glib2, as pkg-config does.

On other distros, pkgconf is symlinked to pkg-config. For simplicity here,
it is renamed to pkg-config.real, as in the original package.

Initial results have been positive. As before, pkgconf works as long as
the pkg-config files point to the proper paths.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[backported upstream fix for Meson]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2021-09-19 00:05:57 +08:00
Rosen Penev
e06ab0c6b3 tools: add meson
meson is a next generation build system designed to have good defaults,
simpler build files, and fast compilation.

It is built upon python and uses ninja for compilation. The latter
provides fast by default (parallel) and problem free compilation.

There are over 40 packages already successfully using meson. The next
commit will convert pkgconf to use meson compilation.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-09-18 23:53:55 +08:00