Commit graph

1113 commits

Author SHA1 Message Date
Tim Schumacher 9dde7dcd70 Ports: Fix the default Toolchain name in .hosted_defs.sh 2022-05-03 22:17:28 +02:00
Tim Schumacher be8a18b8d5 Ports: Work around halflife formatting NaN values endlessly 2022-05-03 22:16:14 +02:00
Tim Schumacher 73e505fb77 Ports: Return opfor to upstream 2022-05-03 22:16:14 +02:00
Tim Schumacher c9c59602a4 Ports: Return halflife to upstream 2022-05-03 22:16:14 +02:00
Linus Groh 45995aaeb6 Ports: Add RISCVEmu 2022-05-03 21:38:35 +02:00
Patrick Meyer 7b76bc2b49 Ports: Update openssh to 9.0 2022-05-02 17:12:51 -07:00
Patrick Meyer 6020364476 Ports: Make openssh server not crash during startup
Before, the openssh server tried to chroot. The startup always aborted
after that, as our chroot stub currently simply returns -1. Luckily we
can use unveil instead.

Furthermore the missing ssh_host_ed25519_key also prevented the server
from successfully starting.

The previous ReadMe.md entry about socketpair missing was already
resolved by #6705.
2022-05-02 17:12:51 -07:00
Tim Schumacher 139f903960 Ports: Set the correct prefix for libxml2
The prefix should apply both inside and outside the system. Having the
full host path there only confuses software that is built inside the
system, as well as other ports that prepend the host path themselves
additionally.
2022-04-30 16:22:40 +02:00
Kenneth Myhra 1cc69edc34 Ports: Remove no longer needed fnmatch.patch
We already have LibC/fnmatch.h with the necessary defines so these
patches are no longer needed.
2022-04-29 22:49:25 +02:00
Jelle Raaijmakers 15b0c38c0f Ports: Compile SDL2 against LibAudio 2022-04-29 18:05:42 +02:00
Patrick Meyer 03d38e3ab8 Ports: Update dropbear port to 2022.82 2022-04-28 08:38:24 -07:00
circl 8cdbad3c7a Ports: Use correct packages.db location in build_installed.sh
The packages.db file now resides in Serenity's root.
2022-04-26 22:45:48 +02:00
circl 2130a83640 Ports: Make .hosted_defs.sh usable outside of .port_include.sh
This commit moves some stuff around in order to isolate .hosted_defs.sh
from .port_include.sh
2022-04-26 22:45:48 +02:00
EWouters 559ea5a030 Ports/libyaml: Fix download location 2022-04-24 11:30:24 -04:00
Daniel Bertalan 01b31d9858 Toolchain+Ports: Update LLVM to 14.0.1
Besides a version bump, the following changes have been made to our
toolchain infrastructure:
- LLVM/Clang is now built with -march=native if the host compiler
  supports it. An exception to this is CI, as the toolchain cache is
  shared among many different machines there.
- The LLVM tarball is not re-extracted if the hash of the applied
  patches doesn't differ.
- The patches have been split up into atomic chunks.
- Port-specific patches have been integrated into the main patches,
  which will aid in the work towards self-hosting.
- <sysroot>/usr/local/lib is now appended to the linker's search path by
  default.
- --pack-dyn-relocs=relr is appended to the linker command line by
  default, meaning ports take advantage of RELR relocations without any
  patches or additional compiler flags.

