aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Horodniceanu <a.horodniceanu@proton.me>2024-05-31 16:24:27 +0300
committerAndrei Horodniceanu <a.horodniceanu@proton.me>2024-06-01 19:54:01 +0300
commit82ae2d6f1f9326426947987fc78385b181a0004c (patch)
tree377153503abe0bf029c5db4b3eabfdef5ddaabd1
parentx11-terms/tilix: change password support optfeature deps (diff)
downloaddlang-82ae2d6f1f9326426947987fc78385b181a0004c.tar.gz
dlang-82ae2d6f1f9326426947987fc78385b181a0004c.tar.bz2
dlang-82ae2d6f1f9326426947987fc78385b181a0004c.zip
x11-terms/tilix: backport upstream fixes
- Support building with dmd and gdc - remove libunwind dependency gdc-13 support requires a more recent compiler lest it ICEs during the build. Bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113125 Signed-off-by: Andrei Horodniceanu <a.horodniceanu@proton.me>
-rw-r--r--x11-terms/tilix/files/fix-dmd-and-gdc-build-pr-2219.patch37
-rw-r--r--x11-terms/tilix/files/remove-libunwind-dep-pr-2220.patch66
-rw-r--r--x11-terms/tilix/tilix-1.9.6-r2.ebuild69
3 files changed, 172 insertions, 0 deletions
diff --git a/x11-terms/tilix/files/fix-dmd-and-gdc-build-pr-2219.patch b/x11-terms/tilix/files/fix-dmd-and-gdc-build-pr-2219.patch
new file mode 100644
index 0000000..9392643
--- /dev/null
+++ b/x11-terms/tilix/files/fix-dmd-and-gdc-build-pr-2219.patch
@@ -0,0 +1,37 @@
+From 6c7408cd54e225684e5305a0c9d5be0809afff48 Mon Sep 17 00:00:00 2001
+From: Andrei Horodniceanu <a.horodniceanu@proton.me>
+Date: Mon, 29 Apr 2024 08:40:20 +0300
+Subject: [PATCH] meson.build: add `-allinst` when compiling with dmd or gdc,
+ #2210
+
+This is needed to work around a bug in dmd regarding template
+emissions.
+
+Bug: https://github.com/gnunn1/tilix/issues/2210
+Bug: https://issues.dlang.org/show_bug.cgi?id=20668
+
+Signed-off-by: Andrei Horodniceanu <a.horodniceanu@proton.me>
+---
+ meson.build | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 73f3ebe8..8f22061e 100644
+--- a/meson.build
++++ b/meson.build
+@@ -9,8 +9,13 @@ compiler = meson.get_compiler('d')
+ if compiler.get_id() == 'llvm'
+ d_extra_args = ['-vcolumns']
+ d_link_args = []
+-else
+- d_extra_args = []
++elif compiler.get_id() == 'dmd'
++ # Workaround for https://issues.dlang.org/show_bug.cgi?id=20668
++ d_extra_args = ['-allinst']
++ d_link_args = []
++elif compiler.get_id() == 'gcc'
++ # Workaround for https://issues.dlang.org/show_bug.cgi?id=20668
++ d_extra_args = ['-fall-instantiations']
+ d_link_args = []
+ endif
+
diff --git a/x11-terms/tilix/files/remove-libunwind-dep-pr-2220.patch b/x11-terms/tilix/files/remove-libunwind-dep-pr-2220.patch
new file mode 100644
index 0000000..18afd18
--- /dev/null
+++ b/x11-terms/tilix/files/remove-libunwind-dep-pr-2220.patch
@@ -0,0 +1,66 @@
+From a7988f90dfa7950fd3ab654466e05a258ccf68e8 Mon Sep 17 00:00:00 2001
+From: Andrei Horodniceanu <a.horodniceanu@proton.me>
+Date: Fri, 31 May 2024 12:08:32 +0300
+Subject: [PATCH] meson.build: Remove libunwind dependency
+
+The dependency has been added in
+6923ee9194523526a9d54d7be8ddcf51847b3c72 in the context of
+https://github.com/gnunn1/tilix/issues/1502#issuecomment-425723007
+which was trying to diagnose issues with building using meson.
+
+The commit has been added so others can use it as a starting point but
+it has never been removed. The dub configuration doesn't add it as a
+dependency as well.
+
+Additionally update CI not to install it.
+
+Signed-off-by: Andrei Horodniceanu <a.horodniceanu@proton.me>
+---
+ .github/ci/install-deps-deb.sh | 1 -
+ .github/workflows/build-test.yml | 1 -
+ meson.build | 2 --
+ 3 files changed, 4 deletions(-)
+
+diff --git a/.github/ci/install-deps-deb.sh b/.github/ci/install-deps-deb.sh
+index 0a55aa674..45b164893 100755
+--- a/.github/ci/install-deps-deb.sh
++++ b/.github/ci/install-deps-deb.sh
+@@ -26,6 +26,5 @@ eatmydata apt-get install -yq \
+ libgtkd-3-dev \
+ librsvg2-dev \
+ libsecret-1-dev \
+- libunwind-dev \
+ libvted-3-dev \
+ po4a
+diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml
+index 3e05e1372..9a1e531c4 100644
+--- a/.github/workflows/build-test.yml
++++ b/.github/workflows/build-test.yml
+@@ -29,7 +29,6 @@ jobs:
+ libpango1.0-dev \
+ librsvg2-dev \
+ libsecret-1-dev \
+- libunwind-dev \
+ libgtksourceview-3.0-dev \
+ libpeas-dev \
+ libvte-2.91-dev
+diff --git a/meson.build b/meson.build
+index 73f3ebe83..1d14c1046 100644
+--- a/meson.build
++++ b/meson.build
+@@ -99,7 +99,6 @@ sources_dir = include_directories('source/')
+ gtkd_dep = dependency('gtkd-3', version: '>=3.8.5')
+ vted_dep = dependency('vted-3', version: '>=3.8.5')
+ xlib_dep = dependency('x11')
+-libunwind_dep = dependency('libunwind')
+ libsecret_dep = dependency('libsecret-1', required: false)
+
+ subdir('po')
+@@ -112,7 +111,6 @@ executable('tilix',
+ dependencies : [gtkd_dep,
+ vted_dep,
+ xlib_dep,
+- libunwind_dep,
+ libsecret_dep],
+ d_args: d_extra_args,
+ d_module_versions: ['StdLoggerDisableTrace'],
diff --git a/x11-terms/tilix/tilix-1.9.6-r2.ebuild b/x11-terms/tilix/tilix-1.9.6-r2.ebuild
new file mode 100644
index 0000000..5707050
--- /dev/null
+++ b/x11-terms/tilix/tilix-1.9.6-r2.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="A tiling terminal emulator for Linux using GTK+ 3"
+HOMEPAGE="https://gnunn1.github.io/tilix-web/"
+
+GITHUB_URI="https://codeload.github.com/gnunn1"
+SRC_URI="${GITHUB_URI}/${PN}/tar.gz/${PV} -> ${PN}-${PV}.tar.gz"
+LICENSE="MPL-2.0"
+
+PATCHES=(
+ "${FILESDIR}/fix-dmd-and-gdc-build-pr-2219.patch"
+ "${FILESDIR}/remove-libunwind-dep-pr-2220.patch"
+)
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DLANG_COMPAT=( dmd-2_10{6..8} gdc-13 ldc2-1_{35..38} )
+
+inherit dlang-single gnome2-utils meson optfeature
+
+# Older gcc ICEs due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113125
+MY_DLANG_DEPS="${DLANG_DEPS}
+ $(dlang_gen_cond_dep '
+ >=sys-devel/gcc-13.3:13
+ ' gdc-13)
+"
+
+REQUIRED_USE=${DLANG_REQUIRED_USE}
+RDEPEND="
+ ${MY_DLANG_DEPS}
+ >=sys-devel/gettext-0.19.8.1
+ $(dlang_gen_cond_dep '
+ >=dev-libs/gtkd-3.10.0-r2:3[vte,${DLANG_USEDEP}]
+ ')
+ gnome-base/gsettings-desktop-schemas
+"
+DEPEND=${RDEPEND}
+BDEPEND="
+ ${MY_DLANG_DEPS}
+ app-text/po4a
+ dev-libs/appstream
+ test? ( dev-util/desktop-file-utils )
+"
+
+src_configure() {
+ DFLAGS="${DCFLAGS}" meson_src_configure -Dd_link_args="${DCFLAGS} ${DLANG_LDFLAGS}"
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ gnome2_schemas_update
+
+ optfeature "Nautilus integration" "dev-python/nautilus-python"
+ optfeature "Password support" "app-crypt/libsecret"
+}
+
+pkg_postrm() {
+ gnome2_schemas_update
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}