diff options
Diffstat (limited to 'x11-libs/xapp')
-rw-r--r-- | x11-libs/xapp/Manifest | 6 | ||||
-rw-r--r-- | x11-libs/xapp/files/xapp-2.8.4-multiple-python-targets.patch | 80 | ||||
-rw-r--r-- | x11-libs/xapp/files/xapp-2.8.4-optional-introspection.patch | 102 | ||||
-rw-r--r-- | x11-libs/xapp/xapp-2.6.1.ebuild | 102 | ||||
-rw-r--r-- | x11-libs/xapp/xapp-2.8.5.ebuild | 125 |
5 files changed, 311 insertions, 104 deletions
diff --git a/x11-libs/xapp/Manifest b/x11-libs/xapp/Manifest index 4bf2a2b17c6b..ade9b36031e7 100644 --- a/x11-libs/xapp/Manifest +++ b/x11-libs/xapp/Manifest @@ -1,7 +1,9 @@ AUX 0001-don-t-install-pastebin-upload-wrapper.patch 699 BLAKE2B b8acb6a54f18dfd5a6e74a462ccd2ff869ca09912a084ea7369fae5adabe974250f7d5aedb11a21de81c49530049d3516dd610242cb5a85bc78ed44c04331769 SHA512 b2d43ae457b1f8ad1ede0a3fdfa9ee0a34697b10bf25e44c91bd0be36b2f3ecfa8729b77732b0e7d32cc267fd75d071496b0263a37277f14e2d0d4ae9c433149 +AUX xapp-2.8.4-multiple-python-targets.patch 2581 BLAKE2B 710b864a41718dbd26263523baa6223e34771ced588152a2a985757979637d2e49eab7257ba1678cea6ffd5aab924f9ddb6e49c6584e97ee11aac48f98622cd3 SHA512 6a82ddb2cf4bff3929366c07613f866f354577cf1d487b20338853bf4bc22efba765405c057a678a02ffc0af1a91f1282693357650031707dbd378fa6de9f83e +AUX xapp-2.8.4-optional-introspection.patch 2894 BLAKE2B 4b6e19bfea20aff1b6a335480382222018a81d2a792e43a046348601c476f5d5f6aa8bb3fdfc63091c3b8187326c0edd4168f1c45fb552a9b279e900e224c9bf SHA512 dcabc7976bb86fe4707b8a8cad1e74d6558d02c62e2121235747eeadc4276d45e6bae3a94c3cfc44ca7f95ab92468be81cbf254750a0e9ec4f144f722e9cafa0 AUX xapp-optional-de-options.patch 3309 BLAKE2B 4760a70b3e5a5806925f0e33ead8282990069302f4b6c4ff1899804010c4dfea6c4d97983c5acf57d523bfee7a6b12ae4e2e8d7736ab2258f8159897c2df79b7 SHA512 d4b5c613ac2f630b5f105572605429b064cd824f6ebc2f354207cdf253a33811af2f2ac7e3c10e21638de9856c035816396a05c96a298da0777ac146b540ff73 -DIST xapp-2.6.1.tar.gz 270606 BLAKE2B 0f2572b2e9ec4056bea0fc532f5327bd6de4741719a49b68180d45ff00fcea9b760acb362fc39d3f2dc9d94001b7021267a8a84c067aa90c5a201a46be76e97c SHA512 f96006fffac67b312caba644e8da75209c443688b08254b9bb5b17eb9148e66b35a8b1fe336e8880c7b950f8fc696884d8f5d610092c2cb44357ad3bf3ef43c7 DIST xapp-2.8.2.tar.gz 272539 BLAKE2B 1e2fb92b976196c2e9f36e322656ee40252e4c358a13361a054ead88e6fa3df35a53f1b0ee594df4189a68c1739c4a040558fac533ace095536fcc1dca76954b SHA512 97d19b95626a37fc08a0a159be741de5d9bcc034484e977bd739b91bd37122fcf2f3479285d544282a92c8fa180b116db1ad5e96fe19284c62287d3c5b135163 -EBUILD xapp-2.6.1.ebuild 2279 BLAKE2B 7d758493c6c7cf1a2e62d2a878e3bad9e69c39936ab9712dc25506616226f2f957764ea6cac0e7de5712d544981cfe06c1b7a91be6d5421525622714ac1d9fb7 SHA512 3727448dcad306c21f8abc40f0c82bc0041457b3670b52c258e51080e5b28c8db6c7b53ec5e03cf074caadc062f6f1c6fa7a49463d031e7fc37d83b49cbd8e78 +DIST xapp-2.8.5.tar.gz 274241 BLAKE2B 86b38dcab542e934f65e2fb11a5c1e7a5e26e8c725c5c91fed7bec6e0676f40ab6fd85b0421378e4860271ef1c9954d8c5a42b465232670d3d695dcda0734e0b SHA512 133a01309f0bc33a0aa73ee86eb8900573b4ab5b84e9e503b04b246448bce0b05880403288a739c5e252a2276311afba86c9c687887dd6e8c528734e328c6ee7 EBUILD xapp-2.8.2-r1.ebuild 2369 BLAKE2B ef7266d7c90cee31fefee2ead6c275e9641b619fb9351264062686598ce08044884ed346b1c67b00bd5a3d6825a1b26b55011e29813d4b158b09018e509e52a9 SHA512 89497ba2d7cba4c794808aba824c1f142d75e182f313147f523c00c733dd4663d4fee771b940eced242ca7decb0baf689eb256fbbc4367f770ae32639d98f5da +EBUILD xapp-2.8.5.ebuild 2416 BLAKE2B 7e66d5f0d71eb432903fa4f242cb94766a36297278742a5ad6110fdc09d3b63cf798475a59d27e08eeb568a5b209b802d60299e11119f1ed86326f2b16b247ab SHA512 ce8326110b28516893e7cc86c1698e96e635bb47966eb790bdc15b36e23604d783b9e83532402ee6a0ab33a6b6a44073178f9c8cffb2aac0d7ef2edff48deae6 MISC metadata.xml 661 BLAKE2B aaf60791b7e8739d7418edd95ff2bfb7429de931c54ccd6c770e752f7f0b45b84a7720add07ecb9ae046064b12d14640b7fe1ab85f6f2a73dc0c0d80eaf13d43 SHA512 27f7fa4138c5d870f1299999711032d7a4c2f628efd8b73ef75d801645950ff9894f970b917501877ef845c0c6fa38ea24c6fa475f25a260f24a2925fcdc47e7 diff --git a/x11-libs/xapp/files/xapp-2.8.4-multiple-python-targets.patch b/x11-libs/xapp/files/xapp-2.8.4-multiple-python-targets.patch new file mode 100644 index 000000000000..861b58c06c19 --- /dev/null +++ b/x11-libs/xapp/files/xapp-2.8.4-multiple-python-targets.patch @@ -0,0 +1,80 @@ +From db45d22173d427eee3d673dc63b60b12c206b31d Mon Sep 17 00:00:00 2001 +From: Sparky Bluefang <sparky@bluefang-logic.com> +Date: Sun, 23 Jun 2024 17:10:47 -0400 +Subject: [PATCH] Allow installing gi override to multiple python installations + +--- + meson_options.txt | 9 +++++++-- + pygobject/meson.build | 33 +++++++++++++++++++++------------ + 2 files changed, 28 insertions(+), 14 deletions(-) + +diff --git a/meson_options.txt b/meson_options.txt +index 3ea5310..ccee240 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -9,10 +9,15 @@ option('deprecated_warnings', + description: 'Show build warnings for deprecations' + ) + option('py-overrides-dir', +- type : 'string', +- value : '', ++ type : 'array', ++ value : [], + description: 'Path to pygobject overrides directory' + ) ++option('python_target', ++ type: 'array', ++ value: ['python3'], ++ description: 'Python installation to target to lookup if py-overrides-dir not supplied' ++) + option('status-notifier', + type: 'boolean', + value: true, +diff --git a/pygobject/meson.build b/pygobject/meson.build +index da219f7..d5ffc09 100644 +--- a/pygobject/meson.build ++++ b/pygobject/meson.build +@@ -3,22 +3,31 @@ pygobject = dependency('pygobject-3.0', + required: true, + ) + +-override_dir = get_option('py-overrides-dir') ++override_dirs = get_option('py-overrides-dir') + +-if override_dir == '' +- exec = find_program(['python3', 'python']) ++if override_dirs.length() == 0 or override_dirs[0] == '' ++ override_dirs = [] + +- r = run_command(exec, '-c', 'import gi;print(gi._overridesdir)', check: false) ++ pymod = import('python') ++ python_targets = get_option('python_target') + +- if r.returncode() != 0 +- error('Error getting the GObject Introspection override directory: ' + r.stderr()) +- endif ++ foreach python_target : python_targets ++ python_install = pymod.find_installation(python_target) + +- override_dir = r.stdout().strip() ++ r = run_command(python_install, '-c', 'import gi;print(gi._overridesdir)', check: false) ++ ++ if r.returncode() != 0 ++ error('Error getting the GObject Introspection override directory: ' + r.stderr()) ++ endif ++ ++ override_dirs += r.stdout().strip() ++ endforeach + endif + +-message('PyGObject overrides dir: ' + override_dir) ++message('PyGObject overrides dirs: @0@'.format(override_dirs)) + +-install_data(['XApp.py'], +- install_dir: override_dir, +-) ++foreach override_dir : override_dirs ++ install_data(['XApp.py'], ++ install_dir: override_dir, ++ ) ++endforeach diff --git a/x11-libs/xapp/files/xapp-2.8.4-optional-introspection.patch b/x11-libs/xapp/files/xapp-2.8.4-optional-introspection.patch new file mode 100644 index 000000000000..4e9c0cc12a2d --- /dev/null +++ b/x11-libs/xapp/files/xapp-2.8.4-optional-introspection.patch @@ -0,0 +1,102 @@ +From 00f52c9f025b78aefd47637e2dd2c0cc8fd44d64 Mon Sep 17 00:00:00 2001 +From: Sparky Bluefang <sparky@bluefang-logic.com> +Date: Thu, 13 Jun 2024 22:49:12 -0400 +Subject: [PATCH] Add option to disable building introspection and vala + bindings. + +--- + libxapp/meson.build | 38 ++++++++++++++++++++++---------------- + meson.build | 5 ++++- + meson_options.txt | 10 ++++++++++ + 3 files changed, 36 insertions(+), 17 deletions(-) + +diff --git a/libxapp/meson.build b/libxapp/meson.build +index d4034cb..c419b8f 100644 +--- a/libxapp/meson.build ++++ b/libxapp/meson.build +@@ -119,16 +119,18 @@ libxapp_dep = declare_dependency( + sources: [ xapp_headers, dbus_headers ] + ) + +-gir = gnome.generate_gir(libxapp, +- namespace: 'XApp', +- nsversion: '1.0', +- sources: xapp_headers + xapp_sources + dbus_headers + xapp_enums, +- identifier_prefix: 'XApp', +- symbol_prefix: 'xapp_', +- export_packages: 'xapp', +- includes: ['GObject-2.0', 'Gtk-3.0'], +- install: true +-) ++if get_option('introspection') ++ gir = gnome.generate_gir(libxapp, ++ namespace: 'XApp', ++ nsversion: '1.0', ++ sources: xapp_headers + xapp_sources + dbus_headers + xapp_enums, ++ identifier_prefix: 'XApp', ++ symbol_prefix: 'xapp_', ++ export_packages: 'xapp', ++ includes: ['GObject-2.0', 'Gtk-3.0'], ++ install: true ++ ) ++endif + + pkg.generate( + libraries: libxapp, +@@ -144,12 +146,16 @@ install_data(['xapp-glade-catalog.xml'], + install_dir : join_paths(get_option('datadir'), 'glade/catalogs') + ) + +-gnome.generate_vapi('xapp', +- packages: ['glib-2.0', 'gio-unix-2.0', 'gtk+-3.0'], +- sources: gir[0], +- metadata_dirs: meson.current_source_dir(), +- install: true +-) ++if get_option('vapi') ++ assert(is_variable('gir'), 'vapi requires introspection to be enabled') ++ ++ gnome.generate_vapi('xapp', ++ packages: ['glib-2.0', 'gio-unix-2.0', 'gtk+-3.0'], ++ sources: gir[0], ++ metadata_dirs: meson.current_source_dir(), ++ install: true ++ ) ++endif + + if not app_lib_only + gtk3_module = shared_module( +diff --git a/meson.build b/meson.build +index 1783747..8b72f4b 100644 +--- a/meson.build ++++ b/meson.build +@@ -47,7 +47,10 @@ top_inc = include_directories('.') + subdir('libxapp') + subdir('po') + subdir('schemas') +-subdir('pygobject') ++ ++if get_option('introspection') ++ subdir('pygobject') ++endif + + if not app_lib_only + subdir('icons') +diff --git a/meson_options.txt b/meson_options.txt +index 3ea5310..5bfb661 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -38,3 +38,13 @@ option('xfce', + value: true, + description: 'Install xfce specific items.' + ) ++option('introspection', ++ type: 'boolean', ++ value: true, ++ description: 'Enable GObject Introspection.' ++) ++option('vapi', ++ type: 'boolean', ++ value: true, ++ description: 'Enable Vala bindings.' ++) diff --git a/x11-libs/xapp/xapp-2.6.1.ebuild b/x11-libs/xapp/xapp-2.6.1.ebuild deleted file mode 100644 index 352c01c40923..000000000000 --- a/x11-libs/xapp/xapp-2.6.1.ebuild +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{10..11} ) -VALA_USE_DEPEND="vapigen" - -inherit gnome2-utils vala meson python-r1 - -DESCRIPTION="Cross-desktop libraries and common resources" -HOMEPAGE="https://github.com/linuxmint/xapp/" -LICENSE="LGPL-3" - -SRC_URI="https://github.com/linuxmint/xapp/archive/${PV}.tar.gz -> ${P}.tar.gz" -KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv x86" - -SLOT="0" -IUSE="gtk-doc introspection mate" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RDEPEND=" - >=dev-libs/glib-2.44.0:2 - dev-libs/libdbusmenu[gtk3] - gnome-base/libgnomekbd:= - x11-libs/cairo - >=x11-libs/gdk-pixbuf-2.22.0:2[introspection?] - >=x11-libs/gtk+-3.16.0:3[introspection?] - x11-libs/libxkbfile - x11-libs/libX11 - x11-libs/pango - - mate? ( - ${PYTHON_DEPS} - dev-python/pygobject:3[${PYTHON_USEDEP}] - ) -" -DEPEND=" - ${RDEPEND} -" -BDEPEND=" - ${PYTHON_DEPS} - $(vala_depend) - dev-python/pygobject:3[${PYTHON_USEDEP}] - dev-util/gdbus-codegen - dev-util/glib-utils - sys-apps/dbus - sys-devel/gettext - - gtk-doc? ( dev-util/gtk-doc ) -" - -src_prepare() { - vala_src_prepare - default - - # don't install distro specific tools - sed -i "s/subdir('scripts')/#&/" meson.build || die - - # make mate integrations optional - if ! use mate; then - sed -i "s/subdir('mate')/#&/" status-applets/meson.build || die - fi - - # Fix meson helpers - python_setup - python_fix_shebang . -} - -src_configure() { - local emesonargs=( - $(meson_use gtk-doc docs) - -Dpy-overrides-dir="/pygobject" - ) - meson_src_configure -} - -src_install() { - meson_src_install - - # copy pygobject files to each active python target - # work-around for "py-overrides-dir" only supporting a single target - install_pygobject_override() { - PYTHON_GI_OVERRIDESDIR=$("${EPYTHON}" -c 'import gi;print(gi._overridesdir)' || die) - einfo "gobject overrides directory: ${PYTHON_GI_OVERRIDESDIR}" - mkdir -p "${D}/${PYTHON_GI_OVERRIDESDIR}/" || die - cp -r "${D}"/pygobject/* "${D}/${PYTHON_GI_OVERRIDESDIR}/" || die - python_optimize "${D}/${PYTHON_GI_OVERRIDESDIR}/" - } - python_foreach_impl install_pygobject_override - rm -r "${D}/pygobject" || die -} - -pkg_postinst() { - xdg_icon_cache_update - gnome2_schemas_update -} - -pkg_postrm() { - xdg_icon_cache_update - gnome2_schemas_update -} diff --git a/x11-libs/xapp/xapp-2.8.5.ebuild b/x11-libs/xapp/xapp-2.8.5.ebuild new file mode 100644 index 000000000000..b17d1de26e54 --- /dev/null +++ b/x11-libs/xapp/xapp-2.8.5.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +VALA_USE_DEPEND="vapigen" + +inherit gnome2-utils vala meson python-r1 + +DESCRIPTION="Cross-desktop libraries and common resources" +HOMEPAGE="https://github.com/linuxmint/xapp/" + +SRC_URI="https://github.com/linuxmint/xapp/archive/${PV}.tar.gz -> ${P}.tar.gz" +LICENSE="LGPL-3 xfce? ( GPL-3 )" +SLOT="0" + +KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" +IUSE="gtk-doc introspection mate vala xfce" +REQUIRED_USE="${PYTHON_REQUIRED_USE} vala? ( introspection )" + +DEPEND=" + >=dev-libs/glib-2.44.0:2 + dev-libs/libdbusmenu[gtk3] + gnome-base/libgnomekbd:= + x11-libs/cairo + >=x11-libs/gdk-pixbuf-2.22.0:2[introspection?] + >=x11-libs/gtk+-3.22.0:3[introspection?] + x11-libs/libxkbfile + x11-libs/libX11 + x11-libs/pango +" +RDEPEND=" + ${PYTHON_DEPS} + ${DEPEND} + + introspection? ( + dev-python/pygobject:3[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + ${PYTHON_DEPS} + dev-util/gdbus-codegen + dev-util/glib-utils + sys-apps/dbus + sys-devel/gettext + + gtk-doc? ( + dev-util/gtk-doc + ) + + introspection? ( + dev-python/pygobject:3[${PYTHON_USEDEP}] + ) + + vala? ( + $(vala_depend) + ) +" + +PATCHES=( + # Make introspection/vala optional + # https://github.com/linuxmint/xapp/pull/184 + "${FILESDIR}"/${PN}-2.8.4-optional-introspection.patch + + # Allow multiple gobject installation targets + # https://github.com/linuxmint/xapp/pull/183 + "${FILESDIR}"/${PN}-2.8.4-multiple-python-targets.patch + + # Don't install pastebin upload wrapper + "${FILESDIR}"/0001-don-t-install-pastebin-upload-wrapper.patch +) + +src_prepare() { + use vala && vala_setup + + default + + # Fix meson helpers + python_setup + python_fix_shebang . +} + +src_configure() { + local emesonargs=( + $(meson_use gtk-doc docs) + $(meson_use introspection) + $(meson_use mate) + $(meson_use vala vapi) + $(meson_use xfce) + ) + + if use introspection; then + local xapp_python_targets=() + + get_xapp_python_targets() { + xapp_python_targets+=("${EPYTHON}") + } + python_foreach_impl get_xapp_python_targets + + emesonargs+=( + -Dpython_target="$(echo "${xapp_python_targets[@]}" | tr ' ' ,)" + ) + fi + + meson_src_configure +} + +src_install() { + meson_src_install + + if use introspection; then + python_foreach_impl python_optimize + fi +} + +pkg_postinst() { + xdg_icon_cache_update + gnome2_schemas_update +} + +pkg_postrm() { + xdg_icon_cache_update + gnome2_schemas_update +} |