Commit Graph

1901 Commits

Author SHA1 Message Date
Beckett Normington
4032bfc2fc Ports: Add cbonsai port
This commit modifies the port list and adds the package.sh script
for `cbonsai`.
2023-06-25 08:04:23 +01:00
René Hickersberger
b0ef956fe0 Ports: Add lynx port 2023-06-23 17:25:37 +02:00
Tim Schumacher
ead756ca32 Ports: Point to the correct subdirectory for gettext
`ftpmirror.gnu.org` does not seem to have the `/pub/gnu` folder
structure, all files are in `/gnu` instead.

This regressed in 41f7f821f6.
2023-06-18 20:33:38 +02:00
djwisdom
ec0054da06 Ports: Update serenity-theming use latest commit 43c42c9 2023-06-17 06:27:56 -04:00
Emily Trau
fcef663869 Ports/nhlohmann-json: Fix pkgconf install path
CMAKE_INSTALL_DATADIR is used to define the install base dir for
pkgconf files. In this case it defaulted to /usr/local/share/pkgconf
which is not a location searched by default.

See a0c1318830/CMakeLists.txt (L69)
2023-06-13 16:44:13 +02:00
Emily Trau
675cf43937 Ports: Add lowdown 1.0.2 2023-06-07 13:44:44 +02:00
djwisdom
732bdf07bd Ports: Update serenity-theming use latest commit cd1fd73 2023-06-07 12:35:06 +02:00
Emily Trau
eabadf9e02 Ports: Add Brotli 1.0.9 2023-06-06 23:41:58 +02:00
Emily Trau
9a17f890ed Ports: Add editline 1.17.1 2023-06-06 23:41:12 +02:00
sin-ack
910bff9e94 Ports: Update the Zig port's Serenity type definitions
After b98f537, the Zig port's types for Serenity no longer matched what
Serenity actually returned from LibC; this caused weird errors due to
stat() not returning valid values anymore.
2023-06-04 05:39:32 +02:00
Daniel Bertalan
41f7f821f6 Toolchain+Ports: Use ftpmirror.gnu.org for faster downloads
This service automatically redirects to a mirror that's geographically
closer, which should make downloading the tarballs faster. The GNU
project recommends this instead of bombarding their top-level downloads
site.
2023-05-28 06:34:12 -07:00
kleines Filmröllchen
213025f210 AK: Rename Time to Duration
That's what this class really is; in fact that's what the first line of
the comment says it is.

This commit does not rename the main files, since those will contain
other time-related classes in a little bit.
2023-05-24 23:18:07 +02:00
Nathan Ell
fbb4887d9c Ports/dos2unix: Update to 7.5.0
Version 7.5.0 adds two new arguments for the command line, to add a line
break to the last line if one isn't present, and to write output to
stdout.
2023-05-19 22:55:39 +02:00
djwisdom
1b9c31da12 Ports: Update and clean up serenity-theming use latest commit 83fb3e7 2023-05-18 22:47:29 +02:00
Tim Schumacher
8434d76027 Ports: Update Ruby to version 3.2.2
Three patches that are apparently no longer needed have been removed.
2023-05-17 08:54:55 +02:00
Daniel Bertalan
07918b79b7 Toolchain+Ports: Update GCC to 13.1.0
This is a mostly straight-forward rebase of our patches on top of
13.1.0. The spec files needed a change, as GCC no longer supports STABS
debug information, but we were building GCC with support for it.

Highlights of this release include static `operator()`, The Equality
Operator You Are Looking For and extended `constexpr` support.
2023-05-15 07:00:29 +02:00
Mike Swanson
041e29e585 Ports: Add chocolate-doom 3.0.1 2023-05-13 17:52:58 -06:00
Mike Swanson
f947c4f4fc Ports: Add libsamplerate 0.2.2 2023-05-13 17:52:58 -06:00
Fabian Dellwing
4093952a6e Ports: Update and fix nethack
This update fixes the broken build on newer (Ubuntu) systems.

It also contains a security fix.
2023-05-13 07:53:58 +02:00
Mike Swanson
eb76329ad8 Ports: Add deutex 5.2.2 2023-05-12 05:36:47 +02:00
Mike Swanson
5a1c0c6836 Ports: Support extracting *.tar.zst source archives 2023-05-12 05:36:47 +02:00
Jelle Raaijmakers
3af92a76be Ports: De-special case ./package.sh dev
There is nothing special about the `dev` command; move its logic to
`do_dev` and invoke it generalized.
2023-05-09 06:36:30 +02:00
Jelle Raaijmakers
a81e83f3b5 Ports: Only remove dir contents on clean, not the dir itself
The entirety of `.port_include.sh` depends on having a current working
directory for the respective port. If we were to remove the directory,
some actions such as `fetch` could fail since our current working
directory would now be an invalid inode.

This issue was exposed by running `./package.sh` followed by
`./package.sh dev` and answering 'y' to the question on cleaning the
build directory.
2023-05-09 06:36:30 +02:00
Jelle Raaijmakers
71671e0921 Ports: Alphabetize commands in .port_include.sh
Also remove a stray newline.
2023-05-09 06:36:30 +02:00
Kenneth Myhra
03ca560b2d Ports: Update dosbox-staging to 0.77.1
This version of 'dosbox-staging' uses the meson build system.

Previous versions of dosbox-staging started in windowed mode with a
resolution of 320x200. This version starts in windowed mode with a
resolution of 640x480.

Audio was stuttering a bit in previous versions, but it sounds like it
might have become a bit worse. This is probably because of higher CPU
usage and the audio server/client not able to keep up.

Added a post_install() section to package script which outputs a link to
dosbox-staging's release notes.
2023-05-08 08:03:31 +02:00
Kenneth Myhra
9541f23376 Ports: Clean up 'package.sh' for dosbox-staging
This makes dosbox-staging's 'package.sh' conform to our coding standards
for bash scripts.
2023-05-08 08:03:31 +02:00
Kenneth Myhra
4eaac2ff1e Ports: Add opusfile 0.12 2023-05-08 08:03:31 +02:00
Kenneth Myhra
748289211a Ports: Add libopus 1.3.1 2023-05-08 08:03:31 +02:00
Ben Wiederhake
36ff6187f6 Everywhere: Change spelling of 'behaviour' to 'behavior'
"The official project language is American English […]."
5d2e915623/CONTRIBUTING.md (L30)

Here's a short statistic of the occurrences of the word "behavio(u)r":

$ git grep -IPioh 'behaviou?r' | sort | uniq -c | sort -n
      2 BEHAVIOR
     24 Behaviour
     32 behaviour
    407 Behavior
    992 behavior

Therefore, it is clear that "behaviour" (56 occurrences) should be
regarded a typo, and "behavior" (1401 occurrences) should be preferred.

Note that The occurrences in LibJS are intentionally NOT changed,
because there are taken verbatim from the specification. Hence:

$ git grep -IPioh 'behaviou?r' | sort | uniq -c | sort -n
      2 BEHAVIOR
     10 behaviour
     24 Behaviour
    407 Behavior
   1014 behavior
2023-05-07 01:05:09 +02:00
Ben Wiederhake
d5f8dac2bd dungeonrush: Fix typo in patches 2023-05-07 01:05:09 +02:00
Ben Wiederhake
ee47c0275e Everywhere: Run spellcheck on all documentation 2023-05-07 01:05:09 +02:00
Cubic Love
e7502d4d6d Ports: Update serenity-theming to use the latest commit (f4b6f7f) 2023-05-06 06:43:16 -07:00
Kenneth Myhra
4c17f22735 Ports: Unbreak SDL2 by using GUI::Application::create()
Commit 1a97382 introduced the fallible GUI::Application::create() and
removed GUI::Application::construct() breaking the SDL2 port, let's
update it to use the fallible version.
2023-05-06 00:08:59 +02:00
Fabian Dellwing
b443c0b80b Ports: Update OpenJDK 2023-05-05 02:19:05 +02:00
Daniel van Gerpen
98badc1466 Ports/ncdu: Update to version 1.18.1 2023-05-04 19:45:24 +02:00
Jelle Raaijmakers
1127bdb65c Ports: Add Serious Sam - The First Encounter
The actual port is SeriousSamClassic, but only The First Encounter is
built and installed. It should be relatively easy to also build and
install The Second Encounter from this port in the future.
2023-05-04 16:11:28 +02:00
Kenneth Myhra
368c255368 Ports: Add Duke Nukem 3D
This adds 'JonoF's Duke Nukem 3D Port'.

Parts of the network-related stuff has been patched out.
See patch: patches/0002-mmulti.c-ifdef-out-network-related-stuff-we-currentl.patch

Notes:
- Some sound work seems to be needed. During the title screen and
  gameplay SFX works, but music does not play. At the ending screen of
  Hollywood Holocaust music does play.
- GTK has been disabled, by default it will start in fullscreen, to get
  back to windowed mode can be done through the Video Settings.
- OpenGL support has been disabled, as far as I can tell it will need
  OpenGL 2.0 support which we do not currently have.
