100 Commits
Author SHA1 Message Date
Ole André Vadla Ravnås 164a6a4117 deps: Bump to 20261106 2026-11-06 12:18:36 +01:00
Ole André Vadla Ravnås 905c34d3c4 deps: Bump QuickJS to 6f3b5b4 2026-11-06 12:17:38 +01:00
Ole André Vadla Ravnås ce275018bb deps: Bump to 20261103 2026-11-03 22:58:46 +01:00
Ole André Vadla Ravnås d36f16733f deps: Bump lwIP to 6ab7446 2026-11-03 22:56:09 +01:00
Ole André Vadla Ravnås 9c7d38cfdf deps: Bump GLib to f11db63 2026-11-03 22:55:54 +01:00
Ole André Vadla Ravnås 564352a3ea Update URLs of repos moved to frida-forks 2026-10-30 21:53:04 +01:00
Ole André Vadla Ravnås ab8cad860a deps: Support repos outside the frida org 2026-10-30 21:53:04 +01:00
Ole André Vadla Ravnås a3f1a54307 deps: Bump to 20261030 2026-10-30 06:59:05 +01:00
Ole André Vadla Ravnås 67339c8bd5 deps: Bump lwIP to f8424fd 2026-10-30 06:57:35 +01:00
Ole André Vadla Ravnås e000375939 deps: Bump GLib to c366177 2026-10-30 06:57:20 +01:00
Ole André Vadla Ravnås 07e5aa86ee env: Reject pkg-config ignoring PKG_CONFIG_LIBDIR
The pkgconf-pypi shim silently does nothing when it is set, which made
Meson fall back to building all dependencies from source.
2026-10-29 10:15:57 +01:00
Ole André Vadla Ravnås 33c17e8b6f deps: Bump to 20261028 2026-10-28 15:03:06 +01:00
Ole André Vadla Ravnås 25a3a929f5 deps: Bump Vala to fb982b3 2026-10-28 15:01:59 +01:00
Ole André Vadla Ravnås ebfa72caf8 deps: Bump to 20261023 2026-10-23 13:42:39 +02:00
Ole André Vadla Ravnås 549c372972 deps: Bump lwIP to f66dbb5 2026-10-23 13:36:50 +02:00
Ole André Vadla Ravnås b676c08fe3 deps: Bump GLib to eb0af45 2026-10-23 13:36:34 +02:00
Ole André Vadla Ravnås e8454f1d29 deps: Bump libffi to 5cca756 2026-10-23 13:36:11 +02:00
Ole André Vadla Ravnås 81b48e2b6a meson-scripts: Absorb the wrappers directory
The wrappers directory duplicated meson-scripts, which is what the
README tells projects to copy from. Fold the command -v and missing
submodule changes into meson-scripts and drop the duplicate.
2026-10-20 21:36:48 +02:00
Ole André Vadla Ravnås c25f4fe937 wrappers: Initialize any missing submodule
Some repos carry more submodules than releng, and had to tweak the
check locally. Look at what git reports instead.
2026-10-20 20:14:35 +02:00
Ole André Vadla Ravnås 9da8d3ba38 wrappers: Add the canonical build wrappers
Every repo carries identical configure and make wrappers, and they
have started to drift. Keep the canonical copies here so the bump
can sync them, and use command -v, as minimal images lack which.
2026-10-20 19:59:44 +02:00
Ole André Vadla Ravnås e721b04d3c version: Honor FRIDA_VERSION in the environment
Builds from release tarballs have no git metadata and reported 0.0.0.
Let packaging pass the version it already knows.
2026-10-20 18:27:40 +02:00
Ole André Vadla Ravnås f58325abd0 env: Link libstdc++ dynamically in system builds
-static-libstdc++ is for portable prebuilt binaries. A build against
system libraries should use the shared libstdc++ like any other distro
package, and Fedora does not even ship the static archive by default.
2026-10-20 17:12:51 +02:00
Ole André Vadla Ravnås 4d1a68aaac env: Allow % in compiler and linker flags
dpkg-buildflags now adds -Wl,--package-metadata=<url-encoded JSON>,
which ConfigParser rejects under its default interpolation. Machine
files are not interpolated, so turn it off.
2026-10-20 16:45:15 +02:00
Ole André Vadla Ravnås 81274aad92 deps: Bump to 20261022 2026-10-20 13:57:03 +02:00
Ole André Vadla Ravnås e8e3edb820 deps: Bump to 20261021 2026-10-20 13:16:31 +02:00
Ole André Vadla Ravnås 998b29eb5a deps: Bump lwIP to cd9fd95 2026-10-20 13:15:39 +02:00
Ole André Vadla Ravnås 509f023b73 deps: Bump GLib to aac7102 2026-10-20 13:15:25 +02:00
Ole André Vadla Ravnås d127b2fb06 deps: Support partial rolls 2026-10-20 09:43:42 +02:00
Ole André Vadla Ravnås 522f6bdda9 deps: Bump to 20261020 2026-10-20 09:14:35 +02:00
Ole André Vadla Ravnås 902bd8f8dc deps: Bump Vala to 3fa3a69 2026-10-20 09:09:21 +02:00
Ole André Vadla Ravnås 8429c0c9ca deps: Bump V8 to f6d7f66 2026-10-19 09:23:17 +02:00
Ole André Vadla Ravnås 6b7f3c87b9 deps: Bump to 20261019 2026-10-18 16:22:31 +02:00
Ole André Vadla Ravnås 5cee2790a8 deps: Bump glib-networking to c8d811a 2026-10-18 16:19:42 +02:00
Ole André Vadla Ravnås dcadd49b93 deps: Bump to 20261018 2026-10-16 19:42:19 +02:00
Ole André Vadla Ravnås d110412ab2 deps: Bump V8 to 741be48 2026-10-16 19:41:25 +02:00
Ole André Vadla Ravnås 4601e8a75a deps: Bump to 20261017 2026-10-15 19:28:25 +02:00
Ole André Vadla Ravnås a818d9d51e deps: Disable zstd and Brotli in libsoup
The SDK's libsoup picked up the host's zstd, leaving
libsoup-3.0.pc requiring a libzstd the SDK doesn't ship. Pin
zstd off, and drop Brotli support which is of no use here.
2026-10-15 19:25:49 +02:00
Ole André Vadla Ravnås 0ec2e19fae deps: Bump lwIP to 7695262 2026-10-15 15:13:03 +02:00
Ole André Vadla Ravnås 5b89252f69 deps: Bump libbpf to 9c4e176 2026-10-15 15:12:48 +02:00
Ole André Vadla Ravnås e90d23ac94 deps: Bump to 20261016 2026-10-15 14:24:21 +02:00
Ole André Vadla Ravnås a774c57349 deps: Retry truncated bundle downloads
Downloads from build.frida.re occasionally end early without an error,
which only surfaces when xz hits the missing end-of-stream marker and
fails the whole CI job. Download again, up to three attempts.
2026-10-15 14:24:16 +02:00
Ole André Vadla Ravnås a92ee4517a deps: Limit V8 build jobs by memory
Each V8 object can need up to 4 GiB while compiling, so Ninja's default
of CPU count + 2 jobs drives runners into swap.
2026-10-15 08:20:41 +02:00
Ole André Vadla Ravnås e655dcd8af deps: Skip ngtcp2 on QNX
Only the fruity backend uses it, which QNX doesn't build, and the
latest version needs C11 _Generic, which GCC 4.8 lacks.
2026-10-14 21:46:46 +02:00
Ole André Vadla Ravnås 472e574f8b deps: Disable sysprof on QNX
Its latest capture library needs Linux headers, and we don't use it.
2026-10-14 21:46:46 +02:00
Ole André Vadla Ravnås 3efa39ae34 winenv: Use the 64-bit host compiler for x86
The 32-bit-hosted cl runs out of address space on V8's largest
translation units. On a 64-bit OS, pick the x64-hosted toolset that
targets x86 instead; it produces the same code.
2026-10-14 21:46:46 +02:00
Ole André Vadla Ravnås ebd367e77e deps: Skip V8 on big-endian ARM for now
Its snapshot generation trips an assertion in turboshaft's memory
optimizer on those targets; the big-endian port needs updating for
V8 15.7 first.
2026-10-14 21:46:46 +02:00
Ole André Vadla Ravnås 6d3b341184 deps: Skip libunwind tests
Its test suite needs execinfo.h, which Bionic lacks, and nothing in the
SDK runs it.
2026-10-14 21:46:46 +02:00
Ole André Vadla Ravnås 035ad6024e deps: Skip libusb examples and tests
The examples pull in a getopt port that does not build with the current
MSVC, and nothing in the SDK needs them.
2026-10-14 21:46:46 +02:00
Ole André Vadla Ravnås 8286cfbee9 deps: Bump outdated
Bump GLib, Meson, OpenSSL, ngtcp2, V8, libcxx, TinyCC, QuickJS,
compiler-rt, libsoup, lwIP, libbpf, and minizip-ng to their freshly
synced forks. V8 15.7 drops the shared_ro_heap option, and Meson's
option store API changed, so follow suit in meson_configure.py.
2026-10-14 21:46:46 +02:00
Ole André Vadla Ravnås 4e51c61880 deps: Drop extra blank lines between sections 2026-10-05 12:26:54 +02:00
Ole André Vadla Ravnås d6b56b460b deps: Bump to 20261004 2026-10-04 22:28:02 +02:00
Ole André Vadla Ravnås d3d0926f58 deps: Bump QuickJS to 247bfdc 2026-10-04 22:25:38 +02:00
Ole André Vadla Ravnås 1089fe24c2 deps: Skip V8 on the PS5
The payload SDK has no execinfo, which V8 wants, and the console runs
QuickJS anyway.
2026-09-22 23:53:36 +02:00
Ole André Vadla Ravnås e3861e780e deps: Bump lwIP to 00ea2b4 2026-09-22 23:43:47 +02:00
Ole André Vadla Ravnås b8e93e9bd1 deps: Bump GLib to e0cc7c6 2026-09-22 23:43:31 +02:00
Ole André Vadla Ravnås 45b093af10 deps: Bump libunwind to 509f833 2026-09-22 23:43:25 +02:00
Ole André Vadla Ravnås 5c4d1db491 deps: Bump usrsctp to 57b8b42 2026-09-22 23:43:05 +02:00
Ole André Vadla Ravnås 8558bf6774 submodules: Bump Meson 2026-09-22 22:25:34 +02:00
Ole André Vadla Ravnås 2abfd13ffc deps: Bump lwIP to 22a5c04 2026-09-22 15:55:27 +02:00
Ole André Vadla Ravnås a881caa6fd deps: Bump GLib to c49bacb 2026-09-22 15:55:11 +02:00
Ole André Vadla Ravnås d184afbf21 deps: Bump libunwind to a4523a9 2026-09-22 15:54:58 +02:00
Ole André Vadla Ravnås bf6bac3a71 deps: Bump QuickJS to 5925b48 2026-09-22 15:54:53 +02:00
Ole André Vadla Ravnås 1415e16c1f deps: Bump libffi to 3fe3257 2026-09-22 15:54:48 +02:00
Ole André Vadla Ravnås 963fe3826f deps: Bump lwIP to 9122f0d 2026-09-09 00:50:45 +02:00
Ole André Vadla Ravnås cbeb00e54c deps: Bump GLib to 129e8d9 2026-09-09 00:50:30 +02:00
Ole André Vadla Ravnås 4780992736 deps: Bump QuickJS to fd4842d 2026-09-09 00:50:19 +02:00
Ole André Vadla Ravnås a317d0bc26 env: Sign pointers in a kernel SDK again
Rust signs no function pointer, so what is linked beside it was
built not to either. That left Gum unable to speak the ABI at all:
its trampolines returned to signed pointers as if they were plain,
and NativePointer#sign did nothing.

