Commit graph

1925 commits

Author SHA1 Message Date
Dan Klishch fa1eef8bbe Toolchain: Update LLVM to 18.1.3
Apart from bumping the toolchain Clang's and port's version, this commit
completely overhauls the way LLVM toolchain is built.

First, it gets rid of a complicated two-stage process of first compiling
clang and compiler-rt builtins and then building libunwind, libc++abi,
and libc++ -- it is possible to create a complete cross-compilation
toolchain in a single CMake invocation with a modern LLVM. Moreover, the
old method was inherently unsupported and subtly broken.

Next, it utilizes full potential of the Stubs "framework". Now we are
even able to compile Clang with -Wl,-z,defs which makes one of the
patches obsolete and the whole installation less error-prone. Note that
it comes at a cost of complicating the bootstrap process on a completely
novel architecture but this hopefully won't happen often.

Lastly, it fixes handling of the -no*lib* family of flags in the
Serenity LLVM driver and correctly uses -nostartfiles in conjunction
with stubs to make necessary CMake configure-time checks succeed.
2024-04-18 13:14:33 -06:00
Dan Klishch 3bd1305218 Ports/zig: Copy LLVM patches instead of symlinking them
LLVM toolchain is about to get updated to 18.1.3, which would desync
these patches.
2024-04-18 13:14:33 -06:00
Fabian Dellwing fc0d447adb Ports: Update jq to 1.7.1 2024-04-17 19:43:35 +02:00
Fabian Dellwing 1c381b34e9 Ports: Add oniguruma 2024-04-17 19:43:35 +02:00
Jelle Raaijmakers da60529ab8 Ports: Update ScummVM to 2.8.1 2024-04-10 21:12:25 +02:00
Fabian Dellwing 3a0e69d86f Ports: Enable more poppler features
We now link against `boost`, `lcms2` and `openjpeg`.

We also depend on `gpgme` but don't link against it because of #23557
2024-04-07 16:35:22 +02:00
Fabian Dellwing 65fd70c890 Ports/gpgme: Prefix CMakeConfig file with ${CMAKE_SYSROOT}
The automatically created CMakeConfig file was not working for
cross-compilation. We now prefix the path with `${CMAKE_SYSROOT}`
to have it work on host and target.
2024-04-07 16:35:22 +02:00
Tim Ledbetter eff9460bf8 Ports/stockfish: Update to version 16.1 2024-04-07 14:09:45 +02:00
Timothy Flynn 9af8c61b29 Ports: Update ports that depend on LibCore to depend on LibCoreMinimal
Looks like we need to be explicit for make-based ports.
2024-03-31 19:22:32 +02:00
Fabian Dellwing 6cd09cc75c Ports: Add gpgme 2024-03-29 17:00:34 +01:00
Fabian Dellwing fdff0db5bf Ports: Update gnupg to 2.4.5 2024-03-29 17:00:34 +01:00
Fabian Dellwing e35bf57e01 Ports: Update ntbtls to 0.3.2 2024-03-29 17:00:34 +01:00
Fabian Dellwing c98d9b20f8 Ports: Update npth to 1.7 2024-03-29 17:00:34 +01:00
Fabian Dellwing 800a712930 Ports: Update libksba to 1.6.6 2024-03-29 17:00:34 +01:00
Fabian Dellwing 2ef44412c4 Ports: Update libgpg-error to 1.48 2024-03-29 17:00:34 +01:00
Fabian Dellwing e0544def45 Ports: Update libgcrypt to 1.10.3 2024-03-29 17:00:34 +01:00
Fabian Dellwing b0a026acdd Ports: Update libassuan to 2.5.7 2024-03-29 17:00:34 +01:00
Fabian Dellwing bc605ebb9c Ports: Add openjpeg 2024-03-29 17:00:34 +01:00
Kenneth Myhra 816e0c14c3 Ports: Update glib to 2.80.0 2024-03-27 16:19:15 +01:00
Kenneth Myhra 5cbb18ac90 Ports: Update curl to 8.7.1 2024-03-27 16:19:15 +01:00
Julian Offenhäuser 003ac1bd51 Ports: Update openrct2 to version 0.4.9 2024-03-25 14:11:26 +01:00
Julian Offenhäuser 87f51ef7dd Ports: Update gemrb to version 0.9.2 2024-03-25 14:11:26 +01:00
LekKit bb5ad12e43 Ports: Update rvvm to 0.6
- New upstream stable version is available
- Networking is now fully stable and enabled by default
- SDL2 backend is now available alongside SDL1, so switch to it
- Fixed a name collision of PAGE_SIZE with Serenity headers
- Disable threaded IO on Serenity for now
- Many other changes and fixes
- See https://github.com/LekKit/RVVM/releases/tag/v0.6 for more
2024-03-23 13:00:44 +01:00
Jan200101 466f1f5bf3 Ports: Update lite-xl to 2.1.3 2024-03-14 15:42:58 +01:00
Sönke Holz 3d48c55e50 Ports: Add missing dependency on glu to sdl12-compat 2024-03-12 17:44:14 +01:00
djwisdom 9a18566850 Ports: Update serenity-theming use latest commit 955c253 2024-03-07 11:51:25 +00:00
Tim Schumacher b9a5442b59 Ports/zlib: Switch to tarball copies hosted on GitHub
zlib.net uses DDoS protection, which results in broken downloads
whenever a browser validation page is served instead. The tarballs that
are uploaded to GitHub releases are identical with the ones that are
served on zlib.net.
2024-03-05 18:16:09 +01:00
ddorando 1986693edc Ports: Fix libjodycode and jdupes download
The author unpublished everything on github and moved to codeberg.
The different hashes come from the new platform packaging the
tarfiles differently than before.
2024-03-05 03:24:16 +01:00
Linus Groh 872bf51d8f Ports: Update Python to 3.12.2
Released on 2024-02-06.
https://www.python.org/downloads/release/python-3122/
2024-03-04 00:36:42 +01:00
Refrag 83ac705167 Ports: Fix SRB2 asset file download
This patch fixes the download error that recently started occuring with
the asset file. The team over at STJR decided to disable the service we
were using to download the asset so we had to find an other way.