- True 3D renderer has been turned on.
2023-05-03 15:39:24 +02:00
Fabian Dellwing
8f34478e75 Ports: Add ssmtp port 2023-04-30 19:23:08 +02:00
Nicolas Josef Zunker
852bf35c1e Ports: Add c-ares library
The asynchronous DNS requests library c-ares was ported to serenity
2023-04-29 08:55:16 -06:00
Fabian Dellwing
824d23570a Ports: Remove getconf from bash examples
We fail to build `getconf.c` from the builtin examples. And therefore
don't install the rest. If we remove it, we successfully build the
rest of the examples.
2023-04-27 10:25:42 +01:00
Fabian Dellwing
6990d4e025 Ports: Cleanup the build process a bit for taskwarrior 2023-04-26 16:54:31 +02:00
LekKit
9fe6dcb50b Ports: Use makeopts in RVVM port 2023-04-26 12:48:56 +02:00
LekKit
1a3009fa2b Ports: Fix RVVM port syntax 2023-04-26 12:48:56 +02:00
LekKit
12730cefce Ports: Add RVVM port 2023-04-26 12:48:56 +02:00
Jelle Raaijmakers
34b04271f4 Ports/SDL2: Handle window close requests correctly
We were going about this the wrong way:

* We should not send `SDL_QUIT` events; SDL2 is doing this for us
  already when the last window is closed, for example.
* The `SDL_WINDOWEVENT_CLOSE` event does not represent a closed window,
  but rather a _request_ from the window manager to close a window.

This resolves the issue with the PrBoom+ port where the quit screen
would not be shown when trying to close the main window.
2023-04-26 09:37:16 +01:00
Jelle Raaijmakers
e283dfdeb6 Ports/scummvm: Enable release mode
This brings the binary's size down to 100 MiB, from about 600 MiB. The
`--enable-optimizations` flag is implied with `--enable-release`.
2023-04-26 09:37:16 +01:00
Jelle Raaijmakers
62843befca Ports/SDL2: Stop the audio client when device is closed
This ensures all threads and event loops on the audio client's side are
shut down.
2023-04-26 09:37:16 +01:00
Jelle Raaijmakers
bff5137cb4 Ports/gltron: Exit the game when SDL_QUIT is received 2023-04-26 09:37:16 +01:00
Fabian Dellwing
6acf03d9a8 Ports: Add default zshrc
Previosly we had a very messed up PS1 as the Shell PROMPT is not
unset correctly.

We now provide a default `zshrc` file for the system that uses
sane values for basic categories like aliases, autocompletion and
history management to make the port more usable. It also forces
the prompt to be the default zsh one.
2023-04-25 20:48:51 +02:00
Andreas Kling
c756e021a7 Userland: Remove "Inspector" program and related utilities
This program has never lived up to its original idea, and has been
broken for years (property editing, etc). It's also unmaintained and
off-by-default since forever.

At this point, Inspector is more of a maintenance burden than a feature,
so this commit removes it from the system, along with the mechanism in
Core::EventLoop that enables it.

If we decide we want the feature again in the future, it can be
reimplemented better. :^)
2023-04-25 14:48:40 +02:00
Kenneth Myhra
5af715e394 Toolchain+Ports: Update qemu to 8.0.0 2023-04-23 14:20:42 +02:00
Kenneth Myhra
1cc095c5ab Toolchain+Ports: Consolidate version information for QEMU
This consolidates version information, archive's download location,
filename and SHA256 checksum into version.sh. This file is then sourced
from the port script and toolchain build script.

The version.sh script contains the following variables:
- QEMU_VERSION           - Version number
- QEMU_ARCHIVE           - Filename
- QEMU_ARCHIVE_URL       - Full url to download location
- QEMU_ARCHIVE_SHA256SUM - The SHA256 checksum
2023-04-23 14:20:42 +02:00
Fabian Dellwing
16ef5e2631 Ports: Prefer host python3.xx over python3
Previously we relied on the presence of a `python3` binary in the
PATH that has the correct minor version to build the port.

We now first check for the presence of a `python3.minor` binary
in the PATH and use that if found.

This allows users that have multiple Python versions installed
simultaneously (like from a PPA) to build the port without having
to change their main version.
2023-04-22 12:56:36 +01:00
Fabian Dellwing
af20b74a83 Ports: Add more supported functions to README 2023-04-20 11:50:27 +02:00
Fabian Dellwing
47c5b77116 Ports: Update zsh 2023-04-20 11:50:27 +02:00
Tim Schumacher
6f47c53ff9 Ports: Force patch regeneration after resolving conflicts
Otherwise, the post-conflict state will be used as a reference point,
and no changes will be detected.
2023-04-19 07:53:18 +02:00
Tim Schumacher
fb049d6913 Ports: Don't mangle patches when requiring manual edits
While at it, pass the `--3way` option to give the user something to work
with. Otherwise, Git will just prepare the commit metadata and nothing
else. Note that this has a relatively low chance of working, since the
recorded blob hashes aren't known to a freshly imported repository.
2023-04-19 07:53:18 +02:00
Kenneth Myhra
4ed71d5b40 Ports: Add depends 'libslirp' and configopt '--enable-slirp' to QEMU
This adds the dependency 'libslirp' and forces QEMU to pick up the
dependency or fail compilation by adding the config option
'enable-slirp'.
2023-04-17 10:19:28 +02:00
Kenneth Myhra
ae075b3dff Ports: Reformat QEMU's package.sh script
Use single quotes for non-interpolated strings in the 'configopts' and
'depends' sections.
Let each dependency of the 'depends' section be on a separate line.
2023-04-17 10:19:28 +02:00
Kenneth Myhra
4e661a400b Ports: Add libslirp version 4.7.0
The slirp submodule was removed from QEMU in version 7.2, running
Serenity in QEMU on a Serenity host could fail without this one if
running with network enabled.

For more information on the removal of the slirp submodule see the
following link: https://wiki.qemu.org/ChangeLog/7.2#Removal_of_the_%22slirp%22_submodule_(affects_%22-netdev_user%22)
2023-04-17 10:19:28 +02:00
Kenneth Myhra
f488df0e10 Ports: Update GLib to 2.76.1 2023-04-16 08:49:08 +01:00
Linus Groh
cb79c6bc2f Ports: Add xz to Python dependencies
This makes it build the `_lzma` module, and thus makes `lzma` work.

