Commit graph

1928 commits

Author SHA1 Message Date
Andrew Kaster
77e890b15e Meta+Documentation+Ports: Move from C++20 to C++23
Now that oss-fuzz is on a clang commit > the 17.x release candidates,
we can start looking at some shiny new features to enable.
2024-05-06 11:46:28 -06:00
Sergey Bugaev
67f659bb85 Ports/ObjFW: Disable pledge() support 2024-05-02 16:38:28 +02:00
Sergey Bugaev
e3e9c67ab9 Ports: Update ObjFW to 1.1.2
Now that ObjFW is doing releases regularly, we no longer have to use
a Git snapshot.
2024-05-02 16:38:28 +02:00
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