The formatting of LLVM port's package.sh has been bothering me, so I
also indented the arguments to the CMake invocation.
2022-04-23 10:43:32 -07:00
Daniel Bertalan 9a898df1cd Ports: Fix issue with the patches directory being a symlink
The path of the temporary directory should be an absolute path to
account for the patches directory being a symlink like in the upcoming
LLVM port update.
2022-04-23 10:43:32 -07:00
Daniel Bertalan 899616198c Ports: Remove Clang -fPIC hack from zlib
Despite the comment, only -fPIE was enabled by default in the Clang
toolchain, and not -fPIC. With the LLVM 14 upgrade, we made PIC the
default.
2022-04-23 10:43:32 -07:00
Tim Schumacher 020bc0e218 Ports: Exclude non-working utilities from the coreutils installation 2022-04-20 18:42:36 +02:00
EWouters 94c380de58 Ports/libzip: Remove DESTDIR from make install
CMake already picks up the install location. Passing `DESTDIR` resulted
in installing to `$DESTDIR/$DESTDIR/Root`.
2022-04-20 18:15:43 +02:00
Tim Schumacher 880bb53247 Ports: Update git to 2.36.0 2022-04-19 10:07:09 -04:00
Tim Schumacher cf308643c7 Ports: Update coreutils to 9.1 2022-04-19 10:07:09 -04:00
Tim Schumacher a99c4a7a7d Ports: Pass a proper sysroot value for mpc 2022-04-19 10:51:11 +02:00
Tim Schumacher 02a6ca43a9 Ports: Don't force GCC when linking libiconv into a shared library 2022-04-19 10:51:11 +02:00
Luke Wilde a9a90b1b58 Ports: Add mGBA 2022-04-13 18:32:25 +01:00
EWouters 2f8afcccfd Ports: Add port libyaml version 0.2.5 2022-04-13 15:14:50 +01:00
EWouters 81f1929a6f Ports/libarchive: Update libarchive to version 3.6.1 2022-04-11 19:43:56 -07:00
EWouters 6d4fe4fa60 Ports/zsh: Update zsh to version 5.8.1 2022-04-11 19:43:56 -07:00
EWouters deb4f2aff2 Ports/wget: Update wget to version 1.21.3 2022-04-11 19:43:56 -07:00
EWouters 1d47699e6a Ports/tcl: Update tcl to version 8.6.12 2022-04-11 19:43:56 -07:00
EWouters 0d0ab08ff6 Ports/sqlite: Update sqlite to version 3380200 2022-04-11 19:43:56 -07:00
EWouters bb8ca24212 Ports/SDL_sound: Update SDL_sound to git commit df3fc77 2022-04-11 19:43:56 -07:00
EWouters 20d4566ad4 Ports/SDL2_ttf: Update SDL2_ttf to version 2.0.18 2022-04-11 19:43:56 -07:00
EWouters 7fb1711a83 Ports/SDL2-GNUBoy: Update SDL2-GNUBoy to version 1.2.1 2022-04-11 19:43:56 -07:00
EWouters f37d2e2d1c Ports/readline: Update readline to version 8.1.2 2022-04-11 19:43:56 -07:00
EWouters 218ade0b8b Ports/python3: Update python3 to version 3.10.4 2022-04-11 19:43:56 -07:00
EWouters d89a58216d Ports/pt2-clone: Update pt2-clone to version 1.43
Upgrade patches to git style, add ReadMe.md and remove from the list
of ports missing descriptions.
2022-04-11 19:43:56 -07:00
EWouters d6ce3a842c Ports/ninja: Update ninja to version 1.10.2
The sys-select-for-pselect patch was upstreamed in
b191404828.
:^)
2022-04-11 19:43:56 -07:00
EWouters ccc9550114 Ports/nano: Update nano to version 6.2 2022-04-11 19:43:56 -07:00
EWouters a9d53b1b88 Ports/mrsh: Update mrsh to git commit cd3c3a4
Also preserve `-j$(nproc)` flag.
2022-04-11 19:43:56 -07:00
EWouters d4ae72d844 Ports/libxml2: Update libxml2 to version 2.9.13
This version is not available from the old mirror.
2022-04-11 19:43:56 -07:00
EWouters f0ded32200 Ports/libuv: Update libuv to version 1.44.1
Part of the build-Add-platform-specific-stubs-and-implementation
was upstreamed.
2022-04-11 19:43:56 -07:00
EWouters db4370992f Ports/libuuid: Update libuuid to version 2.38 2022-04-11 19:43:56 -07:00
EWouters a37ce939ee Ports/libtool: Update libtool to version 2.4.7 2022-04-11 19:43:56 -07:00
EWouters 60e2d0fbba Ports/libmodplug: Update libmodplug to version 0.8.9.0 2022-04-11 19:43:56 -07:00
EWouters 21ea62460d Ports/libgpg-error: Update libgpg-error to version 1.44
The syntax-error patch is no longer needed. :^)
2022-04-11 19:43:56 -07:00
EWouters 61a2e1cf89 Ports/libgcrypt: Update libgcrypt to version 1.10.1 2022-04-11 19:43:56 -07:00
EWouters 80f2c6581e Ports/libexpat: Update libexpat to version 2.4.8 2022-04-11 19:43:56 -07:00
EWouters 4cf67063c0 Ports/libatomic_ops: Update libatomic_ops to version 7.6.12 2022-04-11 19:43:56 -07:00
EWouters cf0798158a Ports/klong: Update klong to version 20220315
Upgrade patch to git style, add ReadMe.md and remove from the list of
ports missing descriptions.
2022-04-11 19:43:56 -07:00
EWouters d59694b864 Ports/imagemagick: Update imagemagick to version 7.1.0-29 2022-04-11 19:43:56 -07:00
EWouters 149428041b Ports/hatari: Update hatari to git commit 6a86f05 2022-04-11 19:43:56 -07:00
EWouters 9a4d100913 Ports/gsl: Update gsl to version 2.7.1 2022-04-11 19:43:56 -07:00
EWouters 12b9bf826d Ports/grep: Update grep to version 3.7 2022-04-11 19:43:56 -07:00
EWouters 0e08aa7e10 Ports/genemu: Update genemu to git commit e39f690 2022-04-11 19:43:56 -07:00
EWouters 769615fc48 Ports/gawk: Update gawk to version 5.1.1
The patch for config.sub is no longer required.