Thanks to hjalves for the suggestion!
2023-04-15 18:30:24 +02:00
Linus Groh
960b55dd7d Ports: Update Python to 3.11.3
Released on 2023-04-05.
https://www.python.org/downloads/release/python-3113/
2023-04-15 18:10:49 +02:00
EWouters
68c313dcd9 Ports/openrtc2: Update OpenRTC2 to version 0.4.4 2023-04-14 21:44:40 +02:00
Tim Schumacher
dca56ce1cb Ports/lrzip: Switch to the actual preconfigured release tarball
This avoids us having to run autoconf ourselves, resulting in a nice and
deterministic source package.
2023-04-10 16:31:54 +02:00
Ben Wiederhake
c94924691d Ports: Make libksba/libassuan/ntbtls use Serenity's gpg-error-config
This is likely because we usually used the host's version of the file.
I happen to use a newer libgpg-error (which is relevant because that
particular executable has been renamed, so my system no longer contains
a file of the name gpg-error-config), which revealed this latent bug.
2023-04-09 18:57:49 +02:00
Ben Wiederhake
86b83d5823 Ports: Repair the launcher icons of 'stpuzzles' 2023-04-09 16:50:35 +02:00
Ben Wiederhake
4107ae1dea Ports: Remove abandoned port 'fheroes2' which was never playable 2023-04-09 11:39:31 +01:00
Tim Schumacher
56fdbf81dc Ports: Reapply the SDL2_sound patch 2023-04-09 01:53:33 +02:00
Ben Wiederhake
625b29f507 Ports: Repair qt6-qtbase by disabling QDnsLookup 2023-04-08 14:25:30 -07:00
Liav A
b414b56336 Ports: Update dmidecode to version 3.5 2023-04-08 19:02:06 +03:00
Liav A
fd62eb325e Ports: Update dtc to version 1.7.0
Also, don't use a commit hash anymore but instead use tags, which are
updated often enough.
2023-04-08 18:01:06 +03:00
Liav A
9d43132380 Ports: Update file to version 5.44 2023-04-08 17:59:09 +03:00
Tim Ledbetter
44dd824764 Ports: Add stockfish port 2023-04-07 14:59:27 -06:00
djwisdom
afc067bc38 Ports: Update serenity-theming use latest commit ba2ddd0
Snake: Add Buggie skin
Snake: Add CatDog skin
Chess: Add ugly piece set
Base: Add Hotdog Stand theme
2023-03-27 14:28:45 +01:00
Cameron Youell
7b33f33509 Ports/libtiff: Update libtiff to version 4.5.0 2023-03-27 14:27:32 +01:00
Cameron Youell
c04e8ae6f2 Ports/imagemagick: Update imagemagick to version 7.1.1-5 2023-03-27 14:27:32 +01:00
Cameron Youell
7874b492df Ports/gettext: Update gettext to version 0.21.1 2023-03-27 14:27:32 +01:00
Cameron Youell
0bd2cd037d Ports/sqlite: Update sqlite to version 3410200 2023-03-27 14:27:32 +01:00
Cameron Youell
5d9c4cc9e3 Ports/libpng: Update libpng to version 1.6.39 2023-03-27 14:27:32 +01:00
Cameron Youell
66f4ffe309 Ports/make: Update make to version 4.4 2023-03-27 14:27:32 +01:00
Cameron Youell
f22bf42566 Ports/cmake: Update cmake to version 3.26.1 2023-03-27 14:27:32 +01:00
Cameron Youell
18720fed7b Ports/curl: Update curl to version 8.0.1 2023-03-27 14:27:32 +01:00
Cameron Youell
a5269560f5 Ports/bison: Update bison to version 3.8 2023-03-27 14:27:32 +01:00
Cameron Youell
4900b34ae1 Ports/bdwgc: Update bdwgc to version 8.2.2 2023-03-27 14:27:32 +01:00
Cameron Youell
fb3a1e2341 Ports/bc: Update bc to version 6.5.0 2023-03-27 14:27:32 +01:00
Cameron Youell
884d5720d6 Ports/bash: Update bash to version 5.2.15 2023-03-27 14:27:32 +01:00
Cameron Youell
cff303bd69 Ports/binutils: Update binutils to version 2.40 2023-03-27 14:27:32 +01:00
Cameron Youell
1fc2878e24 Ports/freetype: Update freetype to version 2.13.0 2023-03-27 14:27:32 +01:00
Cameron Youell
4b3491ebb6 Ports/grep: Update grep to version 3.10 2023-03-27 14:27:32 +01:00
Cameron Youell
20b1a3b682 Ports/git: Update git to version 2.40.0 2023-03-27 14:27:32 +01:00
Jelle Raaijmakers
6a3e217c5c Ports: Update ScummVM to 2.7.0 2023-03-24 00:31:03 +01:00
Jelle Raaijmakers
5230fb0359 Ports: Fix erroneous spelling of erroneous 2023-03-24 00:31:03 +01:00
EWouters
5ec727deb4 Ports/cmake: Update CMake to version 3.26.0 2023-03-17 09:59:35 +00:00
Seal Sealy
0dbca4af06 Ports: Add taskwarrior port 2023-03-15 07:59:51 +00:00
Seal Sealy
8ba6cd6ab9 Ports: Add bzip3 port 2023-03-14 21:41:46 +01:00
Fabian Dellwing
7448db9940 Ports: Add lrzip port 2023-03-13 13:53:58 +01:00
Andrew Kaster
3219ecbdc0 Ports: Add port of backward-cpp, a pretty backtrace library 2023-03-13 07:23:53 +00:00
Andrew Kaster
e690b35fdc Ports: Install libiberty from binutils port
Normally this is supposed to be installed from gdb or gcc. If a port
wants to link against libbfd though, we need to make sure libiberty is
actually available in the root filesytem without requiring the port to
depend on those larger packages.
2023-03-13 07:23:53 +00:00
Seal Sealy
0f5cd3ea68 Ports: Add hexedit port 2023-03-09 09:14:58 +00:00
Luke Wilde
57cc2bab4b Ports: Add Mednafen 2023-02-28 08:42:45 +00:00
Kenneth Myhra
450ffbe612 Ports: Update curl to 7.88.1 2023-02-24 19:20:53 +01:00
Peter Elliott
3481e44d01 Ports: Port wayland-client 2023-02-19 00:37:37 +01:00
Peter Elliott
3440292e73 Ports: Port the Expat XML parser 2023-02-19 00:37:37 +01:00
Nathan Ell
3b446b873e Ports/dos2unix: Update to 7.4.4 2023-02-16 12:27:52 +01:00
Tim Schumacher
874c7bba28 LibCore: Remove Stream.h 2023-02-13 00:50:07 +00:00
Tim Schumacher
606a3982f3 LibCore: Move Stream-based file into the Core namespace 2023-02-13 00:50:07 +00:00
Tim Schumacher
d43a7eae54 LibCore: Rename File to DeprecatedFile
As usual, this removes many unused includes and moves used includes
further down the chain.
2023-02-13 00:50:07 +00:00
Julian Offenhäuser
9be9bf3379 Ports: Add GemRB
GemRB is an open-source implementation of the Infinity engine by
Bioware, used in some of their classic role-playing games.
2023-02-11 10:41:59 +01:00
Julian Offenhäuser
b789debe07 Ports: Build python3 port with shared libraries 2023-02-11 10:41:59 +01:00
Julian Offenhäuser
b1793868b0 Ports: Add OpenRCT2 2023-02-08 19:06:42 +00:00
Julian Offenhäuser
839c23417d Ports: Add speexdsp 2023-02-08 19:06:42 +00:00
Julian Offenhäuser
1f207282a1 Ports: Add nlohmann-json 2023-02-08 19:06:42 +00:00
Julian Offenhäuser
32e9293ce0 Ports: Add flac 2023-02-08 19:06:42 +00:00
Kenneth Myhra
944191560a Ports: Update qemu to 7.2.0 2023-02-07 13:35:49 +00:00
Kenneth Myhra
96ac527e3c Ports: Update mc to 4.8.29 2023-02-07 13:35:49 +00:00
Kenneth Myhra
6acb8279f6 Ports: Update glib to 2.75.2 2023-02-07 13:35:49 +00:00
Mr.UNIX
b8003fa027 Ports/grep: Update to 3.8 2023-02-06 10:19:53 +00:00
Mr.UNIX
306162de35 Ports/sed: Update to 4.9 2023-02-06 10:19:37 +00:00
Mr.UNIX
93d456077e Ports/nano: Update to 7.2 2023-02-06 10:19:21 +00:00
Mr.UNIX
1c7de460ff Ports/gawk: Update to 5.2.1 2023-02-06 10:18:58 +00:00
Mr.UNIX
17965f4d2d Ports/nasm: Update to 2.16.01 2023-02-05 16:43:02 +00:00
Mr.UNIX
9ca21ba1d5 Ports/openssl: Update to 1.1.1s 2023-02-05 16:42:42 +00:00
Mr.UNIX
dfb21177ef Ports/git: Update to 2.39.1 2023-02-05 16:42:12 +00:00
Jelle Raaijmakers
403c0e6dab Ports: Install all dependencies instead of just one
Commit 9b7e217dda broke installation of port dependencies by
`return`ing as soon as the first dependency was found.
2023-02-02 14:38:48 +01:00
Jelle Raaijmakers
dcf33f9b8f Ports: Add bind mount automatically for Quake3
We need a `wxallowed` bind mount for the `ioquake3` binary to be able to
compile and run its executable scripts in memory. Instead of instructing
the user how to do so in `/etc/fstab`, we can now use the fancy
`/etc/fstab.d` facility :^)
2023-02-02 14:38:26 +01:00
Jan200101
141e5d6f20 Ports: Use absolute path of port_include
This ensures that .port_include will always import other scripts from
the correct location.
2023-01-29 13:11:22 +01:00
Jan200101
4eae5de499 Ports: Document how to declare external port directories 2023-01-29 13:11:22 +01:00
Jan200101
9b7e217dda Ports: Support multiple port directories
This allows Ports unfit for the main repository to be put elsewhere.
2023-01-29 13:11:22 +01:00
Tim Schumacher
82a152b696 LibGfx: Remove try_ prefix from bitmap creation functions
Those don't have any non-try counterpart, so we might as well just omit
it.
2023-01-26 20:24:37 +00:00
Peter Elliott
d844829de4 Ports: Fix compatiblity issues with running package.sh on Serenity 2023-01-19 12:22:24 +01:00
Jelle Raaijmakers
7c2976e006 Ports: Make sed work on macOS
The ports `libvorbis`, `readline` and `timidity` would not install on
macOS as a result of using `sed -i` without an extension provided. GNU
sed is available through Homebrew, but it does not replace `sed` by
default.

Instead, provide a new `sed_in_place` function that calls `sed` with the
right arguments.
2023-01-09 22:36:50 +00:00
Jelle Raaijmakers
9398e308fe Ports: Use sha256 hash for libmpg123 2023-01-09 12:56:46 +01:00
EWouters
06d24be8c9 Ports/timidity: Use fresh config.guess for timidity 2023-01-08 22:54:19 +01:00
EWouters
5f87c3022c Ports: Set $LD for Clang, GCC and host in .hosted_defs.sh
Sets `$LD` to `$HOST_LD` in `.port_include.sh` if it is defined as well,
else it will be set to `ld`.

Makes libiconv build with the Clang toolchain.

