Commit Graph

782 Commits

Author SHA1 Message Date
Jelle Raaijmakers
f7de7501d4 Ports: Set config.sub path for SDL2_mixer
This path needs to be set, or otherwise SDL2_mixer will not build.
2022-01-21 22:07:25 +01:00
Fragstiller
07faa6f670 Ports: Remove redundant ensure_new_config_sub call 2022-01-22 00:31:57 +03:30
Fragstiller
673e81b90b Ports: Relocate use_fresh_config_sub check to do_configure() 2022-01-22 00:31:57 +03:30
Brian Gianforcaro
bcfc87fcc2 Ports: Add a port of tig 2.5.5 2022-01-18 08:50:40 +01:00
Brian Gianforcaro
3fdc2d8dcf Ports/readline: Fix config.sub refresh for the readline port
The new `use_fresh_config_sub` option puts the config.sub in the root of
the tree, but `readline` puts it in the `support/` folder. So we need to
tell the ports infrastructure to place the file in that folder.
2022-01-18 08:50:40 +01:00
Ali Mohammad Pur
63b02859bc Meta+Ports: Make 'package.sh showproperty' report multiple properties
And use that to avoid shelling out multiple times for checking
properties in lint-ports.py.
2022-01-17 11:17:15 +01:00
Brian Gianforcaro
7a26f6523a Ports/git: Update git to the latest 2.34.1 release 2022-01-17 11:17:15 +01:00
Ali Mohammad Pur
afabfc1964 Ports: Correct the config.sub path for freetype
This regressed in cdd6d68, setting the correct path makes it build
again.
2022-01-16 19:57:37 +03:30
Linus Groh
fc02370dc7 Ports: Regenerate patches for python3 2022-01-16 10:32:50 +03:30
Ali Mohammad Pur
bbd4343b31 Ports: Regenerate patches for bash 2022-01-16 10:32:50 +03:30
Ali Mohammad Pur
ae94825cf6 Ports: Regenerate patches for pcre 2022-01-16 10:32:50 +03:30
Ali Mohammad Pur
dd9049f6cb Ports: Regenerate the patch readme file for mc 2022-01-16 10:32:50 +03:30
Ali Mohammad Pur
ed87bd7fe1 Ports: Regenerate stress-ng patches
And autogenerate a readme.
This fixes the one patch that wasn't made with git.
2022-01-16 10:32:50 +03:30
Ali Mohammad Pur
f81e28039b Ports: Regenerate the CMake port patches 2022-01-16 10:32:50 +03:30
Ali Mohammad Pur
a906ff5884 Ports: Add ReadMe files explaining port patches that have explanations 2022-01-16 10:32:50 +03:30
Ali Mohammad Pur
d543db0286 Ports: Add a 'dev' mode that uses git to autogenerate patches for ports 2022-01-16 10:32:50 +03:30
Ali Mohammad Pur
cdd6d68b2a Ports: Remove some config.sub patches and download a fresh one if needed
All of these patches did the same thing, which is already in upstream
config.sub.
With this change, we need only add `use_fresh_config_sub=true` to
the package.sh file.
Note that this is not done automatically in case the port has a modified
config.sub file.
2022-01-16 10:32:50 +03:30
Jelle Raaijmakers
a0086c033d Ports: Do not strip debug symbols from ScummVM
Release mode strips the debug symbols from the resulting binaries,
making it harder than necessary to read backtraces.
2022-01-14 21:38:09 +01:00
Kenneth Myhra
2255e8859c Ports/mc: Add Midnight Commander port 2022-01-13 18:46:22 +01:00
Kenneth Myhra
0a3c2d5a8f Ports/vim: Bump version number to 8.2.4066 2022-01-13 18:46:22 +01:00
Luke Wilde
010a37f997 Ports/HalfLife: Do not delete the OpenGL renderer in post install
We can now play Half-Life using LibGL without crashing on launch! :^)
2022-01-13 10:07:45 +02:00
Jelle Raaijmakers
a4e2d93aa2 Ports+LibGL: Replace LibGL context check by ScummVM patch
According to the OpenGL spec, invoking functions without an active
context results in undefined behavior. Since ScummVM seems to be the
only port having issues with our behavior, patch their code instead.
2022-01-12 14:54:18 +01:00
Daniel Bertalan
3cbf20ca5d Ports: Remove obsolete mold patch
This is no longer needed, as both toolchains now support
std::filesystem.
2022-01-12 14:54:12 +01:00
Jelle Raaijmakers
b2e0bf24ef Ports: Add missing GLtron port dependencies 2022-01-12 01:08:38 +01:00
Jelle Raaijmakers
90d70479b8 Ports: Correct EOL in GLtron patch
The line endings for this patch were inadvertently normalized because
of our old `.gitattributes` rules.
2022-01-12 01:08:38 +01:00
Jelle Raaijmakers
c7e021c1f1 Ports: Add GLTron
The patches mainly convert this SDL1 game to SDL2. It has some
graphical artifacts, but it's playable!
2022-01-11 23:47:42 +01:00
Jesse Buhagiar
5e20c45174 Ports: Add Half-Life Port :^)
Add a port of Half-Life, the classic game by VALVe Software
2022-01-11 15:03:55 +01:00
Andrew Kaster
4ebcae9f4f Ports: Add mold port
The port exposes some dynamic loader and toolchain shortcomings,
namely RTLD_NEXT, RTLD_NOLOAD, and std::filesystem. Hopefully we can
discover a ton of multi-threading bugs in Serenity with this port :^)
2022-01-11 11:47:48 +01:00
Linus Groh
b8d640c3f9 Ports: Remove wireguard-tools strsep() replacement patch 2022-01-10 23:47:30 +01:00
Daniel Bertalan
78fa430ca1 Ports: Update bash port to version 5.1.16
The `remove-conflicting-declaration-in-glob` patch seems to not be
needed anymore.
2022-01-10 23:03:24 +01:00
Linus Groh
d099527dbb Ports: Add wireguard-tools
What will it take to port WireGuard to SerenityOS? No idea. But this is
a start :^)
2022-01-10 21:22:41 +01:00
Daniel Bertalan
b19cc3cdcb Toolchain: Backport --update-section support to llvm-objcopy
This commit backports the LLVM commit that adds support for the
`--update-section` flag to llvm-objcopy. We use this feature of GNU
objcopy to embed the symbol map in the kernel.