This also removes gawk from the list of ports missing descriptions as
it no longer has any patches.
2022-04-11 19:43:56 -07:00
EWouters 61768c732a Ports/freetype: Update freetype to version 2.12.0 2022-04-11 19:43:56 -07:00
EWouters e20d7788ec Ports/fontconfig: Update fontconfig to version 2.14.0 2022-04-11 19:43:56 -07:00
EWouters e9d8e0e03e Ports/flatbuffers: Update flatbuffers to version 2.0.0 2022-04-11 19:43:56 -07:00
EWouters e6172445e2 Ports/ed: Update ed to version 1.18 2022-04-11 19:43:56 -07:00
EWouters 8828b038f5 Ports/diffutils: Update diffutils to version 3.8
The fnmatch patch that was added in 6de6dff is reverted because it is
not clear why it is necessary, as discussed in #9206.

This also removes diffutils from the list of ports missing descriptions
as it no longer has any patches.
2022-04-11 19:43:56 -07:00
EWouters 8a84a03850 Ports/dialog: Update dialog to version 1.3-20220117 2022-04-11 19:43:56 -07:00
EWouters 33343998f4 Ports/ccache: Update ccache to version 4.6 2022-04-11 19:43:56 -07:00
EWouters 72d5a19db3 Ports/ca-certificates: Update ca-certificates to version 2022-03-29 2022-04-11 19:43:56 -07:00
EWouters 67ce82ba97 Ports/c-ray: Update c-ray to git commit 8f30eb9
Part of the fix-linkage patch is removed as the changes are no
longer required.
2022-04-11 19:43:56 -07:00
EWouters 711e317bd5 Ports/byacc: Update byacc to version 20220128 2022-04-11 19:43:56 -07:00
EWouters aa0f356a81 Ports/brogue: Update brogue to version 1.10.1
Also preserve the `-j$(nproc)` flag.
2022-04-11 19:43:56 -07:00
EWouters 7952af9b6d Ports/bc: Update bc to version 5.2.3
Also added the recommended CFLAGS.
2022-04-11 19:43:56 -07:00
Martin Bříza adc92beed1 Ports: Update Qt to 6.2.3 2022-04-10 21:28:41 +02:00
Jesse Buhagiar e2f1da8cec Ports: Add quake3 port :^) 2022-04-09 11:40:33 +02:00
Jelle Raaijmakers ada4f8d660 Ports: Update Composer to 2.3.4
This fixes some warnings when running with PHP 8.1.
2022-04-08 00:30:26 +01:00
Mattias Nilsson 45d73f8ef9 Ports: Added The One True AWK 2022-04-06 17:16:02 -07:00
Tim Schumacher b884c5746d Ports: Update angband to 4.2.4 2022-04-06 08:05:57 +01:00
Kevin Nobel 654075ab48 Ports: Update openttd to version 12.2 2022-04-05 22:17:04 +01:00
Kevin Nobel 3049ef740a Ports: Update openttd-opensfx to version 1.0.3 2022-04-05 22:17:04 +01:00
Kevin Nobel 8a548b1a45 Ports: Update openttd-opengfx to version 7.1 2022-04-05 22:17:04 +01:00
Tim Schumacher de7aa80669 Ports: Add GNU core utilities 2022-04-03 19:15:14 +02:00
Hunter Kvalevog 85ed64b99c Ports: Enable libx264 support in FFmpeg 2022-04-03 14:45:13 +01:00
Hunter Kvalevog a0bbadac14 Ports: Add x264 2022-04-03 14:45:13 +01:00
Jelle Raaijmakers d53c602e11 Ports: Set port to match the port's directory
We currently have no valid use case for having a `port` property
different from the directory name the port's residing in. We do have
issues when this is the case when referencing dependencies, so let's
make sure all ports have a sensible `port` property to begin with.
2022-04-03 12:35:14 +01:00
Jelle Raaijmakers 563d11c977 Ports: Move luajit warning into preconfigure
Otherwise this message will be printed during other `package.sh`
actions such as `showproperty`.
2022-04-03 12:35:14 +01:00
Tim Schumacher 4c9fbea987 Revert "Ports: Fix dependency install if port name is not folder name"
This breaks ports whose name may come up in more than one port name.

