Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ports: Update/Add multiple ports #23289

Merged
merged 9 commits into from Mar 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
16 changes: 9 additions & 7 deletions Ports/AvailablePorts.md
Expand Up @@ -105,9 +105,10 @@ This list is also available at [ports.serenityos.net](https://ports.serenityos.n
| [`gn`](gn/) | GN Meta Build System | 2023.07.12 | https://gn.googlesource.com/gn/ |
fdellwing marked this conversation as resolved.
Show resolved Hide resolved
| [`gnuapl`](gnuapl/) | GNU APL | 1.8 | https://www.gnu.org/software/apl/ |
| [`gnucobol`](gnucobol/) | GnuCOBOL | 3.1.2 | https://gnucobol.sourceforge.io/ |
| [`gnupg`](gnupg/) | GnuPG | 2.4.3 | https://gnupg.org/software/index.html |
| [`gnupg`](gnupg/) | GnuPG | 2.4.5 | https://gnupg.org/software/index.html |
| [`gnuplot`](gnuplot/) | Gnuplot | 5.4.8 | http://www.gnuplot.info/ |
| [`gperf`](gperf/) | GNU gperf | 3.1 | https://www.gnu.org/software/gperf/ |
| [`gpgme`](gpgme/) | GnuPG Made Easy (GPGME) | 1.23.2 | https://gnupg.org/software/gpgme/index.html |
| [`grep`](grep/) | GNU Grep | 3.11 | https://www.gnu.org/software/grep/ |
| [`grepcidr`](grepcidr/) | grepcidr | 2.0 | http://www.pc-tools.net/unix/grepcidr/ |
| [`griffon`](griffon/) | The Griffon Legend | 1.0 | https://www.scummvm.org/games/#games-griffon |
Expand Down Expand Up @@ -138,23 +139,23 @@ This list is also available at [ports.serenityos.net](https://ports.serenityos.n
| [`lcms2`](lcms2/) | Small-footprint color management engine | 2.15 | https://github.com/mm2/Little-CMS |
| [`less`](less/) | less | 643 | https://www.greenwoodsoftware.com/less/ |
| [`libarchive`](libarchive/) | libarchive | 3.7.1 | https://libarchive.org/ |
| [`libassuan`](libassuan/) | libassuan | 2.5.6 | https://gnupg.org/software/libassuan/index.html |
| [`libassuan`](libassuan/) | libassuan | 2.5.7 | https://gnupg.org/software/libassuan/index.html |
| [`libatomic_ops`](libatomic_ops/) | libatomic\_ops | 7.6.14 | https://www.hboehm.info/gc/ |
| [`libenet`](libenet/) | libenet | 1.3.17 | http://sauerbraten.org/enet/ |
| [`libexpat`](libexpat/) | Expat | 2.5.0 | https://libexpat.github.io/ |
| [`libffi`](libffi/) | libffi | 3.4.4 | https://www.sourceware.org/libffi/ |
| [`libfftw3`](libfftw3/) | Fastest Fourier Transform in the West (double precision) | 3.3.10 | https://www.fftw.org/ |
| [`libfftw3f`](libfftw3f/) | Fastest Fourier Transform in the West (single precision) | 3.3.10 | https://www.fftw.org/ |
| [`libfts`](libfts/) | libfts | 1.2.7 | https://github.com/void-linux/musl-fts |
| [`libgcrypt`](libgcrypt/) | libgcrypt | 1.10.2 | https://gnupg.org/software/libgcrypt/index.html |
| [`libgcrypt`](libgcrypt/) | libgcrypt | 1.10.3 | https://gnupg.org/software/libgcrypt/index.html |
| [`libgd`](libgd/) | libgd | 2.3.3 | https://libgd.github.io/ |
| [`libgpg-error`](libgpg-error/) | libgpg-error | 1.47 | https://gnupg.org/software/libgpg-error/index.html |
| [`libgpg-error`](libgpg-error/) | libgpg-error | 1.48 | https://gnupg.org/software/libgpg-error/index.html |
| [`libiconv`](libiconv/) | GNU libiconv | 1.17 | https://www.gnu.org/software/libiconv/ |
| [`libicu`](libicu/) | ICU | 73.2 | http://site.icu-project.org/ |
| [`libjodycode`](libjodycode/) | libjodycode | 3.1 | https://github.com/jbruchon/libjodycode |
| [`libjpeg`](libjpeg/) | libjpeg | 9e | https://ijg.org/ |
| [`libjxl`](libjxl/) | libjxl | 2023.09.11 | https://github.com/libjxl/libjxl |
| [`libksba`](libksba/) | libksba | 1.6.4 | https://gnupg.org/software/libksba/index.html |
| [`libksba`](libksba/) | libksba | 1.6.6 | https://gnupg.org/software/libksba/index.html |
| [`liblzf`](liblzf/) | LibLZF is a very small data compression library | 3.6 | http://software.schmorp.de/pkg/liblzf.html |
| [`libmad`](libmad/) | libmad | 0.15.1b | https://www.underbit.com/products/mad/ |
| [`libmikmod`](libmikmod/) | libmikmod | 3.3.11.1 | http://mikmod.sourceforge.net/ |
Expand Down Expand Up @@ -228,12 +229,13 @@ This list is also available at [ports.serenityos.net](https://ports.serenityos.n
| [`nlohmann-json`](nlohmann-json/) | JSON for Modern C++ | 3.11.2 | https://json.nlohmann.me/ |
| [`nnn`](nnn/) | nnn file manager | 4.8 | https://github.com/jarun/nnn |
| [`npiet`](npiet/) | Piet language interpreter | 1.3f | https://www.bertnase.de/npiet/ |
| [`npth`](npth/) | New GNU Portable Threads Library | 1.6 | https://gnupg.org/software/npth/index.html |
| [`ntbtls`](ntbtls/) | The Not Too Bad TLS Library | 0.3.1 | https://gnupg.org/software/ntbtls/index.html |
| [`npth`](npth/) | New GNU Portable Threads Library | 1.7 | https://gnupg.org/software/npth/index.html |
| [`ntbtls`](ntbtls/) | The Not Too Bad TLS Library | 0.3.2 | https://gnupg.org/software/ntbtls/index.html |
| [`nyancat`](nyancat/) | Nyancat | | https://github.com/klange/nyancat |
| [`ObjFW`](ObjFW/) | ObjFW | 8d19ba9 | https://objfw.nil.im/ |
| [`oksh`](oksh/) | oksh | 7.1 | https://github.com/ibara/oksh |
| [`OpenJDK`](OpenJDK/) | OpenJDK | 17.0.6 | https://openjdk.java.net/ |
| [`openjpeg`](openjpeg/) | OpenJPEG | 2.5.2 | https://www.openjpeg.org/ |
| [`openrct2`](openrct2/) | OpenRCT2 | 0.4.9 | https://openrct2.org/ |
| [`openssh`](openssh/) | OpenSSH | 9.0-94eb685 | https://github.com/openssh/openssh-portable |
| [`openssl`](openssl/) | OpenSSL | 3.1.2 | https://www.openssl.org/ |
Expand Down
4 changes: 2 additions & 2 deletions Ports/gnupg/package.sh
@@ -1,13 +1,13 @@
#!/usr/bin/env -S bash ../.port_include.sh
port='gnupg'
version='2.4.3'
version='2.4.5'
useconfigure='true'
use_fresh_config_sub='true'
config_sub_paths=(
'build-aux/config.sub'
)
files=(
"https://gnupg.org/ftp/gcrypt/gnupg/gnupg-${version}.tar.bz2#a271ae6d732f6f4d80c258ad9ee88dd9c94c8fdc33c3e45328c4d7c126bd219d"
"https://gnupg.org/ftp/gcrypt/gnupg/gnupg-${version}.tar.bz2#f68f7d75d06cb1635c336d34d844af97436c3f64ea14bcb7c869782f96f44277"
)
depends=(
'libassuan'
Expand Down
20 changes: 20 additions & 0 deletions Ports/gpgme/package.sh
@@ -0,0 +1,20 @@
#!/usr/bin/env -S bash ../.port_include.sh
port='gpgme'
version='1.23.2'
useconfigure='true'
use_fresh_config_sub='true'
config_sub_paths=(
'build-aux/config.sub'
)
files=(
"https://gnupg.org/ftp/gcrypt/gpgme/gpgme-${version}.tar.bz2#9499e8b1f33cccb6815527a1bc16049d35a6198a6c5fae0185f2bd561bce5224"
)
depends=(
'gnupg'
)
configopts=(
'--disable-gpg-test'
"--with-libgpg-error-prefix=${SERENITY_INSTALL_ROOT}/usr/local"
"--with-libassuan-prefix=${SERENITY_INSTALL_ROOT}/usr/local"
"--with-sysroot=${SERENITY_INSTALL_ROOT}"
)
@@ -0,0 +1,92 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tim Schumacher <timschumi@gmx.de>
Date: Sun, 29 May 2022 15:01:28 +0200
Subject: [PATCH] libtool: Enable shared library support for SerenityOS

For some odd reason, libtool handles the configuration for shared
libraries entirely statically and in its configure script. If no
shared library support is "present", building shared libraries is
disabled entirely.

Fix that by just adding the appropriate configuration options for
`serenity`. This allows us to finally create dynamic libraries
automatically using libtool, without having to manually link the
static library into a shared library.
---
configure | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

diff --git a/configure b/configure
index 0b45739345232edb5ac0a145cb704ff9ad0836d6..913b10eedb6196448a14cf017bff4ec3518e23aa 100755
--- a/configure
+++ b/configure
@@ -8773,6 +8773,11 @@ rdos*)
lt_cv_deplibs_check_method=pass_all
;;

+serenity*)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
+
+
solaris*)
lt_cv_deplibs_check_method=pass_all
;;
@@ -11990,6 +11995,10 @@ lt_prog_compiler_static=
lt_prog_compiler_static='-Bstatic'
;;

+ serenity*)
+ lt_prog_compiler_can_build_shared=yes
+ ;;
+
*)
lt_prog_compiler_can_build_shared=no
;;
@@ -13418,6 +13427,10 @@ printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }
hardcode_shlibpath_var=no
;;