This also impacts other ports when building them with the Clang
toolchain, and might result in more ports building correctly.
2023-01-06 14:00:31 -07:00
AsciiWolf
40165f5846 Ports: Fix the libmpg123 patch 2023-01-04 20:07:53 +01:00
Jelle Raaijmakers
215d68baf6 Ports: Remove gltron patch for glext.h
This is no longer necessary since we have resolved most conflicts with
SDL2's version of the GL constants.
2023-01-03 19:48:16 -05:00
Jelle Raaijmakers
c2b3a7a524 Ports: Unbreak ScummVM icon pack generation
The ScummVM icon repository no longer accepts "1970-01-01" as a valid
start date for the icon pack generation. We now use the oldest commit
date in the repository which _is_ accepted.
2023-01-03 19:47:29 -05:00
djwisdom
c1d4fc2d0b Ports: Update serenity-theming use latest commit 7a39b7d 2023-01-03 16:13:54 -08:00
implicitfield
4aec8491d6 Everywhere: Move Base/res/terminal-colors to Base/res/color-schemes 2022-12-31 04:20:59 -07:00
Tim Schumacher
534f3faa2f Ports: Bump the xash3d versions across the board 2022-12-31 04:16:57 -07:00
Jan200101
058a39c6fc Ports: Use absolute path of script
The relative paths are not valid inside a port build directory.
This makes target_env source .hosted_defs.sh correctly.
2022-12-31 00:02:41 +01:00
Liav A
b49c4eb94f Ports: Remove i686 support 2022-12-28 11:53:41 +01:00
Liav A
85b453c2e4 Kernel+Userland: Remove dependency on i386-specific registers 2022-12-28 11:53:41 +01:00
Kenneth Myhra
74de1f6193 Ports: Let our CA Certificate location be known to curl
Co-authored-by: Tim Schumacher <timschumi@gmx.de>
2022-12-22 15:59:00 +00:00
Kenneth Myhra
3c6afeca45 Ports: Format curl package.sh script 2022-12-22 15:59:00 +00:00
Kenneth Myhra
fe478be91b Ports: Update curl to 7.87.0
This also removes the tiny patch we had since it's been upstreamed.
2022-12-22 15:59:00 +00:00
EWouters
f050a426f5 Ports: Add grepcidr port 2022-12-20 10:33:00 +01:00
Clemens Wasser
7cd99572be Ports: Use double quotes for a string literal in qtbase port 2022-12-14 15:12:51 +00:00
Clemens Wasser
e225c7b0de Ports: Add missing include and update renamed function in OpenJDK patch 2022-12-14 15:12:51 +00:00
Andrew Kaster
232b40fefc Ports: Update CMake port to 3.25.1 2022-12-13 11:36:14 +01:00
Andrew Kaster
e28bc77778 Ports: Find cmake in Toolchain/Local/cmake if built
If a developer built cmake (or we built it for them) from source, make
sure that port builds can find that version of CMake that has the
SerenityOS platform files included.
2022-12-13 11:36:14 +01:00
EWouters
9a849c10ae Ports/git: Update git to version 2.39.0 2022-12-13 11:20:03 +01:00
sin-ack
cda5a530e6 Ports: Add zig port :^)
:yakkie:

The build process for the Zig compiler is more involved than most of
the other ports, because the Zig compiler is mostly self-hosting. In
order to build it, the zig-bootstrap build system is used, which does
the following:

1) Build LLVM for the host OS;
2) Build Zig for the host OS with the SerenityOS target enabled;
3) Build zlib, zstd and LLVM for SerenityOS using `zig cc` as the C/C++
   compiler;
4) Build Zig for SerenityOS using the host Zig.

A few hacks are required in order to tell `zig cc` and zig about what
Serenity's libc looks like in the build process, but other than that
it's fairly straightforward. All of the patches that are included with
this commit are Zig-upstream ready once the LLVM patches are upstreamed.
2022-12-11 19:55:37 -07:00
sin-ack
27da878bb7 Ports: Export CMAKE_BUILD_PARALLEL_LEVEL for ports scripts
When using cmake --build, CMake will look for this environment variable
to enable parallelism. The Zig port, for example, uses cmake --build,
and will otherwise use a single core if cmake selects Make as the build
system. This should help with all ports which use cmake --build.
2022-12-11 19:55:37 -07:00
Linus Groh
6e19ab2bbc AK+Everywhere: Rename String to DeprecatedString
We have a new, improved string type coming up in AK (OOM aware, no null
state), and while it's going to use UTF-8, the name UTF8String is a
mouthful - so let's free up the String name by renaming the existing
class.
Making the old one have an annoying name will hopefully also help with
quick adoption :^)
2022-12-06 08:54:33 +01:00
djwisdom
3f38f61043 Ports: Update serenity-theming app use latest commit
Add fonts Hantschrift and Schwedische Schreibschrift
2022-12-04 14:02:18 -08:00
Andrew Kaster
106c04d807 Ports: Update qt6-qt5compat to 6.4.0 2022-12-03 23:16:16 +00:00
Andrew Kaster
042e33cb13 Ports: Clean up host path detection in qt6-serenity
Follow the same pattern as the other Qt ports to use qmake to determine
the location of host binaries and libraries.
2022-12-03 23:16:16 +00:00
Andrew Kaster
b7cc7b4e02 Ports: Update Qt6 port to 6.4.0
While we're here, make the host path detection more portable.
2022-12-03 23:16:16 +00:00
Andrew Kaster
7555804572 Ports: Use CMake to build the zstd port
This makes the port install drop the CMake install files into the
sysroot, which is friendlier to macOS users. Homebrew CMake really
likes to pick homebrew zstd, even for cross-builds.
2022-12-03 23:16:16 +00:00
Andrew Kaster
6d9d9cb7f8 Ports: Add port for double-conversion 3.2.1
This IEEE floating point conversion library is required by Qt
2022-12-03 23:16:16 +00:00
Taj Morton
14baf35441 Ports/alpine: Add patches to build Alpine on Serenity 2022-12-03 22:12:13 +00:00
Clemens Wasser
9a5ae8a92a Ports: Add qt5compat port 2022-12-03 08:21:56 -07:00
cflip
5c68ca8f48 Ports/SDL2: Update window focus event listeners
Fixes an issue where ClassiCube would get stuck on the pause menu.
2022-11-28 13:11:16 +01:00
Rahmanu Hermawan
c54334c8e4 Ports/bc: Update to version 6.1.1 2022-11-26 09:31:40 +01:00
Jelle Raaijmakers
45108438ce Ports: Fix warning when building with useconfigure="false"
When building a port with `useconfigure="false"`, the `do_configure`
function invokes a `buildstep` with multiple positional arguments as the
command to execute.