This reverts commit cc08f82ddb.
2022-04-03 12:32:00 +01:00
EWouters cc08f82ddb Ports: Fix dependency install when port name is not port folder name
There was a bug in the way the `.port_include.sh` script handled
installing dependencies. According to the
[documentation](https://github.com/SerenityOS/serenity/tree/master/Ports#depends)
the depends array should have port names in it. The port system allows
for the name of the port to be different from the folder where port
lives. Previously the `installdepends` function would cd to the name
of the port, now it will find and run the `package.sh` that has the
line `port=$depend` in it.
2022-04-02 13:12:02 +01:00
EWouters 77d9a764e3 Ports/libtiff: Name port as folder name and fix workdir
Previously when installing libtiff as a dependency for another port
it would not find the entry in `packages.db` as the ports that
depend on libtiff would use the folder name rather than the port
name in the dependency list. They did this because there was is a
bug in `.port_include.sh` that cds to the port name and not the
folder the port lives in. This is a workaround for that issue.
2022-04-02 13:12:02 +01:00
Liav A 979f89473b Ports: Remove IPv6 patch for dmidecode
This is not needed anymore because our LibC recognizes what AF_INET6 is
about.
2022-04-01 11:27:19 +02:00
Liav A 9af62ba6e3 Ports: Fix dmidecode SYS_FIRMWARE_DIR patched macro 2022-04-01 11:27:19 +02:00
EWouters e6d28a9dd4 Ports/cmake: Update cmake to version 3.23.0 and remove upstreamed patch
The check for HAVE_SIZEOF_SSIZE_T and not HAVE_SSIZE_T has been upstreamed in 99acfe41f5.
2022-03-31 16:05:07 -07:00
safarp 278241859b Ports: Add Jagged Alliance 2 Stracciatella port 2022-03-30 14:11:53 +01:00
Jelle Raaijmakers c637795888 Ports: Update PHP to 8.1.4 2022-03-29 22:49:27 +01:00
Daniel Bertalan 941d152a88 Ports: Stop zlib from trying to use the host linker
Backports an upstream fix for a bug that caused the host compiler to be
used for linking even though the cross-compiler was specified in the
`CC` environment variable.

This didn't cause an issue for SERENITY_ARCH=i686 on Linux hosts,
because seeing that the host linker couldn't deal with i686 objects, the
configure script fell back to generating only a static library. On
x86-64, the host toolchain was able to deal with the object files, but
tried to link those to host libraries. On macOS hosts, nothing worked.
2022-03-29 20:25:36 +02:00
Tim Schumacher 8f3326616a Ports: Remove the OpenSSH prctl compatibility patch 2022-03-29 09:10:34 -07:00
Sebastian Rueth 4707b3a8a1 Ports: Update zlib to 1.2.12 2022-03-29 12:10:13 +02:00
Tim Schumacher 022aed2541 Ports: Upgrade to sed 4.8 2022-03-28 10:38:02 -07:00
Michael Manganiello f421addc50 Ports: Add Free Heroes of Might and Magic II (fheroes2) port
`fheroes2` is a recreation of HoMM2 game engine. This port is set with
`GET_HOMM2_DEMO=ON` for a free demo version to be automatically
downloaded and used, without requiring the user to provide game
resources from the original game.

Besides the provided patches, we set `CXXFLAGS="'-D_GNU_SOURCE'"` to
build the port, for SerenityOS' `LibC/endian.h` to provide required
endianness functions and constants.

**Considerations**:
* In-game custom cursor is not working, game logs show:
  `Cursors are not currently supported` [0].
* Game is still unplayable, as it commonly raises a Kernel panic when
  trying to start a new game (reported at SerenityOS/serenity#9401).

[0] ae3bc94772/src/events/SDL_mouse.c (L952)
2022-03-27 18:31:10 +02:00
Michael Manganiello 16ff2d339a Ports: Enable MP3 support for SDL2_mixer
`SDL2_mixer` needs `libmpg123` to support MP3 playback. By adding
it as a dependency, its compilation now outputs:

```
checking mpg123.h usability... yes
checking mpg123.h presence... yes
checking for mpg123.h... yes
checking for mpg123_replace_reader_handle in -lmpg123... yes
-- dynamic libmpg123 -> libmpg123.so.0
```

Sound output was tested with
[an implementation](https://gist.github.com/cdave1/10563386) found
online.
2022-03-26 18:13:46 +01:00
Michael Manganiello 7dfb167b18 Ports: Add libmpg123 port
Add `libmpg123` port, for dependant projects to be able to use it.

This port doesn't include the entire `mpg123` project, just the
`libmpg123` library.
2022-03-26 18:13:46 +01:00
Linus Groh 6b8358b1f1 Ports: Update Python to 3.10.3
Released on 2022-03-16.
https://www.python.org/downloads/release/python-3103/
2022-03-25 22:27:14 +00:00
Tobias Christiansen acdb0860b1 Ports: Add cfunge
This adds the `cfunge` Befunge interpreter. An interpreter for the
esoteric programming language Befunge written in C.
2022-03-25 22:49:06 +01:00
Tim Schumacher a763e68e73 Ports: Unignore the Ruby version helper script 2022-03-24 20:11:39 -07:00
Tim Schumacher 53b0078486 Ports: Unignore the OpenSSH port README 2022-03-24 20:11:39 -07:00
Tim Schumacher 25bc9c6054 Ports: Unignore the basic verification file of fio 2022-03-24 20:11:39 -07:00
Tim Schumacher 35e7ccb65b Ports: Explicitly unignore glib meson configuration files 2022-03-24 20:11:39 -07:00
circl aac4382cd1 Ports: Add icon to The Powder Toy port 2022-03-24 22:31:02 +00:00
circl f1c28ea3e0 Ports: Add required Meson cross-files to The Powder Toy port
Previously the port would not build, as these files were mistakenly
ignored by Git.
2022-03-24 22:31:02 +00:00
circl 0865a06ef5 Ports: Add The Powder Toy port 2022-03-20 18:20:01 +00:00
circl adcd39d928 Ports: Add FFTW port 2022-03-20 18:20:01 +00:00
circl ce5f34f153 Ports: Add luajit port 2022-03-20 18:20:01 +00:00
Brian Gianforcaro 213df97b55 Ports/gdb: Upgrade gdb to version 11.2 2022-03-19 11:55:08 -07:00
Brian Gianforcaro 83abc83d3c Ports/stress-ng: Update stress-ng to 0.13.12
This required updating a bunch of patches which had conflicts
in the latest version.

New Patches:
- serenity: Add bogus O_NDELAY just to allow the port to compile
- serenity: Disable nice() stress workload as we do not implement it
- serenity: Disable prctl stressor on serenity
2022-03-18 11:59:35 +00:00
Daniel Lemos 3063aedb0c Ports: Add Lua's package manager LuaRocks
Ports: Add LuaRocks to AvailablePorts.md

Ports: Add ReadMe.md for the patches
2022-03-16 14:14:01 +00:00
Daniel Lemos a4e5c6201e Ports: Make lua depends and build with readline 2022-03-16 14:12:30 +00:00
Tim Schumacher 4cbf78ce6a Ports: Add a dependency on libiconv to tig 2022-03-16 14:10:59 +00:00
Tim Schumacher d3f3bb1853 Ports: Add a dependency on libiconv to p7zip 2022-03-16 14:10:59 +00:00
Tim Schumacher 8ffba7e2cf Ports: Add libpng and libjpeg dependencies to imgcat
Those don't seem to be strictly required, but we already have those
ports, might as well add a few more formats to the mix.
2022-03-16 14:10:59 +00:00
Tim Schumacher aad776048e Ports: Add a dependency on zlib to ntbtls 2022-03-16 14:10:59 +00:00
Tim Schumacher 1cab2e54e1 Ports: Fail if config.{sub,guess} don't replace existing files
This should help with finding misconfigured config.sub and config.guess
settings.
2022-03-16 14:10:59 +00:00
Tim Schumacher 26b4e74f4a Ports: Add a dependency on pcre to citron 2022-03-16 14:10:59 +00:00
Tim Schumacher 46399e3dc0 Ports: Disable SDL support for libmpeg2
We do not have a port of SDL.
2022-03-16 14:10:59 +00:00
Luke Wilde 6f4dde253f Ports: Update OpenSSL to 1.1.1n 2022-03-16 13:01:23 +00:00
Pierce Andjelkovic 1b14840b48 Ports: Allow harfbuzz to be built with cmake 3.18.4
CMake defaults to the current directory if the source or build 
directory is not specified. Harfbuzz builds into an alternate 
directory so it fails. This change specifies the directory prior 
to any additional parameters so the build can succeed with 
cmake 3.18.4.
2022-03-15 14:03:07 +00:00
Pierce Andjelkovic c24ba8c5ad Ports: Add config_sub_path to flex 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 67de6446a9 Ports: Add config.sub location to diffutils config.sub 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 9b437718fb Ports: Point gnucobol to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 108808bb8f Ports: Point indent to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic a7ba108d1d Ports: Point libarchive to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 7b2e0af13f Ports: Point libexpat to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 37161afbdf Ports: Point libtool to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 901cb247fb Ports: Point nasm to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 52656accb1 Ports: Point yasm to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 756f90d15e Ports: Point freedink to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic dedc534046 Ports: Point libgd to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 39868e833c Ports: Point freeciv to the correct config.sub location 2022-03-15 14:03:07 +00:00
Pierce Andjelkovic 8f531a62eb Ports: Replace gsl download mirror with functional download url 2022-03-15 14:03:07 +00:00
Luke Wilde 47d0d9fd65 Ports: Update curl to 7.82.0 2022-03-13 22:58:21 +01:00
Luke Wilde 47ec3dbf45 Ports: Update zstd to 1.5.2 2022-03-13 22:58:21 +01:00
Brian Gianforcaro 09673e7f13 Ports: Update vim to version 8.2.4554 2022-03-12 17:38:45 -08:00
Brian Gianforcaro ff16da98b0 Ports: Update less to version 590 2022-03-12 17:38:45 -08:00
Brian Gianforcaro 8627d1a944 Ports: Update git to version 2.35.1 2022-03-12 17:38:45 -08:00
Tobias Christiansen edcec09aa4 Meta: Update hashes in Port's README
Only 'sha256' or 'sig' are allowed in the 'auth_type' field in order for
the linter to pass. Reflect that into the README and give a description
on what to do to create a hash.
Also expand the examples to include a SHA256 hash.
2022-03-11 21:26:56 +01:00
Tobias Christiansen 9412af1194 Ports: Specify sha256sum for the GNU APL port 2022-03-11 21:05:17 +01:00
Tobias Christiansen 3303feed91 Ports: Add GNU APL
Since the glyphs are being worked on, a APL interpreter seems like a
good way to use them.
2022-03-11 20:14:10 +01:00
Tim Schumacher 1b6a1748f0 Ports: Add ca-certificates as a dependency to curl 2022-03-08 18:21:06 -08:00
Tim Schumacher 813a1f2865 Ports: Add a ca-certificates "port" 2022-03-08 18:21:06 -08:00
Daniel Bertalan 4f89f47acb Ports: Download fresh config.guess if needed
The config.guess file needs to know about the SerenityOS `uname -m`
system name if we want to build ports inside Serenity. Support was only
added in January 2022, so most ports don't have a new enough version
yet.

This commit adds facilities for fetching a fresh config.guess file that
supports SerenityOS, similarly to what we do for config.sub. As its
first user, we make the bash port buildable inside the system.
2022-03-08 23:30:47 +01:00
Daniel Bertalan aed2e214b6 Ports: Use sed -i for run_replace_in_file on Serenity hosts
We don't have a perl port, so let's use GNU sed's in-place option for
doing substitutions when running inside Serenity.

Note that we can't do this unconditionally, as `sed -i` is not portable
and works differently on BSD systems.
2022-03-08 23:30:47 +01:00
Ali Mohammad Pur ce9f355b12 Ports: Add a bdwgc (aka libgc) port
For all your ports' garbage collection needs :^)
2022-03-08 22:29:53 +01:00
Jelle Raaijmakers f8bdb36f4c Ports: Add OpenGL include dir to quake2 build 2022-03-08 15:32:23 +01:00
Daniel Bertalan 6879465725 Ports: Update vttest to version 20220215
We now download a versioned tarball instead of the latest release to
avoid breaking the port build due to a signature mismatch when a new
version is released.
2022-03-02 21:37:26 +01:00
Peter Ross 451fee8fd7 Ports: Upgrade to FFmpeg 5.0 release; enable SDL and networking 2022-03-02 11:40:37 +01:00
Peter Ross ceb9f43ed5 Ports: Add Bochs x86 PC emulator 2022-02-23 09:59:08 +00:00
Jelle Raaijmakers e3d5a11d84 Ports: Enable monkey4 engine for ScummVM
This depends on both the `libmpeg2` and `libmad` ports. Since `monkey4`
is currently an experimental engine in ScummVM, we need to explicitly
enable it during configuration.
2022-02-22 23:48:59 +00:00
Jelle Raaijmakers 6a3017625b Ports: Add libmpeg2 2022-02-22 23:48:59 +00:00
Jelle Raaijmakers 5b593783f3 Ports: Add libmad 2022-02-22 23:48:59 +00:00
Daniel Bertalan 0be67ef12c Ports: Use the objcopy built as part of the toolchain
Relying on host tools working correctly is not a good idea, as they may
be outdated (and therefore not support features like RELR relocations)
or may not exist at all (like objcopy on macOS).
2022-02-20 23:07:31 +00:00
Daniel Bertalan 92449e2f1c Ports: Update libjpeg to 9e 2022-02-20 12:42:13 +00:00
Brian Gianforcaro e56262caed Ports/gdb: Implement wait and mourn_inferior overrides for our target
While troubleshooting why gdb wasn't working when attempting to debug
serenity programs I noticed two things:

 - The contract of serenity's `waitpid(..)` appears to be slightly
   different than the generic ptrace target expects. We need to make
   sure we pass `WSTOPPED`, and it can return different errno values
   that we would want to re-try on.

-  The contract of serenity's `ptrace(..)` implementation appears to
   diverge as well, as we are expected to call `PT_ATTACH` before we
   call `PT_CONTINUE`, otherwise `ptrace(..)` will just error out.

These two patches fix the behavior of wait and mourn_inferior so that
they work as expected on serenity and allow us to attach and then wait
for a process to exit while running under gdb.
2022-02-20 11:49:41 +01:00
Brian Gianforcaro f01e1d0c17 Ports/gdb: Add descriptions to all gdb patches and remove dead code
Before working on the gdb port some more, I wanted to get these patches
cleaned up to have a good base to build upon.
2022-02-20 11:49:41 +01:00
Tim Schumacher c8aae1ac52 Ports: Enable OpenSSL support for CMake 2022-02-17 21:25:41 -08:00
Tim Schumacher 17f5eb558c Ports: Set the correct config.sub path for patch 2022-02-17 11:16:38 +01:00
Tim Schumacher abb9e3e198 Ports: Set the correct config.sub path for mpc 2022-02-17 11:16:38 +01:00
Tim Schumacher 95f33ffbec Ports: Disable socketpair support for curl
This is currently broken in Serenity. Disable it until we figure out
why.
2022-02-16 17:13:56 -08:00
Joe Petrus 06e33788ea Ports: Add ImageMagick 2022-02-14 11:40:06 +01:00
Ali Mohammad Pur b760a1a4ba Ports: Update the citron patches after upstreaming a few
This also switches to checking out a specific commit instead of just the
master HEAD, as the port linter requires a hash (which is imo pointless
in this case), and we can't provide a stable hash for the master branch
HEAD.
2022-02-13 19:03:43 +03:30
Ali Mohammad Pur 44cf3ac60f Ports: Add a citron port
This disables the GC, so the REPL doesn't run, but basic programs do
work.
2022-02-12 12:16:59 +01:00
Ali Mohammad Pur b0efca5742 Ports: Add a sparsehash port 2022-02-12 12:16:59 +01:00
Ali Mohammad Pur aaa52da97d Ports: Add a pre_install hook 2022-02-12 12:16:59 +01:00
Daniel Bertalan 7ab6816b49 Ports: Update binutils to version 2.38 2022-02-11 18:07:53 +01:00
Jackson d55978c254 Ports: Fix lua not building 2022-02-08 22:21:00 +00:00
BodgeMaster e74e6087b0 Ports: Update nano to version 6.0
This is just a bump of the version number in a couple places.
Tested to work.
2022-02-06 07:16:59 +00:00
BodgeMaster d49a516366 Ports: Update wget to version 1.21.2
This is another one where I just changed the version number and it
worked.
2022-02-06 03:20:25 +00:00
Luke Wilde 4a69072c3a Ports/fontconfig: Add freetype dependency
When I did a fresh build of ports, I got this while building fontconfig:

```
checking for FREETYPE... no
configure: error: Package requirements (freetype2 >= 21.0.15) were not
met:

No package 'freetype2' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables FREETYPE_CFLAGS
and FREETYPE_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
```
2022-01-31 03:31:40 +01:00
Linus Groh ab976667c4 Ports: Update Python to 3.10.2
Released on 2022-01-14.
https://www.python.org/downloads/release/python-3102/
2022-01-30 17:40:39 +00:00
Ali Mohammad Pur 66dcb0123a Ports: Explain some new patch script options and features in the README
This explains:
- `package.sh dev [--no-depends]`
- `use_fresh_config_sub` & `config_sub_path`
2022-01-27 23:01:05 +01:00
Ali Mohammad Pur e79a766901 Ports: Make 'package.sh dev' a bit more friendly when importing patches
When a git patch that doesn't apply is encountered, start a git am
session and _then_ drop the user in it instead of expeting the user to
start the session on their own.
Also prompt for leftover files and delete them if the user does not want
them.
2022-01-27 23:01:05 +01:00
Jesse Buhagiar 43ddefec9c Ports: Add Half-Life: Opposing Force port :^) 2022-01-24 17:04:55 +01:00
Daniel Bertalan ad649c48da Toolchain: Backport support for the mold linker
The `-fuse-ld=mold` flag was only added in the not-yet-released GCC 12.

Cherry-picked from the following upstream commit:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=ad964f7eaef9c03ce68a01cfdd7fde9d56524868
2022-01-24 10:41:47 +00:00
Daniel Bertalan bd3ed700f2 Toolchain+Ports: Use the GNU hash format by default
This hash format offers faster symbol lookup than the System V hash.

We've been using it in all our shared libraries for a long time, but did
not have it enabled by default in our toolchain, so ports couldn't make
use of it.
2022-01-24 10:41:47 +00:00
Daniel Bertalan 5576e9c4c5 Kernel+Toolchain: Use .init_array section for global constructors
Before this change, our dynamic linker's global constructor handler
relied on the GNU linker implicitly including the content of `.ctors`
section inside `.init_array`. The mold linker does not do this, so
global constructors would fail to be called in the mold-built userland.

There is no point in sticking to `.ctors`, as most other systems already
use the superior `.init_array` scheme. This commit changes the kernel
linker script to not discard this new section, and enables it by default
in our toolchain.
2022-01-24 10:41:47 +00:00
Sahan Fernando d6432a3f99 Ports: Enable menu support for half-life port
This partially enables support for menus in half-life. Currently, mouse
input does not work in it, the arrow keys are needed for navigation.
2022-01-24 07:55:39 +00:00
Sahan Fernando 9d97902081 Ports: Add link flags to pkgconfig file installed by fontconfig port 2022-01-24 07:55:39 +00:00
Sahan Fernando 62192c88a6 Ports: Fix freetype port 2022-01-24 07:55:39 +00:00
Andrew Kaster 1306fab711 Ports: Update mold port to v1.0.2
Patches regenerated with the new ./package.sh dev mode. It seems to
work as advertised, after a bit of experimentation :^).
2022-01-24 02:53:04 +00:00
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