Commit graph

747 commits

Author SHA1 Message Date
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
Jelle Raaijmakers 11f1753be1 Ports: Unset env vars after configure in php
These environment variables would linger after the `php` port was done
building. This would pose issues in the future if other ports depend on
this package, since these vars then leak into the build scripts.
2022-01-08 00:45:49 +01:00
Jelle Raaijmakers 40737341a8 Ports: Update php port to version 8.1.1 2022-01-08 00:45:49 +01:00
Jelle Raaijmakers 5293832fc3 Ports: Reinstate config.sub patch for libogg
Commit fee43e3544 broke the `libogg` port build by removing the
`config.sub` patch. This reinstates that patch.
2022-01-08 00:24:23 +01:00
Martin Bříza ddeacce905 Ports/qt6: Add qt6-serenity
And this is the platform plugin we need to run Qt6 apps properly
2022-01-07 18:38:32 +01:00
Martin Bříza ac762c5520 Ports/qt6: Add a very basic Qt6 Base package
It's necessary to have a working serenity platform plugin for it to work
with GUI applications
2022-01-07 18:38:32 +01:00
Erlend Lind Madsen aa6e5e8cdc Ports: Describe in README that 'depends' is an array
The README previously described `depends` as a space-separated
string. This is now changed to an array, which seem to be the
correct type used in the other Ports.
2022-01-07 14:57:50 +03:30
Brian Gianforcaro e2e9560580 Ports/stress-ng: Remove patches which disable lchown testing
Serenity's LibC now supports lchown, so we no longer need to disable
these stressors. The port can build and run cleanly without these
patches.
2022-01-06 18:52:26 -08:00
Brian Gianforcaro c21622ff4d Ports/stress-ng: Update to the latest version - v0.13.10 2022-01-06 18:52:26 -08:00
Noah Rosamilia f3b5f03b2a Ports: Add npiet
Add interpreter for piet programming language
https://www.bertnase.de/npiet/
https://www.dangermouse.net/esoteric/piet.html
2022-01-07 02:12:51 +01:00
Noah Rosamilia e570f9abc5 Ports: Add libgd
Required for npiet port
2022-01-07 02:12:51 +01:00
Rafał Babiarz ea90a1ebac Ports: Add liboggz port 2022-01-06 23:19:20 +01:00
Tim Schumacher fa902cd5d5 Ports: Fix the sha256sum for libjpeg
While the modification time still points back to 2020, it looks like the
tarball got updated secretly.
2022-01-05 22:53:53 -08:00
Rafał Babiarz fee43e3544 Ports: Updated libogg to version 1.3.5 2022-01-05 16:35:49 -08:00
Daniel Bertalan 84c6d6649e Toolchain: Fix building the aarch64 toolchain
The `aarch64/t-aarch64` makefile fragment needs to be included for the
aarch64-specific parts of GCC to be built. Before 738e52da5, this was
done implicitly, but now it is not. This caused the following error when
building the toolchain: "aarch64-builtins.o: No such file or directory".
2022-01-04 17:40:09 +00:00
Andrew Kaster 4dc538da0e Ports: Remove build-crt patch from llvm
This patch has been integrated into the toolchain.patch file.
2022-01-03 11:08:45 +00:00
Liav A 4abc2f669a Ports: Add pfetch utility
This is a nice and small utility that prints system info based on POSIX
interfaces only.
2022-01-01 17:35:17 +00:00
Jelle Raaijmakers 8d8f74e334 Ports: Implement SDL_QUIT event in Tux Racer
This allows the user to close Tux Racer by closing the window.
2021-12-30 14:24:29 +01:00
Brian Gianforcaro e308536005 Ports/gdb: Add basic ptrace based native target for SerenityOS/i386
This patch adds a ptrace based gdb backend, which is then enlightended
to known how to read the serenity i386 registers via ptrace.