+ serenity*)
+ ld_shlibs=yes
+ ;;
+
*)
ld_shlibs=no
;;
@@ -14437,6 +14450,17 @@ uts4*)
shlibpath_var=LD_LIBRARY_PATH
;;

+serenity*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}${versuffix} ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}${major}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ dynamic_linker='SerenityOS LibELF'
+ ;;
+
*)
dynamic_linker=no
;;
@@ -18318,6 +18342,17 @@ uts4*)
shlibpath_var=LD_LIBRARY_PATH
;;

+serenity*)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}${versuffix} ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}${major}'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ dynamic_linker='SerenityOS LibELF'
+ ;;
+
*)
dynamic_linker=no
;;
16 changes: 16 additions & 0 deletions Ports/gpgme/patches/ReadMe.md
@@ -0,0 +1,16 @@
# Patches for gpgme on SerenityOS

## `0001-libtool-Enable-shared-library-support-for-SerenityOS.patch`

libtool: Enable shared library support for SerenityOS

For some odd reason, libtool handles the configuration for shared
libraries entirely statically and in its configure script. If no
shared library support is "present", building shared libraries is
disabled entirely.

Fix that by just adding the appropriate configuration options for
`serenity`. This allows us to finally create dynamic libraries
automatically using libtool, without having to manually link the
static library into a shared library.

