Commit Graph

135 Commits

Author SHA1 Message Date
Zaggy1024
9f44fcbded Everywhere: Remove AudioCodecPlugin and Qt Multimedia
These are no longer needed now that audio is played through
PlaybackManager.
2025-10-27 17:28:49 -07:00
Undefine
bd8c6c1431 Meta: Add the dbus feature to qtbase
D-Bus is needed for Qt to build its accessibility support and since we
build D-Bus regardless it doesn't add any overhead.
2025-10-22 13:54:54 +02:00
Undefine
5fd0586125 Meta: Build dbus on FreeBSD 2025-10-22 13:54:54 +02:00
R-Goc
24ace9f183 Vcpkg: Disable cpptrace for freeBSD
Cpptrace is not supported on freeBSD, so until that changes it will not
be built from vcpkg.
2025-10-10 12:46:20 +02:00
R-Goc
3c7bad32cd AK: Clean up backtraces
This commit replaces the default backtrace logic with cpptrace, for
nicer, colored backtraces. Cpptrace runs on all of our supported
platforms excpet android. As such backtrace.h is left in place.

All the backtrace functions are made noinline to have a consistent
number of frames. A maximum depth parameter is added to dump_backtrace
with a default of 100. This should be enough, and can be easily
changed, and allows for limiting the maximum depth.

Setting the LADYBIRD_BACKTRACE_SNIPPETS environment variable enables
surrouding code snippets in the backtrace. Specifically 2 lines above
and below. This number can be changed by calling snippet_context on the
formatter. For the whole list of options of what can be done with
formatting see the cpptrace repository.

On Windows we skipped frames when verification fails and when
dump_backtrace was added the logic was wrong and would have skipped
frames we care about.

This commit also implements skipping frames on Linux.
The only time where this does not skip all frames is when the call to
backtrace gets intercepted. Then we will end up skipping one frame less
than needed.

To keep delayload on Windows a patch and overlay port is used. When
upstream accepts these changes and vcpkg bumps the version the patch
could be removed to have just the cmake define.
2025-10-08 07:07:57 +02:00
Johannes Gustafsson
0ea519c539 LibWeb: Implement XPath functionality using libxml2 2025-10-03 13:16:11 +02:00
InvalidUsernameException
a405d6df67 Meta: Update sdl to version 3.2.22 2025-09-25 21:14:29 -04:00
InvalidUsernameException
e12ae7c7c2 Meta: Update openssl to version 3.5.3 2025-09-25 21:14:29 -04:00
InvalidUsernameException
237b2a76e1 Meta: Update libwebp to version 1.6.0#1 2025-09-25 21:14:29 -04:00
InvalidUsernameException
e3a81d520d Meta: Update ffmpeg to version 7.1.1#5 2025-09-25 21:14:29 -04:00
InvalidUsernameException
2dd1918b10 Meta+Tests: Update fast-float to version 8.1.0
This release comes with a fix for a bug where certain unicode emoji
characters encoded in UTF-16 were mistakenly parsed as integers. This
manifested in keys of an JS object being coerced into integers, i.e.
`{ "⤵️": 42 }` would become `{ "5": 42 }`.