This is just a basic implementation to get the port bootstrapped.
2021-12-29 03:17:41 -08:00
Brian Gianforcaro 6137b9f272 Ports/gdb: Fix compiler -fpermissive warnings from using latest GCC
These are compilation errors coming form upstream gdb.
2021-12-29 03:17:41 -08:00
Daniel Bertalan 9f2e8683de Ports/gdb: Use mmap instead of malloc for sigaltstack()
Stack regions can't be made volatile, which makes it impossible for
malloc to manage memory that's used for `sigaltstack()`. Let's use mmap
instead.

Co-authored-by: Idan Horowitz <idan.horowitz@gmail.com>
2021-12-29 03:17:41 -08:00
Brian Gianforcaro bd3bbd0329 Ports: Add initial GDB 11.1 port
This builds and runs, but crashes when you attempt to try to debug
something at the moment.
2021-12-29 03:17:41 -08:00
Brian Gianforcaro ec21edb602 Ports: Update stress-ng port to 0.13.09
This change updates the port to the latest version, as part of that work
I basically reported the application, as we have added a lot of LibC
functionality which we were missing before. I've also updated the port
to mark stressor's we don't support as nops, instead of trying to avoid
compiling them at all. This will make the port much easier to maintain
in the future.
2021-12-28 11:00:51 +01:00
Javier Alvarez 4b47daaadc Ports: Make lua buildable on x86_64
Our lua Makefile patch contained hardcoded binaries from the i686
toolchain. Use the CC, AR, and RANLIB variables from .port_include.sh
instead to make it architecture independent.
2021-12-28 00:24:32 +01:00
Jelle Raaijmakers b3672236bd Ports: Add Tux Racer
The patches take care of a port from SDL1 to SDL2 and replace the
keyboard mapping logic, which will otherwise take a whopping 16 GiB of
memory to run.
2021-12-27 11:58:43 +01:00
Jelle Raaijmakers 02647fd485 Ports: Add Mesa GLU
This is a dependency for Tux Racer, and is compiled against Serenity's
LibGL.
2021-12-27 11:58:43 +01:00
Jelle Raaijmakers ce37c138b4 Ports: Compile SDL2_mixer with libmodplug support 2021-12-27 11:58:43 +01:00
Daniel Bertalan dbdb6abdb9 Ports/libuv: Fix build failure due to missing statfs() function
In 43c27e8, I mistakenly deleted the patch that removed calls to the
statfs() function, which we do not have. This made building the port
with a clean source tree fail.

This commit changes `libuv` to use our statvfs() function instead.
2021-12-27 02:02:03 -08:00
Daniel Bertalan d70595c09e Ports/tr: Remove obsolete getopt.h patch 2021-12-24 17:02:40 +03:30
Daniel Bertalan 05ce5d82fe Ports/stress-ng: Remove obsolete patches
The following features are now available in the system, making these
patches unnecessary:
- isblank() function
- SIGSTKSZ constant
- MS_SYNC and MS_ASYNC msync() flags
- EDQUOT errno constant
2021-12-24 17:02:40 +03:30
Daniel Bertalan 1c054ac56e Ports/mrsh: Remove obsolete PIPE_BUF patch
We now have this macro in LibC.
2021-12-24 17:02:40 +03:30
Daniel Bertalan 7893ae4233 Ports/mandoc: Remove obsolete patches
Since the creation of the port, we gained support for nanosleep(),
WSTOPSIG(), and the getopt family of functions is now available in
unistd.h.
2021-12-24 17:02:40 +03:30
Daniel Bertalan 29960faf20 Ports/m4: Remove obsolete wint_t patch 2021-12-24 17:02:40 +03:30
Daniel Bertalan de5937b45e Ports/m4: Fix build error
The addition of the siginfo() function to LibC caused this port to
enable its stack overflow detection feature which, however, depends on
more features that we don't have.
2021-12-24 17:02:40 +03:30
Daniel Bertalan 5b8098497e Ports/libxml2: Remove obsolete ESHUTDOWN errno patch 2021-12-24 17:02:40 +03:30
Daniel Bertalan 43c27e891b Ports/libuv: Remove obsolete statfs/pwrite patch 2021-12-24 17:02:40 +03:30