The corresponding LLVM Phabricator Differential Revision can be found
here: https://reviews.llvm.org/D112116

This patch is identical to the upstream commit, except for two hunks
that had to be changed as they didn't apply cleanly.
2022-01-10 09:55:45 +03:30
Andrew Kaster
da00ccb26a Ports: Add "-ldl" as CMAKE_DL_LIBS in CMake platform patch 2022-01-09 23:32:03 +01:00
Andrew Kaster
d8110e3bac Ports: Add ccache port to make compiling on Serenity more fun :^) 2022-01-09 23:32:03 +01:00
Andrew Kaster
12c352dfc9 Ports: Convert curl port to use CMake, remove two autoconf patches
This removes the shlib hack from the install step, which repackaged the
static library as the shared one. It also has the benefit of making the
port work with the Clang toolchain :^).
2022-01-09 23:32:03 +01:00
Jelle Raaijmakers
1d627f1b2c Ports: Patch out SDL timer lock from ScummVM
This change is backported from upstream master and prevents unnecessary
spam to our debug console about NULL mutexes.
2022-01-09 23:23:01 +01:00
Jelle Raaijmakers
3ce1118af1 Ports: Compile ScummVM with OpenGL support
By default, ScummVM will still run in software rendering mode, but the
options to enable OpenGL will become available.
2022-01-09 23:23:01 +01:00
Jelle Raaijmakers
6e64ad829a Ports: Update ScummVM to version 2.5.1 2022-01-09 23:23:01 +01:00
Noah Rosamilia
860d142c8c Ports: Add interactive mode to .port_include.sh
Running `./package.sh interactive` in a port directory will
spawn a new shell with the serenity build environment set up.
This makes porting software much easier as build commands can
be run interactively instead of having to modify package.sh
just to test things.
2022-01-08 22:43:29 -08:00
Andrew Kaster
3ff7b76502 Ports: Don't try to enable PGO for python3 when cross-compiling
The --enable-optimizations flag attempts to enable PGO. Profile-guided
optimization is great in general, but will not work at all when doing a
cross-compile. If there's a more fine-grained flag for generic
optimization levels that doesn't try to do PGO, we should enable that
instead. The flag also enables `-fno-semantic-interposition`, but our
GCC patches enable that by default for -fPIC anyway, so that's not
necessary.
2022-01-08 18:56:29 +01:00
Andrew Kaster
498d3d8537 Ports: Add $READELF and $HOST_READELF variables to include scripts
Ports such as python require a distinction between host readelf and
target readelf. Set a toolchain-specific varaible for these, but be sure
save off the host readelf binary in case anyone needs it later.

This is part of allowing python to build with the Clang toolchain.
2022-01-08 18:56:29 +01:00
Andrew Kaster
b85c785c12 Ports: Add /usr/local/lib to openssl's library search path
This allows building with the clang toolchain. We might consider a more
global patch in the future for this, it seems a lot of packages need
help to find /usr/local/lib.
2022-01-08 18:56:29 +01:00
Andrew Kaster
0a04f4ae86 Ports: Patch sqlite's configure script to let it build as a shared lib
By telling the libtool-related configure checks that the serenity
platform does in fact support shared libs, we can get a VERSYM-free
shared lib out of sqlite. This probably applies to other ports as well.

Suggested-by: Daniel Bertalan <dani@danielbertalan.dev>
2022-01-08 18:56:29 +01:00
Luke Wilde
87d19dfa28 Ports: Update curl port to version 7.81.0 2022-01-08 14:04:08 +03:30
Luke Wilde
e65052a208 Ports: Update zstd port to version 1.5.1 2022-01-08 14:04:08 +03:30
Luke Wilde
7110c0ecb0 Ports: Update OpenSSL port to version 1.1.1m 2022-01-08 14:04:08 +03:30
Luke Wilde
e9d26fb47d Ports: Update libtiff port to version 4.3.0 and use sha256
This uses sha256 instead of signatures like what has been done for the
other ports.

This version of libtiff uses the version of config.sub which has
Serenity in it, so this port no longer needs any patches! :^)
2022-01-08 13:50:48 +03:30
Jelle Raaijmakers
80626ca51f Ports: Remove unnecessary -lmodplug from tuxracer 2022-01-08 00:56:48 +01:00
Jelle Raaijmakers
2a85abb15d Ports: Fix dynamic load of libmodplug by SDL2_mixer
The configure script for `SDL2_mixer` was trying to find the shared
library for `libmodplug` in the wrong directories and with the wrong
filename. This installs the shared library as `libmodplug.so.1` and
symlinks to it from `libmodplug.so`, and instructs the `SDL2_mixer`
build to search for it in `/usr/local/lib`.

Fixes the build for ports Super-Mario, freeciv and dungeonrush.
2022-01-08 00:56:48 +01:00
Tim Schumacher
d059bafd8a Ports: Include missing signal.h in emu2
This file apparently relies on the fact that `sys/wait.h` _may_ include
symbols from `signal.h`, but as we don't have that (and it isn't a
requirement), let's just add the include for `signal.h`.
2022-01-08 00:46:30 +01:00