ports: Add gtk3 port

This commit is contained in:
Bananymous 2026-03-23 17:54:23 +02:00
parent 9c3e2dab40
commit a98d851fde
10 changed files with 253 additions and 0 deletions

29
ports/dbus/build.sh Executable file
View File

@ -0,0 +1,29 @@
#!/bin/bash ../install.sh
NAME='dbus'
VERSION='1.16.2'
DOWNLOAD_URL="https://dbus.freedesktop.org/releases/dbus/dbus-$VERSION.tar.xz#0ba2a1a4b16afe7bceb2c07e9ce99a8c2c3508e5dec290dbb643384bd6beb7e2"
DEPENDENCIES=('glib' 'expat')
CONFIGURE_OPTIONS=(
'-Dprefix=/usr'
'-Depoll=disabled' # linux only
'-Dintrusive_tests=false'
'-Dinstalled_tests=false'
'-Dmodular_tests=disabled'
)
configure() {
meson setup \
--reconfigure \
--cross-file "$MESON_CROSS_FILE" \
"${CONFIGURE_OPTIONS[@]}" \
build || exit 1
}
build() {
meson compile -C build || exit 1
}
install() {
meson install --destdir="$BANAN_SYSROOT" -C build || exit 1
}

View File

@ -0,0 +1,13 @@
diff -ruN dbus-1.16.2/tools/dbus-print-message.c dbus-1.16.2-banan_os/tools/dbus-print-message.c
--- dbus-1.16.2/tools/dbus-print-message.c 2025-02-27 18:29:06.000000000 +0200
+++ dbus-1.16.2-banan_os/tools/dbus-print-message.c 2026-02-21 23:23:51.987302740 +0200
@@ -31,7 +31,9 @@
#include <sys/un.h>
#include <unistd.h>
#include <netinet/in.h>
+#ifndef __banan_os__
#include <netinet/ip.h>
+#endif
#include <arpa/inet.h>
#endif

27
ports/gdk-pixbuf/build.sh Executable file
View File

@ -0,0 +1,27 @@
#!/bin/bash ../install.sh
NAME='gdk-pixbuf'
VERSION='2.44.4'
DOWNLOAD_URL="https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/archive/$VERSION/gdk-pixbuf-$VERSION.tar.gz#6de2f77d992155b4121d20036e7e986dfe595a0e654381cdd0d7257f493c208a"
DEPENDENCIES=('glib' 'libpng' 'libjpeg' 'libtiff' 'shared-mime-info')
CONFIGURE_OPTIONS=(
'-Dprefix=/usr'
'-Dtests=false'
'-Dman=false'
)
configure() {
meson setup \
--reconfigure \
--cross-file "$MESON_CROSS_FILE" \
"${CONFIGURE_OPTIONS[@]}" \
build || exit 1
}
build() {
meson compile -C build || exit 1
}
install() {
meson install --destdir="$BANAN_SYSROOT" -C build || exit 1
}

30
ports/gtk3/build.sh Executable file
View File

@ -0,0 +1,30 @@
#!/bin/bash ../install.sh
NAME='gtk'
VERSION='3.24.49'
DOWNLOAD_URL="https://gitlab.gnome.org/GNOME/gtk/-/archive/$VERSION/gtk-$VERSION.tar.gz#a2958d82986c81794e953a3762335fa7c78948706d23cced421f7245ca544cbc"
DEPENDENCIES=('glib' 'gdk-pixbuf' 'pango' 'libatk' 'libepoxy' 'libXrandr')
CONFIGURE_OPTIONS=(
'-Dprefix=/usr'
'-Dtests=false'
'-Dexamples=false'
'-Dintrospection=false'
'-Dx11_backend=true'
'-Dwayland_backend=false'
)
configure() {
meson setup \
--reconfigure \
--cross-file "$MESON_CROSS_FILE" \
"${CONFIGURE_OPTIONS[@]}" \
build || exit 1
}
build() {
meson compile -C build || exit 1
}
install() {
meson install --destdir="$BANAN_SYSROOT" -C build || exit 1
}

26
ports/libatk/build.sh Executable file
View File

@ -0,0 +1,26 @@
#!/bin/bash ../install.sh
NAME='libatk'
VERSION='2.56.6'
DOWNLOAD_URL="https://gitlab.gnome.org/GNOME/at-spi2-core/-/archive/$VERSION/at-spi2-core-$VERSION.tar.gz#49b1a640d50a95389a31672a0a077f0c20e8e222322cbd0228d3fa597686819d"
TAR_CONTENT="at-spi2-core-$VERSION"
DEPENDENCIES=('glib' 'dbus' 'libxml2' 'libX11' 'libXtst')
CONFIGURE_OPTIONS=(
'-Dprefix=/usr'
)
configure() {
meson setup \
--reconfigure \
--cross-file "$MESON_CROSS_FILE" \
"${CONFIGURE_OPTIONS[@]}" \
build || exit 1
}
build() {
meson compile -C build || exit 1
}
install() {
meson install --destdir="$BANAN_SYSROOT" -C build || exit 1
}