This downloads the full Windows zip file that contain the libraries,
executable and assets, we only copy the necessary assets over.
It's not as pretty but it does the job at least! :^)
2024-03-03 22:34:22 +01:00
Julian Offenhäuser bf9240c7a9 Ports: Update OpenRCT2 to version 0.4.8 2024-02-24 23:26:26 +01:00
Julian Offenhäuser 9b1b8828b4 Ports: Add xmp-cli (Extended Module Player) 2024-02-24 02:55:05 +01:00
Julian Offenhäuser d429b2ff6d Ports: Add libxmp
This is a library that can render most tracker module files into a PCM
buffer.
2024-02-24 02:55:05 +01:00
Julian Offenhäuser cbecd096c2 Ports: Fix broken syntax in Milkytracker package script 2024-02-22 15:50:13 +01:00
Jelle Raaijmakers b2eaed43e9 Ports: Remove LibGL workarounds
Now that ports can find our OpenGL headers and shared library, remove
all configuration and patches that was previously needed to make ports
compile with LibGL.
2024-02-22 03:48:08 +01:00
Jelle Raaijmakers e54e2a5a4f Ports: Patch curl CMake issue
The CMake syntax was a bit too new for our toolchain's CMake. The
following patch was backported:

  b2497a8d15

Relevant issue:

  https://github.com/curl/curl/issues/12920

As soon as the fix lands in the next curl version, we can remove this
patch again. :^)
2024-02-21 22:24:42 +01:00
Julian Offenhäuser 420c54a21b Ports: Add app category hotkey for Milkytracker
Missing the & caused it to register as a different category entirely.
2024-02-21 21:53:42 +01:00
Refrag f77e91e0f0 Ports: Remove SRB2 mouse hacks
This patch builds off the previous commit and removes the mouse hacks
entirely as they are not needed anymore.

With this, Sonic Robo Blast 2 now correctly locks the mouse inside the
game and makes for a much better playing experience! :^)
2024-02-20 00:20:18 +01:00
Refrag 33b772a7fa Ports: Implement SDL2 mouse warping
This patch implements the mouse warping functionality of SDL2.
This adds a WarpMouse function implementation to the SDL2 port.
SDL2 will then be able to use this for it's relative mouse mode
implementation.

With this, multiple ports depending on SDL2 now correctly lock the
mouse inside the window and it improves the experience significantly.

Note that as of now, you may need to pass the kernel argument
'vmmouse=off' in order to test these changes properly.
2024-02-20 00:20:18 +01:00
Jelle Raaijmakers 66859c8cd8 Ports/SDL2: Support ShowMessageBox before VideoInit
An SDL2 application is allowed to show a message box before the video
subsystem is initialized. This change makes sure GUI::Application is
initialized.

An example of this is SRB2: the process forks itself to let the child
process install itself as the signal handler and deal with errors. This
child process could try to show a message box long after the video
subsystem was initialized, but since it is a forked process there is no
static state for GUI::Application or the connection to the window
server and the process would crash because of a null dereference.
2024-02-15 12:33:23 +01:00
Jelle Raaijmakers 50bba8d9fc Ports: Add glu as a dependency to SRB2
SRB2 will try to load libGLU.so.1 dynamically if started with the OpenGL
renderer, so add it as a dependency. The game still crashes immediately,
but this brings us one step closer :^)
2024-02-12 18:01:22 +01:00
Jelle Raaijmakers 401a37417b Ports: Update glu to 9.0.3
This necessitates a switch to the Meson build system. A nice side effect
of this is that we now build & install the shared library for glu as
well.
2024-02-12 18:01:22 +01:00
Refrag 4fbc701721 Ports: Add Sonic Robo Blast 2
This commit adds Sonic Robo Blast 2, a Sonic fangame running with SDL2
to the list of SerenityOS game ports.
The game is working fine for the most part but there's some performance
issues and the mouse never resets to the center so it gets stuck in the
window's corners. It seems like the multiplayer / networking is also
not quite working but I think that this is very cool already.
2024-02-09 23:10:18 +01:00
Kenneth Myhra e8a20b3c3e Ports: Update mc to 4.8.31 2024-02-07 15:04:21 +01:00
Kenneth Myhra 45f827f58c Ports: Update glib to 2.79.1 2024-02-07 15:04:21 +01:00
Kenneth Myhra e865b3e3ab Ports: Update curl to 8.6.0 2024-02-07 15:04:21 +01:00
Tim Ledbetter bf0b114bde Ports/devilutionX: Update to version 1.5.2 2024-02-06 15:44:33 +01:00
Jelle Raaijmakers 6b08b43a1e Ports: Update URL for qt6-qt5compat
They moved the file from `official_releases` to `archive` :^)
2024-02-06 08:46:10 +01:00
Fabian Dellwing ef9bfe3499 Ports: Update poppler to 24.02.0 2024-02-04 23:58:52 +01:00
Fabian Dellwing e8b5055349 Ports: Update zlib to 1.3.1 2024-01-23 18:31:00 +01:00