It then tests whether the positional arguments evaluate to an emtpy
string, but could fail when multiple positional arguments were provided.
This resulted in the following warning when building the Composer port,
for example:

  ../.port_include.sh: line 16: [: echo: binary operator expected

Prevent this warning by testing against the number of positional
arguments, instead.
2022-11-24 12:06:25 +00:00
Jelle Raaijmakers
fef0330ee5 Ports: Clean up PHP's package.sh 2022-11-24 10:52:10 +00:00
Jelle Raaijmakers
aa32207746 Ports: Update PHP to 8.1.12 2022-11-24 10:52:10 +00:00
Jelle Raaijmakers
f89d6a046f Ports: Configure LibCrypt include path for PHP
Since ac40197047 LibCrypt has its own library. PHP tries to detect the
`crypt_data` struct but fails to do so since it cannot find `crypt.h`.
By adding this explicit include path, PHP builds again.
2022-11-24 10:52:10 +00:00
kleines Filmröllchen
20e51025bb Ports/SDL2: Rename LibGUI Window function in accordance with 5d56756 2022-11-23 15:06:15 +01:00
Brian Gianforcaro
d736b2c3c3 Ports: Update fio to version 3.33 2022-11-07 06:46:30 +01:00
Slimey
ce75a04908 Base+Ports: Rename 'Sound' category to 'Media' 2022-11-06 16:27:18 +01:00
Clemens Wasser
e5ddbfaed6 Ports: Enable ssl and ztd features for Qt port 2022-11-05 19:31:37 -06:00
Clemens Wasser
2a852250dd Ports: Build Qt modules Network and Concurrent 2022-11-05 19:31:37 -06:00
Xexxa
c8b1124e68 Ports: Update serenity-theming use latest commit 490a15a 2022-11-03 17:40:49 +00:00
Nico Weber
daeaefad17 Everywhere: Clean up "the the" comment typos 2022-11-03 17:38:32 +00:00
Jelle Raaijmakers
6b41da0b9e Ports: Update ScummVM to 2.6.1 2022-11-01 21:03:38 +00:00
Jelle Raaijmakers
aa05f9120c Ports: Update build flags for ScummVM
These were no longer being picked up after some recent changes. Since
port builds happen in subshells nowadays, we can get rid of the export /
unset combo anyway.

This fixes ScummVM crashing on startup, caused by `-fvisibility` not
being set.
2022-11-01 21:03:38 +00:00
Jan200101
83b3403b52 Ports: Add Lite-XL 2022-10-27 20:44:20 +01:00
krutalevex
6d2ea087a5 Ports: Update RetroArch + SDL2_sound 2022-10-27 13:16:59 +02:00
Kenneth Myhra
9b1dd57122 Ports: Update qemu to 7.1.0 2022-10-26 20:44:29 +01:00
Kenneth Myhra
eaf2cfbb17 Ports: Update glib to 2.74.1 2022-10-26 20:44:29 +01:00
Kenneth Myhra
1e3b677fa4 Ports: Update curl to 7.86.0 2022-10-26 20:44:29 +01:00
Liav A
6c37f04e88 Ports/OpenJDK: Use new global variables at /sys/kernel/ directory 2022-10-25 15:33:34 -06:00
Liav A
c8a7a3e43f Ports/libuv: Use new global variables at /sys/kernel/ directory 2022-10-25 15:33:34 -06:00
Liav A
78ca32d14c Ports/neofetch: Use new global variables at /sys/kernel/ directory 2022-10-25 15:33:34 -06:00
Linus Groh
edf3aee4df Ports/python3: Update Python to 3.11.0
This now requires `--host` and `--with-build-python` to be passed to the
configure script when cross compiling; the former we simply do like in
many other package.sh scripts as well, the latter we point to `python3`,
which is expected to match the port's version anyway.
2022-10-25 13:11:42 +01:00
Linus Groh
35ec636b5d Ports/python3: Reformat package.sh according to our current guidelines 2022-10-25 13:11:42 +01:00
Peter Elliott
0994e6964b Ports: Fix return statuses with new buildsteps
previously every buildstep would return a success error code. As a
result, all the steps would run even if previous steps failed.

I've also added a red status message when this happens.
2022-10-25 09:34:53 +02:00
Gunnar Beutner
8cc952b3dc Ports: Add port for the Boost C++ libraries
This currently requires GCC.
2022-10-24 15:49:39 +02:00
Tim Schumacher
e5e7ea90b1 Toolchain: Update LLVM to 15.0.3 2022-10-24 15:33:58 +02:00
Gunnar Beutner
eca4c51f78 Ports: Add Pacman port 2022-10-24 03:25:20 +02:00
Gunnar Beutner
7d4387d383 Ports: Fix building TiMidity++
The build would previously fail if Xorg headers are installed on the
host system.
2022-10-24 03:25:20 +02:00
Gunnar Beutner
2968cbca11 Ports: Prefix output with the build step and port name
We already have something similar for the toolchain builds. This makes
it easier to identify which build step is currently running.
2022-10-23 20:37:27 +02:00
Tim Schumacher
ed5996184b Ports/llvm: Add a dependency on zstd 2022-10-21 20:15:34 +02:00
Jelle Raaijmakers
e47ca2db0a Ports: Update Composer to 2.4.3 2022-10-21 14:31:32 +02:00
Jelle Raaijmakers
e70e4c132b Ports: Support Serenity install root in PHP's libtool
PHP's libtool does not have sysroot support; this is the minimum change
to get PHP to build.
2022-10-21 14:31:32 +02:00
Jelle Raaijmakers
684c038af0 Ports: Update PHP to 8.1.11 2022-10-21 14:31:32 +02:00
cflip
75d46e0e96 Ports: Add a ClassiCube port 2022-10-19 22:07:05 +02:00
cflip
fea43a647f Ports/libopenal: Build with SDL2 backend, and disable example programs
This patch fixes libopenal's build by disabling the alsoft-config
utility which required qt6, and disabling the example programs that were
causing compiler errors.

This also forces CMake to build with an SDL2 backend so audio can
actually be played.
2022-10-19 22:07:05 +02:00
cflip
f872d945c3 Ports/SDL2: Add null check to SerenitySDLWidget::paint_event
This was causing a crash when message boxes appeared before the window
painted anything.
2022-10-19 22:07:05 +02:00
Gunnar Beutner
ce8d410f36 Ports: Make the quake3 port buildable on ARM64 hosts
Previously, on ARM64 hosts we'd try to build ARM64 binaries even when
SERENITY_ARCH was set to x86_64. This would cause the build to fail.
2022-10-18 17:23:52 +02:00
cflip
66c039c66f Ports: Allow ports to specify working directory when run from launcher 2022-10-17 01:37:58 +02:00
Liav A
a2ccf31a62 Ports/dmidecode: Remove install and post_install overriden sequences
We used to do whole bunch of unnecessary things in the install sequence
which the default port_include script sequence can do just fine,
therefore the install sequence is removed from the port script.

The post_install sequence wrongly called "make install-bin" which could
be done in the default install sequence, as well as to create the /bin
directory which is completely unnecessary to do because the image build
script already does that for us. Also, now /usr/local/bin is in the PATH
environment variable, so the installed binaries are runnable without
creating symlinks in the /bin directory, therefore making the sequence
of post_install completely unnecessary in the script so it is removed
too.
2022-10-17 01:13:10 +02:00
Liav A
c0af32a83d Ports: Add potrace utility port 2022-10-17 01:08:22 +02:00
Liav A
711f64d366 Ports: Add tree utility port 2022-10-17 01:08:01 +02:00
Liav A
4b27c6e688 Ports: Add lzop compression utility port 2022-10-16 13:37:50 +02:00
Liav A
d7eb6d8330 Ports: Add lzo library port 2022-10-16 13:37:50 +02:00
Liav A
b6861ee24c Ports: Add GNU tar port 2022-10-16 13:37:29 +02:00
Liav A
1837a5301f Ports: Add GNU which port 2022-10-15 21:03:28 +02:00
Liav A
1e213cb3c4 Ports: Add file utility port 2022-10-15 21:02:57 +02:00
Tim Schumacher
414a22a386 Ports/dosfstools: Create symlinks automatically instead of manually
Replace the manual creation of symlinks with the
`--enable-compat-symlinks` configure option, which automatically creates
the symlinks that we want and more.
2022-10-15 15:17:47 +02:00
Tim Schumacher
4b97c445a2 Ports/dosfstools: Don't run autogen
The release tarball arrives preconfigured, so there is no need for us to
run autogen manually.
2022-10-15 15:17:47 +02:00
Liav A
6bb738c1b3 Ports: Add dosfstools port 2022-10-15 13:16:24 +02:00
demostanis
fe94636ac3 Ports: Add a kakoune port 2022-10-14 13:37:29 +02:00
cflip
30be638fb2 Ports/zlib: Update to 1.2.13 2022-10-14 11:37:25 +02:00
Liav A
9cbae2b607 Ports: Add dtc utility suite
This includes the known dtc utility as well with other bundled utilities
with it.
2022-10-09 09:51:57 -06:00
Liav A
8edde0709a Ports: Update dmidecode version to 3.4
Also, let's stop use the signature file and instead just compare sha256
checksums.
2022-10-08 17:27:42 +02:00
Liav A
33ce7c939a Ports: Apply the known hygiene rules on the dmidecode port 2022-10-08 17:27:42 +02:00
Liav A
71647871f9 Ports: Update lz4 port to version 1.9.4 2022-10-08 17:27:27 +02:00
EWouters
bc5d77ac40 Ports/ccache: Update ccache to version 4.6.3 2022-10-06 16:14:40 +01:00
Kenneth Myhra
8989482293 Ports/glib: Do not flag support for extended attributes (xattr) 2022-10-03 22:48:56 +01:00
Kenneth Myhra
64b46794b9 Ports/glib: Update GLib to version 2.74.0 2022-10-03 22:48:56 +01:00
Liav A
74018be739 Meta: Make x86-64 target the default
This is a preparation to check if our users find noticeable bugs in the
x86-64 target, before we can decide if we want to remove the i686 target
for good.
2022-10-03 11:14:53 +02:00
Andrew Kaster
32c9be30dc Ports/mold: Update to 1.5.1 and use CMake instead of Makefile
Per the release notes for 1.5.0, the CMake build is preferred going
forward. This lets us drop some Makefile patches and pass them as CMake
options instead, with the exception of disabling mold-wrapper.so.
2022-10-03 10:01:06 +01:00
djwisdom
7618f2290f Base: Update ports serenity-theming use latest commit f0100c2 2022-10-02 18:48:47 +01:00
Tim Schumacher
b288cd6976 Ports/sdl12-compat: Update to version 1.2.56 2022-10-02 00:59:39 +01:00
DJtheRedstoner
add7dd66f6 Ports/OpenJDK: Use posix_fallocate 2022-10-01 19:17:50 +01:00
DJtheRedstoner
bd08587ac9 Ports/OpenJDK: Update for the removal of StringView(char const*) 2022-10-01 19:17:50 +01:00
Tim Schumacher
1faca15193 Toolchain: Move the binutils patch into its own folder
This makes binutils compatible with `./package.sh dev`, so that we can
regenerate patches more easily, and neatly stack (temporary) patches on
top.
2022-10-01 18:43:29 +01:00
Tim Schumacher
be6b3710c8 Ports/qemu: Use the coarse monotonic clock for timing CPU ticks
While this loses quite a bit of accuracy (although to no apparent
decrease in emulation quality) , it helps avoiding the additional
overhead of the `clock_gettime` syscall (as `CLOCK_MONOTONIC_COARSE`
is forwarded using the mapped time page) and we don't have to do a
HPET timer read for each tick.

This results in a decrease of Serenity boot time from 1h16m down to
42m when running on Serenity.
2022-09-30 20:13:11 -07:00
Tim Schumacher
46b8a4cda3 Ports: Only regenerate patches if there are actual changed commits
We were previously comparing the hash against the hash after the initial
import, which caused us to regenerate patches every time as long as we
did have patches (even if they haven't changed at all) and the script
entirely missing that it should remove patches if the current commit is
the "import" commit.
2022-09-18 13:00:46 +04:30
Tim Schumacher
c1dc8c9ccb Ports: Handle generating a ReadMe for an empty patch directory 2022-09-18 13:00:46 +04:30
Tim Schumacher
f6005764d7 Ports: Place tags at important points in the commit history
This helps with easier rebasing and for easier comparing or returning to
the state at which the last actual on-disk patches were.
2022-09-18 13:00:46 +04:30
Tim Schumacher
1b9fb7041d Ports: Unify the git "origin" and the working copy
I've lost more changes to "you forgot to push the changed commits to the
remote" than I'd like to admit, so let's just unify both and only ever
use the actual working repository for detemining whether any patches
have changed.
2022-09-18 13:00:46 +04:30
Tim Schumacher
cb2f0d9861 Toolchain: Regenerate patches using the latest format rules 2022-09-18 13:00:46 +04:30
Tim Schumacher
453323f3c1 Ports: Force full-length file indices when formatting patches
This keeps file index lengths from being dependent on internals of the
repository.
2022-09-18 13:00:46 +04:30
Tim Schumacher
72c059535e Ports: Follow symlinks while discovering whether a port has patches
This enables us to use `./package.sh dev` with LLVM and GCC.
2022-09-18 13:00:46 +04:30
Tim Schumacher
4d29489705 Ports: Keep [...] prefixes while importing patches
This stops us from mangling our LLVM patch names and titles when using
`./package.sh dev`, as they like to put their category names in square
brackets.
2022-09-18 13:00:46 +04:30
Jelle Raaijmakers
09d211e08a Ports: Make SDL2 build since recent GL::create_context changes
We also directly invoke `::present` on `GLContext` instead of going
through the static method `GL::present_context`.
2022-09-17 19:38:30 +02:00
Tim Schumacher
119567e176 Ports: Remove the duplicated Clang compiler symlinks
Those have been added to the Clang build script in
d4d6f2d945, and now that the Clang version
has been updated, everyone should have those symlinks already anyways.
2022-09-16 05:39:28 +00:00
Tim Schumacher
f45238db0f Toolchain: Update to LLVM 15.0.0 2022-09-16 05:39:28 +00:00
Jelle Raaijmakers
7e85ec3431 Ports: Do not allow clean* to be overridden
There were only two packages making use of this functionality, but it
seems more sensible to have a fixed implementation for the cleaning of
ports - especially now they delete the entire build directory and/or
dist files.
2022-09-13 13:44:01 -04:00
Jelle Raaijmakers
5bfc61bc69 Ports: Actually clean port build directory
The functionality for `./package.sh clean` was a bit weird: based on
whether you were working in dev mode, it would try to delete either
`$workdir` or `$nongit_workdir` and `*.out` from your `pwd`.

The new functionality is pretty clear: `./package.sh clean` deletes the
entire build directory for the port regardless of what mode you're in,
`./package.sh clean_dist` removes all `$files`, and
`./package.sh clean_all` does both.
2022-09-13 13:44:01 -04:00
djwisdom
27fa038ffa Ports: Update serenity-theming use latest commit fbd26ec 2022-09-13 13:40:26 -04:00
Jelle Raaijmakers
9cf329183f Ports: Update Quake III's launcher name
Following what is commonly used on the internet as the game's title,
and making it consistent with Quake II.
2022-09-09 15:15:22 +02:00
Jelle Raaijmakers
39a9ebf4fc Ports: Update launcher path to Quake II
The launcher was not created as a result of the path not being
absolute. Also set a more commonly used title for the launcher.
2022-09-09 15:15:22 +02:00
djwisdom
dd510b24c9 Ports: Update serenity-theming use latest commit 3b4e1f2 2022-09-08 18:07:07 +01:00
Jelle Raaijmakers
f3877daac5 Ports: Build Quake in parallel
Instead of overwriting the existing `-j` makeopt, we only append
options. This brings the build time for the Quake port down from 24.3s
to 4.4s on my machine.
2022-09-08 12:08:09 -04:00
Jelle Raaijmakers
71c7ac3510 Ports: Remove invalid copy action from PrBoom+ build
This was a test that should have been removed in the previous PR.
2022-09-05 23:26:18 +02:00
Jelle Raaijmakers
6af184b48b Ports: Support SDL_WINDOWEVENT_CLOSE in SDL2
This allows PrBoom+ to properly quit the application when closing the
main window.
2022-09-03 00:07:24 +02:00
Jelle Raaijmakers
180effa8ac Ports: Add PrBoom+
Music (MIDI) works through TiMidity++ and OpenGL support works, but is
still very buggy. Sometimes PrBoom+ fails to load its own configuration
file, which can be worked around by deleting it.
2022-09-03 00:07:24 +02:00
Jelle Raaijmakers
808e0c9b17 Ports: Add TiMidity++
Also add it as a dependency for the `SDL_mixer` and `SDL2_mixer` ports.

Eawpats GUS patches are installed as part of the port, because without
patches TiMidity++ is not able to generate any sound. The license for
these is "fameware", credit to Andrew Suffield:

  https://lists.debian.org/debian-legal/2002/09/msg00137.html
2022-09-03 00:07:24 +02:00
Humberto Alves
fb5a39498a Ports/python3: Make pip work
Add two patches to allow Python's package manager to work on Serenity:

- The first one enables zlib module, which is needed for `ensurepip`
  command;
- The second patch fixes pip downloads, so it's possible to install
  packages from the PyPI repository.
2022-09-02 14:03:24 +01:00
Jelle Raaijmakers
fa2ece1183 Ports: Tidy up Quake2 platform patch
There were a lot of unrelated formatting changes in the patch, which is
now shrunk by roughly 60%.
2022-08-31 14:25:15 +01:00
Jelle Raaijmakers
b057a2d82b Ports: Fix Quake2 dynamic loading issues
Our DynamicLoader would choke on a couple of missing symbols. I'm not
certain how this could have worked before, but there we go. :^)
2022-08-31 14:25:15 +01:00
Jelle Raaijmakers
45b9fc2bad Ports: Move Quake2 port in-tree
All commits have been combined into one platform support patch.
2022-08-31 14:25:15 +01:00
Jelle Raaijmakers
14ece2ac90 Ports: Support "restarts" in SDL2
SDL2 applications are prone to reinitializing the SDL components when,
for example, changing the display resolution. This would lead to
crashes since we were doing things in the wrong order.

* We now decouple `GLContext` from `SDL_Window` a bit more, allowing
  the window to be destroyed before the GLContext.
* Do not quit the `GUI::Application`, let our event loop handle exiting

These changes allow changing the display resolution in the Quake3 port.
2022-08-31 12:42:55 +01:00
Valtteri Koskivuori
adf85c719a Ports: Disable libsamplerate dependency for SDL2
On Arch Linux, the build was picking up the system libsamplerate, which
is undesirable. Unlikely that it is needed on Serenity, so disabling it
is a good workaround.
2022-08-28 22:54:11 +01:00
Kenneth Myhra
e22311370b Ports/glib: Update GLib to version 2.73.3 2022-08-28 15:42:14 +01:00
Kenneth Myhra
f99eb2d11b Ports/glib: Switch to the offical Release tarball for GLib
The GLib repository contains several submodules which is part of the
build process, but the source code for these submodule is not part of
the Source code tarball generated by Gitlab. Switching to download the
Release tarball from download.gnome.org solves this issue. It first
became apparent in version 2.73.x.

Additional information at: https://gitlab.gnome.org/GNOME/glib/-/issues/2716
2022-08-28 15:42:14 +01:00
djwisdom
98672e09dd Ports: Update serenity-theming use latest commit 624c29a 2022-08-27 03:34:04 +00:00
Brian Gianforcaro
14264ca022 Ports: Update gcc to version 12.2.0 2022-08-24 22:24:34 +00:00
Brian Gianforcaro
46f41f40a2 Ports: Update binutils to version 2.39 2022-08-24 22:24:34 +00:00
Jelle Raaijmakers
eb6b78b950 Ports: Set correct path in .la files for libvorbis
These libtool archives incorrectly pointed to `/usr/local` causing
other ports not to be able to find the libvorbis libraries.

We cannot use `configure --prefix=...` since that will add up with our
fixed `make DESTDIR=...` logic, causing the path to be duplicated.

We can also not change that `DESTDIR` logic without influencing all
other port builds.

Finally, `configure --with-sysroot=...` doesn't work since not all
other ports (such as SDL_mixer) have a recent enough libtool to
understand the sysroot syntax.

So let's `sed` this and be done with it :^)
2022-08-24 12:14:18 +02:00
Jelle Raaijmakers
07a7d3e136 Ports: Select right config tools for SDL_mixer
Previously, you would need `sdl-config` and `libmikmod-config` on your
host machine to get SDL_mixer to build. With this patch, it always
works :^)
2022-08-24 11:59:50 +02:00
Brian Gianforcaro
77a725b6f4 Ports: Update stress-ng to version 0.14.03
The stress-ng project appears to have addressed all the issues
we had been patching, and thus we no longer need almost all of
these patches.
2022-08-24 07:29:49 +00:00
Tim Schumacher
a0820b205c Ports/SDL2_ttf: Update to 2.20.1 2022-08-23 13:30:48 +01:00
Tim Schumacher
4678028842 Ports/SDL2_net: Update to 2.2.0 2022-08-23 13:30:48 +01:00
Tim Schumacher
ebf713da60 Ports/SDL2_mixer: Update to 2.6.2 2022-08-23 13:30:48 +01:00
Tim Schumacher
1ce3b9ea48 Ports/SDL2_image: Update to 2.6.2 2022-08-23 13:30:48 +01:00
Tim Schumacher
831afe3c3d Ports/SDL2: Update to 2.24.0 2022-08-23 13:30:48 +01:00
Tim Schumacher
2e31a479c4 Ports/SDL2: Do an out-of-tree build
SDL 2.24.0 starts having include loops if we try to do an in-tree build
against its wishes, so let's not do that anymore.
2022-08-23 13:30:48 +01:00
Seal Sealy
ffe9a862f0 Ports: Add aclock port 2022-08-23 13:29:32 +01:00
pancake
d6deecf7d8 Ports: Update to the latest radare2-5.7.6 2022-08-14 18:34:59 +01:00
EWouters
1712b6b3ed Ports: Add port aria2 version 1.36.0 2022-08-14 18:24:30 +01:00
Tim Schumacher
7e245b74f1 Ports: Remove two getprogname patches that are no longer needed 2022-08-12 19:51:45 -07:00
djwisdom
7a91105270 Ports: Update serenity-theming use latest commit 018356b
Improve theming support include color-palettes, wallpapers and
terminal-colors folders
2022-08-12 01:04:15 -04:00
Daniel Bertalan
34ae69b99d Ports/bzip2: Set AR and RANLIB
bzip2's Makefile uses the '=' operator to set these variables so they
cannot be overridden by just the environment variables; we have to pass
them on the command line.