27
ports/libepoxy/build.sh Executable file
View File

@ -0,0 +1,27 @@
#!/bin/bash ../install.sh
NAME='libepoxy'
VERSION='1.5.10'
DOWNLOAD_URL="https://download.gnome.org/sources/libepoxy/1.5/libepoxy-$VERSION.tar.xz#072cda4b59dd098bba8c2363a6247299db1fa89411dc221c8b81b8ee8192e623"
DEPENDENCIES=('mesa' 'libX11')
CONFIGURE_OPTIONS=(
'-Dprefix=/usr'
'-Dtests=false'
'-Degl=no'
)
configure() {
meson setup \
--reconfigure \
--cross-file "$MESON_CROSS_FILE" \
"${CONFIGURE_OPTIONS[@]}" \
build || exit 1
}
build() {
meson compile -C build || exit 1
}
install() {
meson install --destdir="$BANAN_SYSROOT" -C build || exit 1
}

View File

@ -0,0 +1,23 @@
--- libepoxy-1.5.10/src/dispatch_common.c 2022-02-17 14:56:12.000000000 +0200
+++ libepoxy-1.5.10-banan_os/src/dispatch_common.c 2025-11-11 18:35:23.194563757 +0200
@@ -164,7 +164,9 @@
#include <windows.h>
#else
#include <dlfcn.h>
+#ifndef __banan_os__
#include <err.h>
+#endif
#include <pthread.h>
#endif
#include <string.h>
@@ -306,8 +308,10 @@
pthread_mutex_lock(&api.mutex);
if (!*handle) {
int flags = RTLD_LAZY | RTLD_LOCAL;
+#ifdef RTLD_NOLOAD
if (!load)
flags |= RTLD_NOLOAD;
+#endif
*handle = dlopen(lib_name, flags);
if (!*handle) {

26
ports/libxml2/build.sh Executable file
View File

@ -0,0 +1,26 @@
#!/bin/bash ../install.sh
NAME='libxml2'
VERSION='2.15.1'
DOWNLOAD_URL="https://gitlab.gnome.org/GNOME/libxml2/-/archive/v$VERSION/libxml2-v$VERSION.tar.gz#0a5ebf8fa131585748d661ae692503483aff39d9b29b6c4b342cd80d422f246c"
TAR_CONTENT="libxml2-v$VERSION"
DEPENDENCIES=('zlib' 'libiconv')
CONFIGURE_OPTIONS=(
'-Dprefix=/usr'
)
configure() {
meson setup \
--reconfigure \
--cross-file "$MESON_CROSS_FILE" \
"${CONFIGURE_OPTIONS[@]}" \
build || exit 1
}
build() {
meson compile -C build || exit 1
}
install() {
meson install --destdir="$BANAN_SYSROOT" -C build || exit 1
}

View File

@ -0,0 +1,24 @@
diff -ruN libxml2-2.15.1/meson.build libxml2-2.15.1-banan_os/meson.build
--- libxml2-2.15.1/meson.build 2025-10-16 16:23:05.000000000 +0300
+++ libxml2-2.15.1-banan_os/meson.build 2025-11-05 21:14:49.833303459 +0200
@@ -502,19 +502,7 @@
## tests
-checks = {
- 'runsuite': [],
- 'runtest': threads_dep,
- 'runxmlconf': [],
-# Disabled for now, see #694
-# 'testModule': [],
- 'testapi': [],
- 'testchar': [],
- 'testdict': [],
- 'testlimits': [],
- 'testparser': [],
- 'testrecurse': [],
-}
+checks = {}
foreach check, deps : checks
exe = executable(

28
ports/shared-mime-info/build.sh Executable file
View File

@ -0,0 +1,28 @@
#!/bin/bash ../install.sh
NAME='shared-mime-info'
VERSION='2.4'
DOWNLOAD_URL="https://gitlab.freedesktop.org/xdg/shared-mime-info/-/archive/$VERSION/shared-mime-info-$VERSION.tar.gz#531291d0387eb94e16e775d7e73788d06d2b2fdd8cd2ac6b6b15287593b6a2de"
DEPENDENCIES=('glib' 'libxml2')
CONFIGURE_OPTIONS=(
'-Dprefix=/usr'
'-Dbuild-tests=false'
'-Dbuild-translations=false'
'-Dupdate-mimedb=true'
)
configure() {
meson setup \
--reconfigure \
--cross-file "$MESON_CROSS_FILE" \
"${CONFIGURE_OPTIONS[@]}" \
build || exit 1
}
build() {
meson compile -C build || exit 1
}
install() {
meson install --destdir="$BANAN_SYSROOT" -C build || exit 1
}