From ffab2f18973a6abb0da43be11ae9c0cd6f0c253a Mon Sep 17 00:00:00 2001
From: Anke Kreuzer <zitz1@jwlogin02.juwels>
Date: Mon, 9 Jan 2023 13:51:35 +0100
Subject: [PATCH] Added GTK3 in 2023

---
 .../g/GTK3/GTK3-3.24.33-GCCcore-11.3.0.eb     | 76 +++++++++++++++++++
 ...-theme-3.34.3_disable-svg-conversion.patch | 16 ++++
 2 files changed, 92 insertions(+)
 create mode 100644 Golden_Repo/g/GTK3/GTK3-3.24.33-GCCcore-11.3.0.eb
 create mode 100644 Golden_Repo/g/GTK3/adwaita-icon-theme-3.34.3_disable-svg-conversion.patch

diff --git a/Golden_Repo/g/GTK3/GTK3-3.24.33-GCCcore-11.3.0.eb b/Golden_Repo/g/GTK3/GTK3-3.24.33-GCCcore-11.3.0.eb
new file mode 100644
index 000000000..ec127c882
--- /dev/null
+++ b/Golden_Repo/g/GTK3/GTK3-3.24.33-GCCcore-11.3.0.eb
@@ -0,0 +1,76 @@
+easyblock = 'Bundle'
+
+name = 'GTK3'
+version = '3.24.33'
+
+homepage = 'https://developer.gnome.org/gtk3/stable/'
+description = """GTK+ is the primary library used to construct user interfaces in GNOME. It
+ provides all the user interface controls, or widgets, used in a common
+ graphical application. Its object-oriented API allows you to construct
+ user interfaces without dealing with the low-level details of drawing and
+ device interaction.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('Autotools', '20220317'),
+    ('GObject-Introspection', '1.72.0'),
+    ('gettext', '0.21'),
+    ('pkgconf', '1.8.0'),
+    ('cairo', '1.17.4'),
+    ('Perl', '5.34.1'),
+]
+dependencies = [
+    ('ATK', '2.38.0'),
+    ('at-spi2-atk', '2.38.0'),
+    ('Gdk-Pixbuf', '2.42.8'),
+    ('Pango', '1.50.7'),
+    ('libepoxy', '1.5.10'),
+    ('X11', '20220504'),
+    ('FriBidi', '1.0.12'),
+]
+
+default_easyblock = 'ConfigureMake'
+
+default_component_specs = {
+    'sources': [SOURCELOWER_TAR_XZ],
+    'start_dir': '%(namelower)s-%(version)s',
+}
+
+components = [
+    ('GTK+', version, {
+        'source_urls': [FTPGNOME_SOURCE],
+        'configopts': "--disable-silent-rules --disable-glibtest --enable-introspection=yes --disable-visibility ",
+        'checksums': ['588b06522e25d1579e989b6f9d8a1bdbf2fe13cde01a04e904ff346a225e7801'],
+    }),
+    ('hicolor-icon-theme', '0.17', {
+        'source_urls': ['https://icon-theme.freedesktop.org/releases/'],
+        'checksums': ['317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d588a9d8'],
+    }),
+    ('adwaita-icon-theme', '42.0', {
+        'preconfigopts': 'autoreconf -f -i && ',
+        'source_urls': ['https://ftp.gnome.org/pub/GNOME/sources/%(namelower)s/%(version_major)s'],
+        'patches': ['adwaita-icon-theme-3.34.3_disable-svg-conversion.patch'],
+        'checksums': [
+            '5e85b5adc8dee666900fcaf271ba717f7dcb9d0a03d96dae08f9cbd27e18b1e0',
+            # adwaita-icon-theme-3.34.3_disable-svg-conversion.patch
+            'f4b86855d50759ecfc1e8f6550ec0f3a7a4ea2c80b9f5fc1685fe8967d1c5342',
+        ],
+    }),
+]
+
+postinstallcmds = ['gtk-update-icon-cache']
+
+sanity_check_paths = {
+    'files': ['bin/%s' % x for x in ['gtk3-demo', 'gtk3-demo-application', 'gtk3-icon-browser', 'gtk3-widget-factory',
+                                     'gtk-builder-tool', 'gtk-launch', 'gtk-query-immodules-3.0', 'gtk-query-settings',
+                                     'gtk-update-icon-cache']] +
+             ['lib/%s-%%(version_major)s.%s' % (x, SHLIB_EXT) for x in ['libgailutil', 'libgdk', 'libgtk']],
+    'dirs': ['include/%s-%%(version_major)s.0' % x for x in ['gail', 'gtk']] +
+            ['share/icons/hicolor', 'share/icons/Adwaita'],
+}
+
+
+moduleclass = 'vis'
diff --git a/Golden_Repo/g/GTK3/adwaita-icon-theme-3.34.3_disable-svg-conversion.patch b/Golden_Repo/g/GTK3/adwaita-icon-theme-3.34.3_disable-svg-conversion.patch
new file mode 100644
index 000000000..bf0b97f94
--- /dev/null
+++ b/Golden_Repo/g/GTK3/adwaita-icon-theme-3.34.3_disable-svg-conversion.patch
@@ -0,0 +1,16 @@
+As we don't have SVG support we disable the search for the converter.
+
+Author: Alexander Grund (TU Dresden)
+
+diff -aur a/configure.ac b/configure.ac
+--- a/configure.ac	2021-07-16 15:16:15.774630738 +0200
++++ b/configure.ac	2021-07-16 15:15:10.138814059 +0200
+@@ -49,7 +49,7 @@
+ AM_CONDITIONAL(ALLOW_RENDERING, test "x$allow_rendering" = "xyes")
+ 
+ symbolic_encode_sizes="16x16 24x24 32x32 48x48 64x64 96x96"
+-AC_PATH_PROG([GTK_ENCODE_SYMBOLIC_SVG], [gtk-encode-symbolic-svg], [false])
++GTK_ENCODE_SYMBOLIC_SVG="false"
+ if test "x$GTK_ENCODE_SYMBOLIC_SVG" = "xfalse"; then
+    symbolic_encode_sizes=""
+ fi
-- 
GitLab