This change ensures that the system ar/ranlib are no longer used, so the
port can be build on macOS or non-x86 Linux.
2022-08-04 02:54:19 +02:00
Jelle Raaijmakers
b44275569b Ports: Download and install ScummVM game icons 2022-08-02 13:26:49 +01:00
Jelle Raaijmakers
e83d03038a Ports: Update ScummVM to 2.6.0 2022-08-02 13:26:49 +01:00
djwisdom
8ab31284e7 Ports: Update serenity-theming use commit 3dc8b8e 2022-08-01 14:28:27 +01:00
djwisdom
8598fbb008 Ports: Update serenity-theming use latest commit 5d626d9 2022-07-27 21:43:33 +00:00
djwisdom
fae715a2c2 Ports: Update serenity-theming use latest commit f6d9306 2022-07-23 10:41:25 +01:00
Tim Schumacher
218e6d2f5e Ports/SDL2: Rename LibAudio connection to ConnectionToServer 2022-07-23 00:21:13 +01:00
Tim Schumacher
a39a341e26 Ports: Update the CMake platform module from upstream
While we're at it, remove the `/bin/sh` patch that is no longer needed,
as we now build the port fully on the host.
2022-07-22 17:33:28 +01:00
djwisdom
268c146c04 Ports: Update serenity-theming use latest commit 98ea1b3 2022-07-19 10:50:05 +01:00
Tim Schumacher
028c26df76 Ports/opfor: Update to 2022.07.14 2022-07-16 23:13:43 +01:00
Tim Schumacher
9383ffadb6 Ports/halflife: Update to 2022.07.14 2022-07-16 23:13:43 +01:00
Tim Schumacher
cdb59ec82a Ports/xash3d-fwgs: Update to 2022.07.14 2022-07-16 23:13:43 +01:00
Tim Schumacher
4cf55c4056 Ports/SDL2: Update for the recent StringView changes 2022-07-16 23:13:43 +01:00
kleines Filmröllchen
6e25b501ad Ports: Make libmpg123 compile again
This was as simple as copying over the libtool patches from libvorbis
and removing now-unneeded Serenity-awareness patches.