Sign, but leave out the type discrimination the kernel's own ABI
uses: a union of differently typed function pointers is how QuickJS
dispatches, and it cannot survive a discriminator per type. What
crosses to the kernel is signed where it crosses, as before.
2026-09-02 18:26:13 +02:00
Ole André Vadla Ravnås a489078862 deps: Bump compiler-rt to 6694311 2026-09-02 00:28:43 +02:00
Ole André Vadla Ravnås c43b80fe2d Support a bare ARMv7-A machine
The generic ARM flags name armv5t, which has neither Thumb-2 nor the
divide a Cortex-A7 has, and nothing took the float out of the ABI.
Clang also wants the eabi environment rather than elf.
2026-09-02 00:15:36 +02:00
Ole André Vadla Ravnås eadac6ee42 deps: Bump SQLite to ef9edc7 2026-09-01 21:37:07 +02:00
Ole André Vadla Ravnås 00feaf81eb deps: Bump lwIP to 971a7d0 2026-09-01 15:14:52 +02:00
Ole André Vadla Ravnås 7a6bf9e73b deps: Bump GLib to 35d30c9 2026-09-01 15:14:36 +02:00
Ole André Vadla Ravnås ad368d15e9 deps: Bump picolibc to e89d30c 2026-09-01 15:14:03 +02:00
Ole André Vadla Ravnås d883f2236e env: Leave stack probes out of kernel builds
Nothing a kext may link against exports ___chkstk_darwin, so a
kernel collection holding one that needs it will not build.
2026-08-27 19:41:15 +02:00
Ole André Vadla Ravnås b0109c235e deps: Bump lwIP to 2265eb7 2026-08-27 18:25:03 +02:00
Ole André Vadla Ravnås a3652ca930 deps: Bump GLib to 4b0af0a 2026-08-27 18:24:47 +02:00
Ole André Vadla Ravnås a62a9648b7 deps: Bump minizip-ng to 3a87bc9 2026-08-27 18:24:33 +02:00
Ole André Vadla Ravnås e6285c6d3c deps: Bump TinyCC to 3da7432 2026-08-27 18:24:25 +02:00
Ole André Vadla Ravnås f7d30a8ddb deps: Bump QuickJS to 080f16a 2026-08-27 18:24:24 +02:00
Ole André Vadla Ravnås 3cde13484b deps: Bump libiconv to cc24563 2026-08-27 18:24:17 +02:00
Ole André Vadla Ravnås 9600e26274 deps: Bump compiler-rt to 15e5d07 2026-08-27 18:24:15 +02:00
Ole André Vadla Ravnås 3d7da40367 deps: Bump picolibc to 901a484 2026-08-27 18:24:01 +02:00
Ole André Vadla Ravnås de49bff33d env: Keep -dead_strip off bare-metal links
The flavor is detected from the driver's own linker, which on macOS
is Apple's, while a bare-metal target links with LLD. LLD refuses
the option, so every link probe fails and each feature behind one
is detected as missing.
2026-08-27 17:46:13 +02:00
Ole André Vadla Ravnås 9cdc0c0e43 env: Drop pointer signing for a kernel SDK
Rust's arm64e signs no function pointer and authenticates none, so
what is linked beside it must not either. Sign what crosses to the
kernel where it crosses.
2026-08-27 17:46:13 +02:00
Ole André Vadla Ravnås 983eb7432a deps: Let an SDK be built for a Darwin kernel
Compile a machine whose config is kernel with the kernel's ABI,
against no system headers, and against the prefix being filled:
picolibc and the compiler-rt builtins are packages here, as they
are for a machine with no operating system at all.

