Commit Graph

716 Commits

Author SHA1 Message Date
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
Daniel Bertalan
a28ad600f2 Ports/libicu: Remove obsolete <cmath> header patch
All issues with `cmath` have been resolved quite some time ago, and
ICU seems to build without issues.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
f35b6ee3fc Ports/emu2: Remove obsolete scandir patch 2021-12-24 17:02:40 +03:30
Daniel Bertalan
ff4787ad2d Ports/chester: Enable -Werror
We no longer emit compiler warnings on deprecated/unsafe functions like
strcpy, so building more ports with -Werror is possible.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
9418d4bf25 Ports/byacc: Remove obsolete getopt.h patch
We (correctly) declare getopt() and the related variables in unistd.h,
so this patch is unnecessary.
2021-12-24 17:02:40 +03:30
Daniel Bertalan
55a42906a7 Ports: Remove obsolete /dev/tty patches 2021-12-24 17:02:40 +03:30
Ali Mohammad Pur
39b5bb4162 Ports: Upgrade CMake to 3.22.1
That's the latest release, and includes one of the patches we had - so
we can drop that patch :^)
2021-12-24 17:01:10 +03:30
Daniel Bertalan
e539a1d077 Ports/cmake: Remove obsolete conflicting declaration patches
I'm not quite sure why, but CMake compiles fine without these.
2021-12-24 17:01:10 +03:30
Ali Mohammad Pur
f7b399da44 Ports: Fix the conflicting types issue in the cmake port
This patch is pending upstream, but until then, let's keep it locally to
make the port work :^)
2021-12-24 17:01:10 +03:30
Brian Gianforcaro
4490668af2 Ports: Add fio port
fio allows you to test various different IO subsystems and patterns.
It can help us test and benchmark the I/O subsystems of Serenity.

This port gets the fio bootstrapped and working, using the included
.fio file, I have been able to test the file I/O performance already.
2021-12-22 13:28:13 -08:00
Idan Horowitz
ba9a525ba6 Ports: Remove obsolete siginfo_t::si_error Python3 patch 2021-12-22 22:53:56 +02:00
Tim Schumacher
48dc28996d Ports: Update Python patches for the recent signal changes
The old patch to define `HAVE_SIGSET_T` is no longer needed, as we now
have implementations for `sigwaitinfo` and `sigtimedwait`.

Instead, for the same reason, we now have to remove a reference to
`si_errno`, which we haven't implemented yet but is just assumed to be
there.
2021-12-22 11:28:20 +01:00
Tim Schumacher
1145638de5 Ports: Remove wchar parts from openssh patches 2021-12-21 20:35:52 -08:00
Tim Schumacher
939469c831 Ports: Remove wchar patch from dosbox-staging 2021-12-21 20:35:52 -08:00
Tim Schumacher
ee994832cf Ports: Remove wstring patch from LLVM
One of the chunks in `remove-wstring.patch` was not wchar-related and
has been moved to `insert-ifdef-serenity.patch` instead.
2021-12-21 20:35:52 -08:00
Tim Schumacher
e6c90a3048 Ports: Remove the cmake wstring patch 2021-12-21 20:35:52 -08:00
Ben Reeves
58ec2f688b Ports/ncurses: Check for proper tic version during install
MacOS ships with an out of date ncurses that can't properly generate
terminfo from the newer source code. This change checks for a valid
`tic` executable of the proper version, first in PATH and then in
the Homebrew cellar if brew is installed. Otherwise it aborts
installation.

See comment in the code as well as the following for details:
https://github.com/termux/termux-packages/issues/4487#issuecomment-626277493
https://lists.gnu.org/archive/html/bug-ncurses/2019-07/msg00020.html.
2021-12-20 10:45:52 -08:00
Rafał Babiarz
196bd11743 Ports: Add libssh2 port 2021-12-20 10:43:47 -08:00
Rafał Babiarz
ef1d4aab73 Ports: Updated lua port to version 5.3.6 2021-12-17 03:25:52 -08:00
Rafał Babiarz
39e3c68e94 Ports: Updated links port to version 2.25 2021-12-16 22:45:05 +01:00
Daniel Bertalan
2c1a6ce9a5 Ports: Update gcc patch to match the toolchain 2021-12-16 21:27:03 +02:00
Daniel Bertalan
edb810f854 Ports: Remove obsolete openssh password prompt patch
As of 8dd11ae, we have `/dev/tty`, which is used by openssh's built-in
read_passphrase function to access the TTY, making our patch
unnecessary.

Removing it also fixes a subtle issue: we did not handle the case of
stdout not being a TTY correctly, so prompts failed to show up when e.g.
the ssh process was being piped to. This made `git clone` not work when
the server's fingerprint was not already verified.
2021-12-13 00:12:28 +01:00
Sahan Fernando
398f1ca842 Ports: Don't return errno value as pointer in openssh port 2021-12-12 13:16:55 +02:00
Linus Groh
db610d0cd6 Ports: Restore Python's setup.py patch
It appears that the patch still applied partially, which led to me
believing our changes were fully upstreamed. Only the _uuid module
specific changes didn't apply and are no longer needed, so simply
restore the other ones that I removed.
2021-12-12 00:23:04 +00:00
Linus Groh
6d9a1d3c93 Ports: Update Python to 3.10.1 :^)
This was released a couple of days ago, on 2021-12-06 and contains
various changes that we previously needed custom patches for, so we are
now able to remove those and compile more unchanged upstream sources.
Thanks to Rodrigo for making that effort! :^)
2021-12-11 19:02:00 +00:00
Nathan Ell
a1580a1d00 dos2unix: Swap to official signature validation
In the initial port of dos2unix, there was a miss in the validation
of the files. Let's switch to the original author's official
signed verification of the source :^)
2021-12-09 09:48:43 +01:00
Andreas Kling
78252d7777 Ports: Add SHA256 checksum to dos2unix port 2021-12-08 10:48:39 +01:00
Nathan Ell
444a7eb929 dos2unix: Introduce dos2unix port
Port the ubiquitous dos2unix tool to Serenity. Dos2Unix is a suite of
tools for converting file line endings, from dos/mac to unix and unix
to dos/mac.
2021-12-08 09:20:04 +01:00
Daniel Bertalan
e88ca09609 Ports: Upgrade LLVM to version 13.0.0
With this update, we now use our custom `serenity` Clang target, which
means that all system-specific compilation options (e.g. default PIE,
header search paths) will be handled automatically.

This port has been tested to build `Source/little` on all 4
toolchain-architecture pairs. Furthermore, `lib(std)c++` headers are
picked up correctly and our AK headers can be included without any
issues.

Due to recent kernel fixes related to memory-mapped files, the LLD
linker can now be used by default, so there's no need to also build the
GCC port alongside this.

Although our patches cover building libLLVM as a shared library, this is
currently not enabled by default, as DynamicLoader is very slow in
dealing with such a large number of relocations.
2021-11-28 09:38:57 -08:00
Jelle Raaijmakers
ce6fd38e5d Ports: Remove ScummVM's SVG patch
No longer necessary now that we have a better `acosf` implementation.
2021-11-18 21:10:30 +01:00
EWouters
069e64efd1 Ports/libuv: Update libuv to version 1.42.0 and fix cmake argument
Add CMAKE_BUILD_WITH_INSTALL_RPATH=true to the cmake arguments as it
wouldn't compile on MacOS without this argument
2021-11-14 16:20:55 +00:00
Brian Gianforcaro
2c4db837e7 Ports: Add initial Pipe Viewer (pv) 1.6.20 port 2021-11-14 16:18:45 +00:00