summaryrefslogtreecommitdiff
path: root/dev-libs/libpeas
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libpeas')
-rw-r--r--dev-libs/libpeas/Manifest3
-rw-r--r--dev-libs/libpeas/files/1.26.0-lua.patch89
-rw-r--r--dev-libs/libpeas/libpeas-1.26.0.ebuild77
3 files changed, 169 insertions, 0 deletions
diff --git a/dev-libs/libpeas/Manifest b/dev-libs/libpeas/Manifest
index e6b4bb1674ed..34aa6aa26461 100644
--- a/dev-libs/libpeas/Manifest
+++ b/dev-libs/libpeas/Manifest
@@ -1,5 +1,8 @@
AUX 1.22.0-py38-support.patch 994 BLAKE2B 1e8dafe6cf9f6a983bcb9f561cfd4e0d9e3a815806c35ac7b8c5b1bf3d881687438364ba59a749af5db7b43d58cc902caa8ccb2614f6c0dfbd71fa119c8ae1ce SHA512 5d6ee01c6f261a79f0cac611add0ed8e3e9840a9f8ac1d1b75f257a644a168ffad9c838833062e8ba9cbfd6639e50a3ebc87fa884dee2cc7981a65de5cc44a0a
+AUX 1.26.0-lua.patch 3695 BLAKE2B 16f370ea0707743db9a28cd511f6b9521d285bb37eb3a49d916fcce84965c84490253c1a30e729b21eb528b3a6397cab9bb372b9afeb22bed05e278048734bc4 SHA512 d8939b9a21b838db8e34ddfba7f54f17e88c4387cc3baa15f4df6386180677b419bb9989cecd8e0757442a45bc04f83bef06df5a8df86c17f6812a41044a7eb7
AUX libpeas-1.14.0-lua.pc.patch 553 BLAKE2B a86596d6c76e22e3e947709db226a47110f0964ae493d4fd16e506f4666de5fd5214d431a5109ffb0b68a6743bf2aa89aba84b63fabe4e402ac491be01479743 SHA512 ead06352498ff82a4520d4a7ed7b5d03e2d0adcdf2025413851b8385bfdd691c938b456b555d2214ec2dc7b95708f306149d6f1cfa7c5b03ad28a1c90c873349
DIST libpeas-1.22.0.tar.xz 561332 BLAKE2B 219918f8663cd60c9353f477ef905ce0d1e21bf5b7c09661c4cb3c8adbba3af9f5e93b9de8a1b098dab09b1f4071854a871c8ea1db878bda8fe9e51aa45e5f87 SHA512 9c1da1d4b5688c0f4d0647f3519dbfbed94c8921091057aaef0e41bf5ed3f8faf04a49ce9e4eea3fd7bf4ac4dfa1727d76a5f6dae2a4f52228d4c8c74b420c91
+DIST libpeas-1.26.0.tar.xz 191708 BLAKE2B 5845d5cb15724ba933572f48b9056a79cb2c167c7911ff1546c836fe56cd7e49d7461e5a413b79effa64e8e3fb2ed2eb370de665728e476e40ffb4d44c841543 SHA512 86157da14d17c16df2ef3f44ab48822ea1a8be8aec8f5419bc421bd475113f686cd16f9616ac53cbf3dc6f31f521384ac63eb8e9f1a46ea21b5cda8ba21e855f
EBUILD libpeas-1.22.0-r2.ebuild 2286 BLAKE2B 9e37f758c7ff0dff08ba4341400e35f8d0e98cf414a844675b17ee38c07c5c0912156ff724ecbc71a9eabb4ba7121255d68399c27784f50e9fae46cc92a90de1 SHA512 7eccc83b4ae82c4657e246c2cdb982f3f7c4cc9c13e731c924bce1549da4fe9d0a4a2a566ec848b9c29efed7813f05765874e336b01719b81b894a34c0130fcf
+EBUILD libpeas-1.26.0.ebuild 1834 BLAKE2B f8d42f2343279218f3f7674fc45b8935080ecab3a7c76ec6f7bf11d0274ece27dd5ca2fac45dbd1d01fdcce06634f09c84faef88af890479298b96f522466d57 SHA512 5fd092ed8da7dbe17d8c2ba70a4fc3aab60d10ab3491794a72fe6b04d10bde28e0841f382b2412bbda0f2d11a3a3f8d9293fe7b4e451ad3f319756b90539246c
MISC metadata.xml 415 BLAKE2B c3e3dc9746663cd67cfb3a1b2e765bf5da73f9db2669ff7003b5e77ccbbe686780dd181727c3dd3d3f4c5f6e312daa1f36901896ff843cb81c687853340ef680 SHA512 4bf99a5c542cab95dadcf6db8aecbefa0be453f8851c2222ee698eec38c221f3b45b2ead6f87dd1d1ec5a233ba73054cf3b3d7b92d12ff4d88ee04a2057c50ea
diff --git a/dev-libs/libpeas/files/1.26.0-lua.patch b/dev-libs/libpeas/files/1.26.0-lua.patch
new file mode 100644
index 000000000000..0da1b148a49c
--- /dev/null
+++ b/dev-libs/libpeas/files/1.26.0-lua.patch
@@ -0,0 +1,89 @@
+From b693feda0148eb421e1f59d468caceb6f3183a82 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <mart@leio.tech>
+Date: Mon, 16 Mar 2020 23:43:12 +0200
+Subject: [PATCH] build: Handle lua as needed by Gentoo
+
+Gentoo currently uses unversioned lua:0 - lua.pc instad of lua5.1.pc,
+/usr/bin/lua instead of /usr/bin/lua5.1
+Additionally lua and luajit can be installed in parallel, but only one
+should be chosen - so add explicit meson options to choose between them.
+This is currently in a hacky un-upstreamable way: working correctly only
+if both options are disabled, or only one is enabled and the other
+disabled, but having logic issues if any is "auto" or both enabled; this
+is because feature option is mainly used to handle explicit choice
+between them more easily in a Gentoo-specific patch without having to
+add various conditional branches thanks to the feature being disabled
+acting as a full disabler, so the other option is automatically not
+checked.
+---
+ meson.build | 22 +++++++---------------
+ meson_options.txt | 5 ++++-
+ 2 files changed, 11 insertions(+), 16 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 8322fea..49e5011 100644
+--- a/meson.build
++++ b/meson.build
+@@ -117,18 +117,12 @@ endif
+
+ python2_dep = dependency('python2', version: python2_req, required: false)
+ pygobject_dep = dependency('pygobject-3.0', version: pygobject_req, required: false)
+-lua51_dep = dependency('lua51', version: lua_req, required: false)
+-if not lua51_dep.found()
+- lua51_dep = dependency('lua-5.1', version: lua_req, required: false)
+-endif
+-luajit_dep = dependency('luajit', version: luajit_req, required: false)
++lua51_dep = dependency('lua', version: lua_req, required: get_option('lua51'))
++luajit_dep = dependency('luajit', version: luajit_req, required: get_option('luajit'))
+ lua_lgi_found = false
+ lua_lgi_ver = 'not found'
+-lua51_prg = find_program('lua5.1', required: false)
+-if not lua51_prg.found()
+- lua51_prg = find_program('lua51', required: false)
+-endif
+-luajit_prg = find_program('luajit', required: false)
++lua51_prg = find_program('lua', required: get_option('lua51'))
++luajit_prg = find_program('luajit', required: get_option('luajit'))
+ xmllint_prg = find_program('xmllint', required: false)
+
+ if (luajit_dep.found() and luajit_prg.found()) or (lua51_dep.found() and lua51_prg.found())
+@@ -144,6 +138,8 @@ if (luajit_dep.found() and luajit_prg.found()) or (lua51_dep.found() and lua51_p
+ lua51_lgi_dep = declare_dependency(version: lua_lgi_ver)
+ lua_lgi_found = true
+ endif
++ else
++ error('lua support requested but lua-lgi not found')
+ endif
+ message('lua-lgi version: ' + lua_lgi_ver)
+ endif
+@@ -222,11 +218,7 @@ if generate_gir and not introspection_dep.found()
+ generate_gir = false
+ endif
+
+-build_lua51_loader = get_option('lua51')
+-lua51_found = (luajit_dep.found() or lua51_dep.found()) and lua_lgi_found
+-if build_lua51_loader and not lua51_found
+- build_lua51_loader = false
+-endif
++build_lua51_loader = (luajit_dep.found() or lua51_dep.found()) and lua_lgi_found
+
+ build_python2_loader = get_option('python2')
+ python2_found = python2_dep.found() and pygobject_dep.found()
+diff --git a/meson_options.txt b/meson_options.txt
+index 18e1779..dc3e776 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,6 +1,9 @@
+ option('lua51',
+- type: 'boolean', value: true,
++ type: 'feature', value: 'enabled',
+ description: 'Enable Lua 5.1 support (requires lua-lgi)')
++option('luajit',
++ type: 'feature', value: 'disabled',
++ description: 'Use LuaJIT for Lua 5.1 support (requires lua-lgi)')
+
+ option('python2',
+ type: 'boolean', value: false,
+--
+2.20.1
+
diff --git a/dev-libs/libpeas/libpeas-1.26.0.ebuild b/dev-libs/libpeas/libpeas-1.26.0.ebuild
new file mode 100644
index 000000000000..c7ca33771f79
--- /dev/null
+++ b/dev-libs/libpeas/libpeas-1.26.0.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python{3_6,3_7,3_8} )
+
+inherit gnome.org meson python-single-r1 vala virtualx xdg
+
+DESCRIPTION="A GObject plugins library"
+HOMEPAGE="https://developer.gnome.org/libpeas/stable/"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+IUSE="glade +gtk gtk-doc lua luajit +python vala"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ >=dev-libs/glib-2.38:2
+ >=dev-libs/gobject-introspection-1.39:=
+ gtk? ( >=x11-libs/gtk+-3.0.0:3[introspection] )
+ glade? ( >=dev-util/glade-3.9.1:3.10 )
+ lua? (
+ >=dev-lua/lgi-0.9.0
+ luajit? ( >=dev-lang/luajit-2:2 )
+ !luajit? ( =dev-lang/lua-5.1*:0 ) )
+ python? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ >=dev-python/pygobject-3.2:3[${PYTHON_MULTI_USEDEP}]
+ ')
+ )
+"
+DEPEND="${RDEPEND}
+ dev-util/glib-utils
+ gtk-doc? ( >=dev-util/gtk-doc-1.11
+ app-text/docbook-xml-dtd:4.3 )
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ # Gentoo-specific lua tweak hack
+ "${FILESDIR}"/${PV}-lua.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ xdg_src_prepare
+ use vala && vala_src_prepare
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature $(usex lua !luajit lua) lua51)
+ $(meson_feature $(usex lua luajit lua) luajit)
+ -Dpython2=false
+ $(meson_use python python3)
+ # introspection was always enabled in autotools; would need readiness by consumers
+ # to USE flag it, but most need it for python plugins anyways
+ -Dintrospection=true
+ $(meson_use vala vapi)
+ $(meson_use gtk widgetry)
+ $(meson_use glade glade_catalog)
+ -Ddemos=false
+ $(meson_use gtk-doc gtk_doc)
+ )
+ meson_src_configure
+}
+
+src_test() {
+ virtx meson_src_test
+}