Say the system is none, which is what a Darwin kernel is to
anything built here, and leave out the packages that belong to an
operating system.

Make a link work, since a build system asks its questions by
linking one: no dynamic linker, and the entry point named.
2026-08-27 17:45:36 +02:00
Ole André Vadla Ravnås 30a82e7a98 devkit: Carry GUnixFDMessage on POSIX
GIO's own gio.h pulls in the rest of the UNIX half but leaves this
one out, so a devkit had no way to hand a descriptor to a peer over
a socket.
2026-08-18 15:26:23 +02:00
Ole André Vadla Ravnås 0cb8c69c7c Make bare addressing an explicit config tag
Read the config as a set of tags, thus a bare flavor says in its name
whether its code is position-independent: softfloat becomes
softfloat_nopic, and softfloat_msabi becomes softfloat_pic_msabi. This
also gives x86 a position-independent flavor, which it had no way to
name before.

A bare target is soft-float in each case now, thus remove the newlib
path that the other targets took.
2026-08-17 11:58:21 +02:00
Ole André Vadla Ravnås de9af916dc deps: Bump TinyCC to ca5ee01 2026-08-16 22:22:11 +02:00
Ole André Vadla Ravnås f6b1b84279 Say what a bare-metal target needs to be built
The SDK that would have supplied a compiler is what is being built,
so either a triplet names the toolchain or the tools are named
outright. "No C compiler found" on a box full of them helps nobody.
2026-08-16 18:04:05 +02:00
Ole André Vadla Ravnås c17fd5c7c4 Add a bare x86_64 flavor for Windows kernels
The one we had suits a Linux module: System V, and not position
independent — the module loader resolves no GOT relocation, and the
kernel code model expects the top 2GB. A Windows kernel follows
another convention, and the agent's text is mapped a second time
into each instrumented process, shared, so that flavor is position
independent instead.

