summaryrefslogtreecommitdiffstats
path: root/dev-libs/libr/libr-14.1.2.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libr/libr-14.1.2.ebuild')
-rw-r--r--dev-libs/libr/libr-14.1.2.ebuild59
1 files changed, 59 insertions, 0 deletions
diff --git a/dev-libs/libr/libr-14.1.2.ebuild b/dev-libs/libr/libr-14.1.2.ebuild
new file mode 100644
index 00000000..6eac0053
--- /dev/null
+++ b/dev-libs/libr/libr-14.1.2.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Copyright 2020-2024 The Trinity Desktop Project
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+TRINITY_MODULE_TYPE="dependencies"
+TRINITY_MODULE_NAME="libr"
+inherit trinity-base-2
+
+DESCRIPTION="ELF resource access and editing library"
+HOMEPAGE="https://trinitydesktop.org/"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+if [[ ${PV} != *9999* ]] ; then
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+IUSE="+bfd elf gtk man"
+REQUIRED_USE="?? ( bfd elf )"
+
+RDEPEND="
+ sys-libs/zlib:=
+ bfd? ( sys-libs/binutils-libs:= )
+ elf? ( virtual/libelf:= )
+"
+DEPEND="${RDEPEND}
+ gtk? ( x11-libs/gtk+:2 )
+"
+# NOTE: gtk uses weak linkage, so it's not necessary during runtime
+BDEPEND="man? ( app-text/doxygen )"
+
+pkg_setup() {
+ if ! use bfd && ! use elf; then
+ ewarn "You haven't selected nor \"bfd\" nor \"elf\" as a backend"
+ ewarn "a fallback read-only implementation will be used to"
+ ewarn "access elf resources, but modification of elf files will"
+ ewarn "be unavailable."
+ fi
+}
+
+src_prepare() {
+ trinity-base-2_src_prepare
+
+ if ! use man; then
+ rm -rf man || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DWITH_BACKEND_LIBBFD=$(usex bfd)
+ -DWITH_BACKEND_LIBELF=$(usex elf)
+ -DWITH_BACKEND_READONLY=$( (! use bfd && ! use elf) && echo yes || echo no )
+ -DWITH_GTK=$(usex gtk)
+ )
+
+ cmake_src_configure
+}