Commit graph

335 commits

Author SHA1 Message Date
Gunnar Beutner 6a808d96b5 Ports: Add port for libicu
I was trying to port openttd which I ultimately gave up on because
too much of the C++ standard library's functionality is missing at this
point. The libicu library was a dependency for that.

In its current state the libicu port is not thread-safe because of
missing functionality in the C++ standard library (mainly std::mutex,
std::condition_variable, etc.).
2021-04-14 21:46:20 +02:00
Gunnar Beutner 28b3c8bc1d Port: Support running some configure/build commands with the host toolchain
This is useful for ports which depend on running tools on the host system.
In this case we can build the port twice - once for the host and once for
the target system.
2021-04-14 21:46:20 +02:00
Gunnar Beutner 9e9b508390 Ports: Fix building SDL2_ttf when X11 headers are installed on the host system 2021-04-14 21:46:20 +02:00
Gunnar Beutner 8874b4b4fe Ports: Make sure pkg-config only picks up packages from the target 2021-04-14 21:46:20 +02:00
Gunnar Beutner 1942c1061c Ports: Fix building the nasm port 2021-04-14 13:13:21 +02:00
Gunnar Beutner 0a600a3c36 Ports: Add gnupg port 2021-04-14 13:13:06 +02:00
Gunnar Beutner ba5710871b Ports: Add libgcrypt port 2021-04-14 13:13:06 +02:00
Gunnar Beutner 3cfc05fb8a Ports: Add ntbtls port 2021-04-14 13:13:06 +02:00
Gunnar Beutner 45f1170691 Ports: Add libgpg-error port 2021-04-14 13:13:06 +02:00
Gunnar Beutner c3aac8cbe7 Ports: Add libassuan port 2021-04-14 13:13:06 +02:00
Gunnar Beutner 700cad4508 Ports: Add libksba port 2021-04-14 13:13:06 +02:00
Gunnar Beutner 0b7079a76a Ports: Add npth port 2021-04-14 13:13:06 +02:00
Gunnar Beutner a937182254 Ports: Build the shared library for the libiconv port
I'd rather use libtool to build the library but that would
require more extensive changes to the configure script
and maybe even libtool itself. So instead I just build
it manually.
2021-04-14 13:13:06 +02:00
Gunnar Beutner 341b44b6f7 Ports: Fix building the stress-ng port 2021-04-14 13:12:52 +02:00
Tom Needham 209de3bcb3
Ports: Update nasm port to version 2.15.05 (#6292)
Fixes #6157.
2021-04-14 10:20:07 +02:00
Tom Needham 9b75b1be5f Ports: patch config.sub instead of the configure script in the yasm port 2021-04-13 21:47:11 +02:00
Gunnar Beutner 84ad8a51d3 Ports: Link curl against openssl and disable non-blocking I/O
For some reason curl complains that SSL_connect() fails when
non-blocking I/O is enabled. With blocking I/O it works just
fine though.
2021-04-12 22:44:49 +02:00
Gunnar Beutner 317b2d7f92 Ports: Remove configure option which disables getattrinfo() for curl 2021-04-12 22:44:49 +02:00
Gunnar Beutner f34d951f28 Ports: Fix for building openssh 2021-04-12 22:44:49 +02:00
Gunnar Beutner 0f98569617 Ports: Remove obsolete patches for <limits.h> 2021-04-12 22:37:34 +02:00
Peter Elliott fbbb4b3395 Ports: fallback to pro when curl is not installed 2021-04-12 14:06:24 +02:00
Peter Elliott f71102a474 Ports: Require less commands in .port_include.sh
- fallback to http with curl when https fails
- add --no-gpg-verification, which will skip gpg signature verification
2021-04-12 14:06:24 +02:00
Peter Elliott a09421f1be Ports: Don't use getaddrinfo for curl
serenity's getaddrinfo is a stub, but curl detects it anyway, and uses
it instead of gethostbyname.
2021-04-12 14:06:24 +02:00
Peter Elliott 938924f36d Meta: Add install-ports CMake target
install-ports copys the necessary files from Ports/ to /usr/Ports. Also
refactor the compiler and destiation variables from .port_include.sh
into .hosted_defs.sh. .hosted_defs.sh does not exists when ports are
built in serenity
2021-04-12 14:06:24 +02:00
Brendan Coles 9c3948ef3e Ports: Add Dialog 2021-04-12 11:24:31 +02:00
Brendan Coles 435bd841ee Ports: Add GNU libtool 2021-04-12 11:23:48 +02:00
Tom Needham ad4a4ba1c6
Ports: Add Port for the yasm assembler (#6149)
This is a required dependency for many libraries.
2021-04-11 18:25:26 +02:00
Brian Gianforcaro b6726df828 Ports: Fix Ports/README.md to match lint rule 2021-04-11 11:15:22 +02:00
Gunnar Beutner 9c8ba58029 Ports: Fix building diffutils 2021-04-11 09:51:20 +02:00
Gunnar Beutner 6e51ea1e2e Ports: Fix building the git port
Because libiconv is now buildable the configure script fails when
libiconv was installed.
2021-04-11 09:51:20 +02:00
Gunnar Beutner dc446920e0 Ports: Fix building the libexpat port 2021-04-11 09:51:20 +02:00
Gunnar Beutner 6f514b6803 Ports: Fix building the nesalizer port when SDL2 isn't installed on the host 2021-04-11 09:51:20 +02:00
Gunnar Beutner 468be9292e Ports: Fix building the dropbear port 2021-04-11 09:51:20 +02:00
Gunnar Beutner 5ae64035a6 Ports: Fix install actions for the dmidecode port when re-installing the port
When re-installing the port the symlink already exists which causes
'ln -s' to fail.
2021-04-11 09:51:20 +02:00
Gunnar Beutner 184fea5fc1 Ports: Fix building the frotz port 2021-04-11 09:51:20 +02:00
Gunnar Beutner 437a214085 Ports: Remove config opts for dash 2021-04-11 01:18:02 +02:00
Gunnar Beutner f43f4a16e7 Ports: Fix install actions for the bash port when re-installing the port
When re-installing the port the symlink already exists which causes
'ln -s' to fail.
2021-04-11 01:18:02 +02:00
Brendan Coles 1d7bec0fe7 Ports: Download GNU port archives and signatures using HTTPS 2021-04-10 21:05:20 +02:00
Brendan Coles ee25d6940f Ports: Add GnuCOBOL 2021-04-08 21:58:57 +02:00
Brendan Coles 6c3e0cc98a Ports: Add GNU Multiple Precision Arithmetic Library (GMP) 2021-04-08 09:17:42 +02:00
Linus Groh a9fa3fb095 Ports: Update Python to 3.9.4
Released on 2021-04-04 as a hotfix release superseding 3.9.3.
https://www.python.org/downloads/release/python-394/
2021-04-06 22:25:33 +02:00
Arthur Mendes 0fd50f0283
Ports: Add flatbuffers library (#6050)
The flatbuffers library is a serialization library, created by Google
for game development and performance-critical applications.
It aims to be fast and efficient.

This commit creates a port of it to SerenityOS.

The flatbuffers build process generates three things: some header files,
a library (libflatbuffers) and a schema compiler (flatc).

There are tests, but they are not compiled, because it runs the
flatbuffers schema compiler, one of the things we are cross-compiling.
The compiler will not run because the target is different from the host
2021-04-06 17:54:28 +02:00
Manuel Palenzuela 4f690408af Ports: Added a Super-Mario clone port.
Added a minimal dependency super mario port. (Only depends on SDL, SDL_image and SDL_mixer).
2021-04-06 09:32:37 +02:00
Manuel Palenzuela 8b0f1f816b Ports: Added an oksh port
Currently has some problems such as not killing jobs when (ctrl + c)
and depends on an implementation of sigsuspend.
2021-04-06 08:10:18 +02:00
Manuel Palenzuela a1815b0f87 Ports: Added the libzip library 2021-04-05 20:04:15 +02:00
Larkin Nickle 1333fa7cf7 Ports: Add carl 2021-04-05 18:25:46 +02:00
Linus Groh 0490540e21 Ports: Add SDL2_gfx 2021-04-04 19:56:11 +02:00
Linus Groh dabfeb6dd8 Ports: Set freetype2 include path for SDL2_ttf
It tried to use some headers from my host machine and failed to build.
2021-04-04 17:42:50 +02:00
Manuel Palenzuela 136588e240 Ports: Removed now unnecesary patch for the Prince of Persia port
As now strtoimax() is implemented we have no need to replace it to
strtol().
2021-04-04 16:14:23 +02:00
Alexander 8e4e640717 Ports: fix libvorbis installtion prefix 2021-04-04 16:04:38 +02:00
Jelle Raaijmakers a856e8d805 Ports: Add ScummVM 2021-04-04 08:28:47 +02:00
Manuel Palenzuela 83b5655977 Ports: Added a Prince of Persia (SDLPoP) port.
This is a port of the dissasembly version of the DOS prince of persia
game :)
2021-04-03 23:30:27 +02:00
Manuel Palenzuela d09cd85b6c Ports: Added a cmatrix port 2021-04-03 18:55:02 +02:00
Linus Groh 563712abce Ports: Build Python with --disable-ipv6
The addition of some IPv6 related things makes the configure script
think we support it now. We don't.
2021-04-01 22:49:44 +02:00
Manuel Palenzuela a8f8e883c1 Ports: Updated the SDL2_mixer port to make it compile without
the opus and modplug music libraries.

Previously it wasnt compiling as we do not have ports of those
libraries. I have also changed the install location of the library so it
installs under /usr/include/SDL2 instead of /usr/local/include/SDL2.
2021-04-01 20:55:49 +02:00
Manuel Palenzuela 8324e48218 Ports: Added a SDL2_image port 2021-04-01 20:55:32 +02:00
Linus Groh 4e2d4b193a Ports: Get Python's --build value from config.guess 2021-04-01 20:54:05 +02:00
Alexander 86ecbd809f Ports: add libvorbis 2021-04-01 08:28:20 +02:00
Brendan Coles 6718941715 Ports: Links: Bump version from 2.19 to 2.22 2021-03-31 22:47:40 +02:00
Linus Groh 4fac577cf0 Ports: Use 'env bash' in hatari and pt2-clone package.sh shebang 2021-03-30 21:13:12 +02:00
Manuel Palenzuela 54b4d7611c Ports: Added a chester port, a very simple GameBoy emulator. 2021-03-30 21:11:23 +02:00
Jelle Raaijmakers 3cd8d7e968 Ports/SQLite: Remove HAVE_UTIME compilation flag 2021-03-29 19:58:12 +02:00
Andreas Kling 52ce7ed842 Ports: Switch to new SDL2 port
I've rebased the SDL2 port on top of the latest SDL2 main branch.
This patch simply points the SDL2 port scripts to the new branch.
2021-03-27 22:57:08 +01:00
Jelle Raaijmakers 9c141d0a87 Ports: Add SQLite 2021-03-27 19:43:14 +01:00
AnicJov d3630a7b1f Ports: Fix m4
This patch fixes the m4 port by removing unneeded make subdirs that
would cause the build to fail on some systems. We now only care about
the `lib` and `src`.
2021-03-25 10:58:45 +01:00
Jaan 226e063207 Ports: vitetris 2021-03-21 09:33:35 +01:00
Dan MacDonald 3dfa3d2d9d
Ports: Add Hatari Atari ST/STE/TT/Falcon emulator (#5812) 2021-03-16 21:53:13 +01:00
Tom Needham daf2e5d335 Ports: Do not call ./package.sh from a subshell in ./build_all.sh
This patch ensures that ./package.sh is run in the same shell
This solves compiling issues when building certain ports.

This fix was suggested by linusg in
https://github.com/SerenityOS/serenity/issues/5783#issuecomment-798906817
2021-03-15 09:07:17 +01:00
Tom Needham 26d72d3048 Ports: Allow verbose argument in build_all.sh
This patch allows for a verbose argument to be passed
so that the build output of the individual builds
is printed to stdout instead of /dev/null to help with diagnosing errors

If the verbose argument is not passed the old behaviour is preserved
and the build output is printed to /dev/null
2021-03-15 09:07:17 +01:00
Ben Wiederhake 6cf8e3c980 Ports: Make gnuplot build fail later 2021-03-14 11:30:38 +01:00
Ben Wiederhake 60b458f5b3 Ports: Fix 'bc' port
Previously, these features were apparently auto-disabled, because we do not yet
support and never did support translations or the FIONREAD ioctl.
2021-03-14 11:30:38 +01:00
Ben Wiederhake 071b31338a Ports: Remove ever-broken 'editline' build
I'm sorry @The-King-of-Toasters, but it never worked and apparently noone uses/fixes it,
so let's remove it? Alternatively, see discussion in #2677.
2021-03-14 11:30:38 +01:00
Ben Wiederhake 4100aa52d9 Ports: Fix cross-compiling git for serenity
No idea how this is supposed to work, because git's buildscripts execute
'uname -S' to determine which functions are available - and that's not how
cross-compilation works.
2021-03-14 11:30:38 +01:00
Ben Wiederhake e23fc195e7 Ports: Fix package.sh executable bits 2021-03-14 11:30:38 +01:00
Linus Groh 161b36bb09 Ports: Update c-ray patches 2021-03-13 22:44:16 +01:00
Linus Groh 5e4808878d Ports: Fix klong's package.sh 2021-03-13 13:35:24 +01:00
Linus Groh 15a820e9ad Ports: Use SERENITY_ARCH in .port_include.sh if already defined
Instead of always hardcoding i686, only use it as fallback value as we
already do in other scripts.
2021-03-13 13:13:03 +01:00
Linus Groh 4c497228a9 Ports: Use SERENITY_ARCH in --target/--host
Recent ports already do this, let's update the others as well. One step
closer to multi-arch support for ports! :^)
2021-03-13 13:13:03 +01:00
Linus Groh 7cb9237be9 Ports: Remove/replace hardcoded i686-pc-serenity-{gcc,g++,ar,ranlib}
Except in the Lua port's Makefile patch, I couldn't figure this out...
2021-03-13 13:13:03 +01:00
Linus Groh f9cf6bfce1 Ports: Remove redundant 'workdir' entries 2021-03-13 13:13:03 +01:00
Linus Groh 37f837bde7 Ports: Replace hardcoded versions in 'files' URLs
Let's just use $version everywhere (we already do this for most ports).
2021-03-13 13:13:03 +01:00
Linus Groh f318ab6bed Ports: Replace hardcoded Build/ paths with SERENITY_BUILD_DIR
Fixes #5710.
2021-03-11 21:01:29 +01:00
AnicJov 68f2ef1097 Ports: Add libogg
This library will allow us to port more multimedia programs and games,
since it's a common dependency of such projects. I was looking at
Scummvm's dependencies in particular, with a goal of porting them all
eventually, so that we can have Myst running in Serenity!
2021-03-09 07:29:35 +01:00
Andreas Kling 096c4571bb Ports: Add SDL2_mixer 2021-03-08 13:15:35 +01:00
Jorropo 9eff9b8cea Ports/git: remove no longer needed patches 2021-03-08 10:22:14 +01:00
Emanuele Torre 1f81bc6879 Everywhere: Remove unnecessary whitespace at the end of some lines. 2021-03-08 09:20:53 +01:00
aabajyan 0dfbc2c702 Ports: Add Genemu
This is a Basic Genesis / MegaDrive Emulator, that only requires
SDL2 to run it.

Usage: genemu /path/to/game.bin
2021-03-08 08:57:12 +01:00
Jelle Raaijmakers f9f9cda025 LibCompress: Rename libcompression.so to libcompress.so 2021-03-07 18:14:54 +01:00
Andreas Kling 30b957e46c Ports: Add SDL2_ttf 2021-03-07 17:48:21 +01:00
Jorropo 25e4a3467d Ports/git: Forcing NO_IPV6 option.
This fixes the build, how ever I don't know why the auto detection
broke in the first place.
2021-03-06 14:57:44 +01:00
Luke 89846b5b7c Ports: Add bzip2 port
Saw that it can be included with the freetype port, so I added it.
2021-03-06 14:56:51 +01:00
Luke 3f969286d7 Ports: Add zlib dependency to libpng
I didn't have zlib installed when I was trying to compile libpng.
It said it was missing, so add a dependency to zlib.
2021-03-06 14:53:46 +01:00
Andreas Kling e0e8c6f70e Ports: Add FreeType 2.10.4 2021-03-05 21:58:52 +01:00
TheMorc 538975b713 Ports: Add libpng 1.6.37 2021-03-03 23:12:53 +01:00
Andreas Kling 74d1caf7d1 Ports: Build curl with --disable-ipv6 2021-03-01 19:51:23 +01:00
Linus Groh 4166765292 Ports: Update Python to 3.9.2
Released on 2021-02-19, no patch changes required.
https://www.python.org/downloads/release/python-392/
2021-02-21 21:44:52 +01:00
Linus Groh 46efd2f741 Ports: Update vttest version in AvailablePorts.md 2021-02-20 18:31:00 +01:00
Andreas Kling 61c5bd08af Ports: Update vttest to latest version 2021-02-20 17:04:46 +01:00
Itamar 7df61e2c9b Toolchain: Use -ftls-model=initial-exec by default
Our TLS implementation relies on the TLS model being "initial-exec".
We previously enforced this by adding the '-ftls-model=initial-exec'
flag in the root CmakeLists file, but that did not affect ports - So
now we put that flag in the gcc spec files.

Closes #5366
2021-02-19 15:21:24 +01:00
jonno85uk a4d4571522 Ports: Add libjpeg 9d 2021-02-19 12:18:46 +01:00