Soft float is what kernel mode means rather than what either
convention says, so both carry it. The convention is a property of
the machine rather than the toolchain, so it rides in the machine
file for whoever generates or inspects the code.
2026-08-16 18:03:59 +02:00
Ole André Vadla Ravnås 0ad9eef364 Link the bare soft-float flavor no-pie
Everything in it is built -fno-pic, so a distribution whose driver
defaults to PIE rejects the resulting R_386_32 relocations outright.
Only 32-bit x86 minds, its addressing having nowhere else to go.

Straight to the linker: clang swallows the driver spelling when it is
gcc doing the link.
2026-08-13 17:53:44 +02:00
Ole André Vadla Ravnås 96822d2d1f deps: Bump lwIP to 0217c5d 2026-08-13 16:19:09 +02:00
Ole André Vadla Ravnås aebf2c982f deps: Bump GLib to 9ba86ea 2026-08-13 16:18:51 +02:00
Ole André Vadla Ravnås b04f261133 deps: Bump lwIP to fed6118 2026-08-13 13:34:00 +02:00
Ole André Vadla Ravnås ffe2787c0b deps: Bump GLib to 90899c5 2026-08-13 13:33:47 +02:00
Ole André Vadla Ravnås a43eaeea59 deps: Bump libffi to 2b42587 2026-08-13 13:33:29 +02:00
Ole André Vadla Ravnås 133da80486 deps: Bump picolibc to d755323 2026-08-13 12:56:44 +02:00
Ole André Vadla Ravnås b2d3be9088 Add the none-x86-softfloat flavor
Share the soft-float flags both x86 bitnesses need and keep the
64-bit-only ones — the red zone, the kernel code model and the IBT
pair — with x86_64. clang has no i386 bare-metal triple under the
arch's own name, so map it to i686, and skip the hard-float arch
flags, which -mfpmath=sse would contradict.
2026-08-13 12:52:01 +02:00
Ole André Vadla Ravnås 8c538efb90 deps: Bump lwIP to 953b5a1 2026-08-13 00:17:37 +02:00
Ole André Vadla Ravnås 8de84b4d79 deps: Bump GLib to b9f6f85 2026-08-13 00:17:24 +02:00