Co-authored-by: Tim Schumacher <timschumi@gmx.de>
2022-07-15 12:34:52 +02:00
Liav A
e5de5f4cf3 Ports: Update libuv to use the right /proc/memstat values 2022-07-14 23:27:46 +02:00
Liav A
7b7847c707 Ports: Update neofetch to use the right /proc/memstat values 2022-07-14 23:27:46 +02:00
djwisdom
ae60357951 Ports: Update serenity-theming use latest commit 2ce930e 2022-07-14 04:34:19 +00:00
Tim Schumacher
75a1442aac Ports: Move build directories into Build/ 2022-07-13 21:22:52 +01:00
Tim Schumacher
99713afa0d Ports/opentyrian-data: Don't extract the archive a second time 2022-07-13 21:22:52 +01:00
Tim Schumacher
fb877effb8 Meta+Ports: Automatically generate a meson cross file that we can use 2022-07-13 21:22:52 +01:00
Tim Schumacher
0057b24b9e Ports/freedink: Don't extract freedink-data a second time
Our implicit extraction already takes care of this.
2022-07-13 21:22:52 +01:00
Tim Schumacher
b3f9d2a24e Ports/git: Store default gitconfig as heredoc 2022-07-13 21:22:52 +01:00
Tim Schumacher
9cbf65761d Ports/libicu: Evaluate the host build folder later
We need this to be the build directory, not the tarball directory.
2022-07-13 21:22:52 +01:00
Tim Schumacher
eaee7e9d5b Ports/cfunge: Remove workdir weirdness 2022-07-13 21:22:52 +01:00
Tim Schumacher
a813b941b8 Ports: Add a QEMU port 2022-07-08 22:27:38 +00:00
Tim Schumacher
5835373fc6 Ports: Add a port for pixman 2022-07-08 22:27:38 +00:00
Liav A
6256bdb075 Ports: Add QOI converter and QOI benchmark utility 2022-07-08 12:01:52 +02:00
Liav A
5fe4feee33 Ports: Add stb header files 2022-07-08 12:01:52 +02:00
Tim Schumacher
5bbd5e7322 Ports: Don't create ccache symlinks for tools we don't have 2022-07-07 19:32:33 +02:00
Luke Wilde
7fbc354829 Ports: Update OpenSSL to 1.1.1q 2022-07-07 16:30:51 +02:00
djwisdom
036f68f857 Ports: Update serenity-theming to latest commit 2022-07-04 05:50:32 +00:00
Nathan Ell
4947804121 Ports: Update dos2unix to 7.4.3
Update to the latest version of the upstream dos2unix, 7.4.3.
Simplify the URL used to download the upstream PGP key for the
dos2unix package, by leveraging the already well-used version
variable.
2022-07-03 21:56:03 +00:00
Tim Schumacher
0d2613ebeb Ports: Add a port of genext2fs 2022-07-01 14:32:03 +02:00
Andrew Kaster
6d4cfba596 Ports/ruby: Pass proper --with-coroutine flag per architecture
This fixes the x86_64 build. However, when built with clang x86_64,
ruby crashes on exit trying to free some memory that has an invalid
header magic. More work to be done here to make the x86_64 build work
properly.
2022-06-30 12:29:18 +01:00
Andrew Kaster
809852aeb1 Toolchain+Ports: Install host ruby into Local/ruby, not Local/$ARCH
Following the pattern for qemu, mold, and clang, we should install the
host ruby required to build the ruby port into its own install tree
rather than forcing it into the GNU compiler's bindir.
2022-06-30 12:29:18 +01:00
Andrew Kaster
dcc0f299be Toolchain+Ports: Install host python into Local/python, not Local/$ARCH
Following the pattern for qemu, mold, and clang, we should install the
host python required to build the python port into its own install tree
rather than forcing it into the GNU compiler's bindir.
2022-06-30 12:29:18 +01:00
Tim Schumacher
154f3dc4ae Ports: Add a port of e2fsprogs 2022-06-30 11:57:49 +02:00
Luke Wilde
2916b3bebf Ports: Update curl to 7.84.0 2022-06-27 22:51:52 +01:00
Liav A
e85b3fc750 Ports: Add edid-decode port 2022-06-25 12:10:04 +01:00
Liav A
410b2f5d29 Ports: Add GNU findutils utility suite 2022-06-25 12:08:43 +01:00
Liav A
e20706760f Ports: Add GNU gzip utility port 2022-06-25 12:01:45 +01:00
Liav A
f8611ec7bd Ports: Add GNU cpio archive utility port 2022-06-25 12:01:19 +01:00
Liav A
1cd610072a Ports: Add lz4 compression utility 2022-06-25 11:59:42 +01:00
Tim Schumacher
5b86698bb8 Ports/qt6-qtbase: Add md4c as a dependency 2022-06-24 23:20:28 +01:00
Tim Schumacher
a50400072e Ports: Add a port of md4c 2022-06-24 23:20:28 +01:00
Tim Schumacher
c0a7ac53cb Ports/mbedtls: Update to Mbed TLS 3.1.0 2022-06-24 22:39:52 +01:00
Tim Schumacher
3c43ac9eb5 Ports/lua: Update to Lua 5.4 2022-06-24 22:38:55 +01:00
Luke Wilde
69c451e485 Ports: Update OpenSSL to 1.1.1p
This also changes the source to fetch OpenSSL from the OpenSSL site, as
1.1.1p is not currently available from the usual source.
2022-06-21 18:14:55 +01:00
Grigoris Pavlakis
2fa907b31a Ports/gltron: Use sdl12-compat instead of SDL2 2022-06-20 23:24:45 +01:00
Grigoris Pavlakis
c98a275931 Ports: Add SDL_sound for SDL 1.2 2022-06-20 23:24:45 +01:00
Grigoris Pavlakis
de31f51bbe Ports: Move SDL_sound to SDL2_sound 2022-06-20 23:24:45 +01:00
SeekingBlues
dafea57fe2 Ports/ncurses: Disable mixed-case directory names when building on macOS
Since macOS's filesystem is case-insensitive, its `tic` only generates
terminfo directory names that are hex numbers instead of letters, such
as 78/xterm instead of x/xterm. However, the configure script still
enables the mixed-case directory name feature by default. As a result,
ncurses will fail when trying to find terminfo entries like x/xterm if
they are generated on macOS.

It seems like there is no way to change the behavior of `tic` to create
alphabetical directories, so we can only disable this option explicitly.
2022-06-19 19:50:23 +01:00
kleines Filmröllchen
b3d87f8e37 Ports: Update mold to 1.0.3 2022-06-19 15:45:14 +01:00
Timur Sultanov
1f886f94bd Ports: Add OpenJDK port
Port of OpenJDK 17.0.2, zero VM only.

More work needed to get the full hotspot VM up and running :^)