Relevant upstream PR: https://github.com/fastfloat/fast_float/pull/325
2025-09-25 21:14:29 -04:00
InvalidUsernameException
c6ece554ba Meta: Update dirent to version 1.26.0 2025-09-25 21:14:29 -04:00
InvalidUsernameException
7f5d694853 Meta: Update dbus to version 1.16.2#2 2025-09-25 21:14:29 -04:00
InvalidUsernameException
5917c7f6fa Meta: Update curl to version 8.16.0 2025-09-25 21:14:29 -04:00
InvalidUsernameException
a975988f9c Meta: Update vcpkg baseline 2025-09-25 21:14:29 -04:00
Luke Wilde
50dcd8fc85 Meta+WebContent+LibWeb: Add, link and initialize SDL3 2025-09-01 21:10:47 +02:00
Timothy Flynn
6634100914 Meta: Update sqlite3 to version 3.50.4 2025-08-27 13:25:03 +02:00
Timothy Flynn
9f26495988 Meta: Update simdutf to version 7.4.0 2025-08-27 13:25:03 +02:00
Timothy Flynn
f2dbe267ee Meta: Update openssl to version 3.5.2 2025-08-27 13:25:03 +02:00
Timothy Flynn
57bd5baff4 Meta: Update libwebp to version 1.6.0 2025-08-27 13:25:03 +02:00
Timothy Flynn
ca4ac66543 Meta: Update libpng to version 1.6.50 2025-08-27 13:25:03 +02:00
Timothy Flynn
c7e11f1f19 Meta: Update libjpeg-turbo to version 3.1.1 2025-08-27 13:25:03 +02:00
Timothy Flynn
eaeecc8628 Meta: Update ffmpeg to version 7.1.1#4 2025-08-27 13:25:03 +02:00
Timothy Flynn
4d6f11445b Meta: Update vcpkg baseline 2025-08-27 13:25:03 +02:00
ayeteadoe
4fa8238a46 Meta: Install qtbase and qtmultimedia vcpkg ports on Windows 2025-08-23 16:04:36 -06:00
Luke Wilde
a04f2d0796 Meta: Remove curl overlay port
The http3 feature is now upstream, so we no longer need an overlay port
to use it.
2025-08-19 22:08:55 +02:00
Luke Wilde
43c1b1b434 Meta: Bump vcpkg baseline 2025-08-19 22:08:55 +02:00
Luke Wilde
0faf96fa1b Meta/curl: Update to 8.15.0
This includes the patch for issue 17917, so we can remove our custom
patch :^)
2025-07-21 15:09:35 +02:00
Timothy Flynn
0e6ee925f0 Meta+LibJS: Update simdutf to version 7.3.3
This contains a fix for handling invalid trailing padding characters.
2025-07-16 17:03:15 +02:00
Timothy Flynn
66b21eee04 Meta: Update sqlite3 to version 3.50.2 2025-07-16 17:03:15 +02:00
Timothy Flynn
c6ebb7bf55 Meta+LibCrypto: Update openssl to version 3.5.1
This contains an API change that disallows setting the salt to a null
value. See:

4f5ffddfcb

This seems to be the opposite of the intended effect of that change,
but this patch includes a workaround nonetheless.

Co-Authored-By: devgianlu <altomanigianluca@gmail.com>
2025-07-16 17:03:15 +02:00
Timothy Flynn
2d121097c9 Meta: Update libpng to version 1.6.48 2025-07-16 17:03:15 +02:00
Timothy Flynn
d8657e53f0 Meta: Update libjpeg-turbo to version 3.1.0#2 2025-07-16 17:03:15 +02:00
Timothy Flynn
fd499ddb62 Meta: Update dirent to version 1.25 2025-07-16 17:03:15 +02:00
Timothy Flynn
776da5dd6b Meta: Update vcpkg baseline 2025-07-16 17:03:15 +02:00
Undefine
3056e54cd0 Meta: Update ffmpeg
This is update contains fixes for the FreeBSD build
2025-07-15 13:44:54 -06:00
Undefine
1a42fc4fcd Meta: Patch angle vcpkg to build on FreeBSD 2025-07-15 13:44:54 -06:00
Undefine
6645e4efbb Meta: Build QT with vcpkg on FreeBSD
This is a workaround for the fact that on FreeBSD the system icu has
symbol renaming disabled which causes our build to clash with the
expectations of the system QT.
2025-07-15 13:44:54 -06:00
Undefine
f51f067f23 Meta: Don't build libproxy on FreeBSD
The build for it is broken on FreeBSD and doesn't seem to be needed
anyways.
2025-07-15 13:44:54 -06:00
Undefine
515a94c49d Meta: Update vcpkg baseline 2025-07-15 13:44:54 -06:00
Luke Wilde
409758f040 Meta: Enable the zstd feature for curl
This content encoding is used by Facebook.

For example:

```
> GET /rsrc.php/v5/yj/l/0,cross/VNfVTw9fSM1.css HTTP/3
Host: static.xx.fbcdn.net
Accept-Encoding: deflate, gzip, br, zstd
Alt-Used: (nil):0
User-Agent: Mozilla/5.0 (macOS; AArch64) Ladybird/1.0
Accept: text/css,*/*;q=0.1
Accept-Language: en
Sec-Fetch-Dest: style
Sec-Fetch-Mode: cors
Origin: https://www.facebook.com
Sec-Fetch-Site: cross-site
Referer: https://www.facebook.com/
```

The response (with some headers removed for brevity):
```
< HTTP/3 200
< content-encoding: zstd
< content-type: text/css; charset=utf-8
< last-modified: Mon, 01 Jan 2001 08:00:00 GMT
< expires: Fri, 10 Jul 2026 07:47:17 GMT
< cache-control: public,max-age=31536000,immutable
< content-length: 7448
< date: Fri, 11 Jul 2025 11:52:03 GMT
< access-control-allow-origin: https://www.facebook.com
* Added alt-svc: static.xx.fbcdn.net:443 over h3
< alt-svc: h3=":443"; ma=86400
< priority: u=3,i
<
```
2025-07-11 14:16:07 +02:00
Olekoop
e65a38bb0e Meta: Enable Vulkan and ANGLE when compiling for Android
Vulkan seems to have been disabled due to not being able to compile.
However, it compiles on my machine and it works on my phone.

As for ANGLE, someone just forgot about Android.
2025-07-10 15:44:53 -06:00
Olekoop
af2d46bd3d LibMedia+Meta: Enable FFmpeg under Android and remove the stubs
The licensing issue seems to be resolved (#2214).
The stubs are not longer necessary. Even if they were, they do not
compile properly.
2025-07-10 15:44:53 -06:00
Olekoop
f6c90d00a9 Meta: Don't compile libproxy for Android
libproxy isn't availiable for Android.
2025-07-10 15:44:53 -06:00
ayeteadoe
8b778de36b Meta: Update vcpkg for patched libjxl port and remove our overlay port 2025-07-09 17:52:32 -06:00
Luke Wilde
08a03534af Meta+RequestServer: Enable HTTP/3 for curl
This adds an overlay port for curl that adds the features required for
HTTP/3.

This is not quite compatible with the upstream vcpkg.json, because
enabling HTTP/2 makes it use the default SSL backend, which is
sectransp for macOS and schannel on Windows. These backends are not
compatible with ngtcp2. Additionally, we can not build curl with
multiple SSL backends when using ngtcp2.

I couldn't find a way to selectively disable/enable dependencies based
on what features are enabled, so I made HTTP/2 pick OpenSSL in our
overlay port. Upstream vcpkg will likely want to support wolfSSL and
GnuTLS backends for ngtcp2, so they'll be additional work to get this
into upstream.
2025-07-09 14:44:56 -06:00
Luke Wilde
993d8df29b Meta: Add overlay port for curl
This will be used to add HTTP/3 support.
2025-07-09 14:44:56 -06:00
Timothy Flynn
62d9a84b8d AK+Everywhere: Replace custom number parsers with fast_float
Our floating point number parser was based on the fast_float library:
https://github.com/fastfloat/fast_float

However, our implementation only supports 8-bit characters. To support
UTF-16, we will need to be able to convert char16_t-based strings to
numbers as well. This works out-of-the-box with fast_float.

We can also use fast_float for integer parsing.
2025-07-03 09:51:56 -04:00
Timothy Flynn
504be366a2 Meta: Pin harfbuzz to 10.2.0 for now
Several of us (including our WPT runner) are getting linker errors with
11.2.0, as Qt is pulling in the system harfbuzz.
2025-07-02 17:02:06 +02:00
Ali Mohammad Pur
408694ab4f Meta: Update vcpkg baseline
This bump includes a new version of meson that unbreaks the build on
macOS 26 with xcode 26.
2025-07-02 13:27:02 +02:00