4 changes: 2 additions & 2 deletions Ports/libassuan/package.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env -S bash ../.port_include.sh
port='libassuan'
version='2.5.6'
version='2.5.7'
useconfigure='true'
use_fresh_config_sub='true'
config_sub_paths=(
Expand All @@ -10,7 +10,7 @@ depends=(
'libgpg-error'
)
files=(
"https://gnupg.org/ftp/gcrypt/libassuan/libassuan-${version}.tar.bz2#e9fd27218d5394904e4e39788f9b1742711c3e6b41689a31aa3380bd5aa4f426"
"https://gnupg.org/ftp/gcrypt/libassuan/libassuan-${version}.tar.bz2#0103081ffc27838a2e50479153ca105e873d3d65d8a9593282e9c94c7e6afb76"
)

pre_configure() {
Expand Down
4 changes: 2 additions & 2 deletions Ports/libgcrypt/package.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env -S bash ../.port_include.sh
port='libgcrypt'
version='1.10.2'
version='1.10.3'
useconfigure='true'
use_fresh_config_sub='true'
config_sub_paths=(
Expand All @@ -10,7 +10,7 @@ depends=(
'libgpg-error'
)
files=(
"https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-${version}.tar.bz2#3b9c02a004b68c256add99701de00b383accccf37177e0d6c58289664cce0c03"
"https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-${version}.tar.bz2#8b0870897ac5ac67ded568dcfadf45969cfa8a6beb0fd60af2a9eadc2a3272aa"
)

pre_configure() {
Expand Down
4 changes: 2 additions & 2 deletions Ports/libgpg-error/package.sh
@@ -1,8 +1,8 @@
#!/usr/bin/env -S bash ../.port_include.sh
port='libgpg-error'
version='1.47'
version='1.48'
files=(
"https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-${version}.tar.bz2#9e3c670966b96ecc746c28c2c419541e3bcb787d1a73930f5e5f5e1bcbbb9bdb"
"https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-${version}.tar.bz2#89ce1ae893e122924b858de84dc4f67aae29ffa610ebf668d5aa539045663d6f"
)
useconfigure='true'
use_fresh_config_sub='true'
Expand Down
4 changes: 2 additions & 2 deletions Ports/libksba/package.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env -S bash ../.port_include.sh
port='libksba'
version='1.6.4'
version='1.6.6'
useconfigure='true'
use_fresh_config_sub='true'
config_sub_paths=(
Expand All @@ -10,7 +10,7 @@ depends=(
'libgpg-error'
)
files=(
"https://gnupg.org/ftp/gcrypt/libksba/libksba-${version}.tar.bz2#bbb43f032b9164d86c781ffe42213a83bf4f2fee91455edfa4654521b8b03b6b"
"https://gnupg.org/ftp/gcrypt/libksba/libksba-${version}.tar.bz2#5dec033d211559338838c0c4957c73dfdc3ee86f73977d6279640c9cd08ce6a4"
)

pre_configure() {
Expand Down
4 changes: 2 additions & 2 deletions Ports/npth/package.sh
@@ -1,11 +1,11 @@
#!/usr/bin/env -S bash ../.port_include.sh
port=npth
version=1.6
version=1.7
useconfigure=true
use_fresh_config_sub=true
config_sub_paths=("build-aux/config.sub")
files=(
"https://gnupg.org/ftp/gcrypt/npth/npth-${version}.tar.bz2#1393abd9adcf0762d34798dc34fdcf4d0d22a8410721e76f1e3afcd1daa4e2d1"
"https://gnupg.org/ftp/gcrypt/npth/npth-${version}.tar.bz2#8589f56937b75ce33b28d312fccbf302b3b71ec3f3945fde6aaa74027914ad05"
)

configure() {
Expand Down
4 changes: 2 additions & 2 deletions Ports/ntbtls/package.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env -S bash ../.port_include.sh
port='ntbtls'
version='0.3.1'
version='0.3.2'
useconfigure='true'
use_fresh_config_sub='true'
config_sub_paths=(
Expand All @@ -13,7 +13,7 @@ depends=(
'zlib'
)
files=(
"https://gnupg.org/ftp/gcrypt/ntbtls/ntbtls-${version}.tar.bz2#8922181fef523b77b71625e562e4d69532278eabbd18bc74579dbe14135729ba"
"https://gnupg.org/ftp/gcrypt/ntbtls/ntbtls-${version}.tar.bz2#bdfcb99024acec9c6c4b998ad63bb3921df4cfee4a772ad6c0ca324dbbf2b07c"
)

pre_configure() {
Expand Down