Co-Authored-By: Andrew Kaster <akaster@serenityos.org>
2022-06-19 09:05:35 +02:00
Andrew Kaster
ad0a001f0a Ports: Use $arch-serenity-pc-clang{++} for CC and CXX
This lets us eliminate the extra arguments on CC and CXX for ports that
care about CC and CXX pointing to actual filenames they can invoke
realpath or basename on.
2022-06-19 09:05:35 +02:00
Andrew Kaster
8c877664f7 Ports: Add variables for Toolchain binary directory and cxxfilt 2022-06-19 09:05:35 +02:00
kleines Filmröllchen
709f0a2ab3 Ports: Add OptiPNG
OptiPNG is a neat little tool that optimizes PNG sizes to ridiculous
degrees. We like to use it to optimize PNGs before including them in
Serenity itself, so it's a nice port to have. OptiPNG is a very
cooperative POSIX C program, it compiles and works without any patching
on x86_64 and i686 :^)
2022-06-17 21:53:28 +01:00
Grigoris Pavlakis
51315c0b1d Ports: Add VVVVVV port
Co-Authored-By: Tim Schumacher <timschumi@gmx.de>

(thanks for the line ending and assert() troubleshooting)
2022-06-17 19:18:33 +01:00
Tim Schumacher
e29e4e6c1f Ports: Ensure that core.autocrlf is disabled before handling patches
While `core.autocrlf=false` should be the default, there will certainly
be users that have changed the default setting in their global
configuration.

Ensure that the setting is disabled to avoid accidentally mangling or
not applying our patches.
2022-06-17 09:47:57 +01:00
Kenneth Myhra
fd5f18b4e1 Ports/glib: Bump GLib to 2.73.0 2022-06-15 10:55:54 +01:00
djwisdom
455c0b7794 Ports: Update serenity-theming to e4e2f26 2022-06-12 15:50:46 +01:00
Timur Sultanov
35d31dec7e Ports: Add option to disable ccache 2022-06-12 00:28:26 +01:00
Tim Schumacher
1b135f9127 Ports/glib: Add back a missing DESTDIR
Otherwise, glib will try installing to the host.
2022-06-10 14:21:42 +01:00
Tim Schumacher
333429fa47 Ports/SDL2: Implement a basic keyboard focus
Some SDL applications will not process inputs that they receive without
ensuring that they have the keyboard input focus.
2022-06-10 14:21:20 +01:00
Tim Schumacher
817c79431d Ports: Split up the halflife port into engine and game 2022-06-10 00:04:33 +01:00
Tim Schumacher
d426c5a4b2 Ports: Format patches without numbering, commit hash or version number 2022-06-08 17:58:36 +01:00
Tim Schumacher
d69a79b03b Ports: Automatically enter the work directory when running dev 2022-06-08 17:58:36 +01:00
Tim Schumacher
f76f68aad9 Ports/libtiff: Set the correct sysroot 2022-06-08 13:23:04 +01:00
Tim Schumacher
5704b7e128 Ports/awk: Change the file name to match the compression 2022-06-08 13:23:04 +01:00
Tim Schumacher
869333e10e Ports/mrsh: Explicitly disable readline support
Previously, `mrsh` automatically enabled support for `readline` if it
was detected as installed. However, linking against `readline` currently
doesn't work, so disable it completely instead.
2022-06-08 13:23:04 +01:00
Tim Schumacher
86d71028df Ports/readline: Build it as a shared library 2022-06-08 13:23:04 +01:00
Tim Schumacher
29c408d9db Ports/gnucobol: Set the correct sysroot 2022-06-08 13:23:04 +01:00
Tim Schumacher
b51bc1aa4e Ports/fontconfig: Import the libtool patch
This previously went unnoticed because `fontconfig` was never linked
into a shared library manually.
2022-06-08 13:23:04 +01:00
Tim Schumacher
90dafefb9e Ports/freetype: Set the correct sysroot
This is now required after we don't manually link the build output
anymore.
2022-06-08 13:23:04 +01:00
Tim Schumacher
b67b5b8292 Ports/thesilversearcher: Change the file name to match the compression 2022-06-08 13:23:04 +01:00
EWouters
e3eb45c6e5 Ports/x264: Update x264 to version baee400 2022-06-08 11:40:31 +01:00
EWouters
6f4a903be6 Ports/sqlite: Update sqlite to version 3380500 2022-06-08 11:40:31 +01:00
EWouters
7e3a952158 Ports/radare2: Support x86_64
This update was merged with a33b9a8, which has the `--disable-threads`
flag. This update brings support for `x86_64` and uses a more up to date
Github url. It also removes the `workdir` as it was set to the default.
2022-06-08 11:40:31 +01:00
EWouters
4d2f148267 Ports/pt2-clone: Update pt2-clone to version 1.49 2022-06-08 11:40:31 +01:00
EWouters
a9e9b55380 Ports/php: Update php to version 8.1.6 2022-06-08 11:40:31 +01:00
EWouters
e26d0a9c9f Ports/pcre2: Use sha256 to check the downloaded file 2022-06-08 11:40:31 +01:00
EWouters
bb98991ff8 Ports/pcre2: Update pcre2 to version 10.40 2022-06-08 11:40:31 +01:00
EWouters
a25ab52ee7 Ports/oksh: Update oksh to version 7.1 2022-06-08 11:40:31 +01:00
EWouters
efa9b7d9a1 Ports/ninja: Update ninja to version 1.11.0 2022-06-08 11:40:31 +01:00
EWouters
41390c9da8 Ports/ncdu: Update ncdu to version 1.17 2022-06-08 11:40:31 +01:00
EWouters
6d1ec983a4 Ports/nano: Use sha256 to check the downloaded file 2022-06-08 11:40:31 +01:00
EWouters
2714e58b52 Ports/nano: Update nano to version 6.3 2022-06-08 11:40:31 +01:00
EWouters
b706d7cf57 Ports/m4: Use sha256 to check the downloaded file 2022-06-08 11:40:31 +01:00
EWouters
9846533ce4 Ports/m4: Update m4 to version 1.4.19 2022-06-08 11:40:31 +01:00
EWouters
d73bb1dcd6 Ports/links: Update links to version 2.26 2022-06-08 11:40:31 +01:00
EWouters
7f0d4eef76 Ports/libzip: Update libzip to version 1.8.0 2022-06-08 11:40:31 +01:00
EWouters
582192ce91 Ports/libxml2: Update libxml2 to version 2.9.14 2022-06-08 11:40:31 +01:00
EWouters
459c49803b Ports/libtiff: Update libtiff to version 4.4.0 2022-06-08 11:40:31 +01:00
EWouters
411277e5d0 Ports/libiconv: Update libiconv to version 1.17
This also removes the patch that stubbed out `getprogname()` as it is no
longer needed.
2022-06-08 11:40:31 +01:00
EWouters
41bb21985e Ports/libgpg-error: Update libgpg-error to version 1.45 2022-06-08 11:40:31 +01:00
EWouters
accf20c83e Ports/harfbuzz: Update harfbuzz to version 4.3.0 2022-06-08 11:40:31 +01:00
EWouters
9a692aaabc Ports/glib: Update glib to version 2.72.2 2022-06-08 11:40:31 +01:00
EWouters
810f363fc0 Ports/git: Update git to version 2.36.1 2022-06-08 11:40:31 +01:00
EWouters
dea9eff3cd Ports/frotz: Update frotz to version 2.54 2022-06-08 11:40:31 +01:00
EWouters
b3cf5a5df7 Ports/freetype: Update freetype to version 2.12.1 2022-06-08 11:40:31 +01:00
EWouters
b0f8f4ca7d Ports/fio: Update fio to version 3.30 2022-06-08 11:40:31 +01:00
EWouters
202f7c48ed Ports/dialog: Use sha256 to check the downloaded file 2022-06-08 11:40:31 +01:00
EWouters
f24aa0d574 Ports/dialog: Update dialog to version 1.3-20220526 2022-06-08 11:40:31 +01:00
EWouters
2a9a2f17a1 Ports/composer: Update composer to version 2.3.5 2022-06-08 11:40:31 +01:00
EWouters
34eff055b2 Ports/brogue: Update brogue to version 1.11.1 2022-06-08 11:40:31 +01:00
EWouters
6238b3896a Ports/bc: Remove hardcoded HOSTCC
The configure script will pick up the `HOSTCC` via `HOST_CC`, which is
defined in `Ports/.hosted_defs.sh`.
2022-06-08 11:40:31 +01:00
EWouters
49928a5703 Ports/bc: Use sha256 to check the downloaded file 2022-06-08 11:40:31 +01:00
EWouters
1da48b2c0c Ports/bc: Update bc to version 5.2.5 2022-06-08 11:40:31 +01:00
EWouters
3a611ff2cb Ports/libyaml: Add correct workdir
This fixes the `workdir` after fd9125c and uses single quotes for
strings.
2022-06-07 22:23:26 +01:00
SeekingBlues
c579617375 Ports: Unbreak ccache 2022-06-05 22:32:26 +01:00
pancake
a33b9a8bca Ports: Update radare2 from 5.4.0 to the latest 5.7.0 2022-06-05 22:14:25 +01:00
Xexxa
2a171dfc38 Ports: Update serenity-theming to 2287073 2022-06-04 21:48:03 +01:00
Tim Schumacher
0ecf17cf91 Ports: Replace manually linking xz with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
1c66ec7aea Ports: Replace manually linking ntbtls with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
1f726791fb Ports: Replace manually linking npth with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
834e0ee614 Ports: Replace manually linking libxml2 with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
9213ed85f0 Ports: Replace manually linking libvorbis with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
e3b29ef61c Ports: Replace manually linking libtiff with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
bd7bcd2407 Ports: Replace manually linking libtheora with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
6d20f2aaa1 Ports: Replace manually linking libsodium with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
e9e6dd925c Ports: Replace manually linking libpng with a libtool patch 2022-06-03 20:50:01 +01:00