summaryrefslogtreecommitdiff
path: root/sys-libs/libunwind
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-08-05 08:07:19 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-08-05 08:07:19 +0100
commitc411f65f26582f4c75d2edbf4fa90a708474ace3 (patch)
treea530098a38ad69dcc0e9ec69f47a1bca219d8253 /sys-libs/libunwind
parenta5a60a0e01733705770f24a57953bf44ee06467d (diff)
gentoo auto-resync : 05:08:2022 - 08:07:19
Diffstat (limited to 'sys-libs/libunwind')
-rw-r--r--sys-libs/libunwind/Manifest2
-rw-r--r--sys-libs/libunwind/libunwind-1.6.2-r1.ebuild117
2 files changed, 119 insertions, 0 deletions
diff --git a/sys-libs/libunwind/Manifest b/sys-libs/libunwind/Manifest
index d1d9f9f29efd..e08b37ac8822 100644
--- a/sys-libs/libunwind/Manifest
+++ b/sys-libs/libunwind/Manifest
@@ -1,3 +1,5 @@
+DIST libunwind-1.6.2-docs.tar.xz 25372 BLAKE2B d16562b29c49070f0cd6ad9211c7c3283b527bd88677d9ce50b15f27254bac504ea79b807e01f4f2bdb05649ff8980f94346ef9737bf5b5bd7c313e547222f10 SHA512 71bcb781cc37ccbef7b349225b1b3b4cd6ba4ce5a48d8478cea17f8245614b672d8e14b5a088e2d998ea717670a371925d4fbe407dde636611f7c2f2901065d8
DIST libunwind-1.6.2.tar.gz 901392 BLAKE2B 3d0313f7e92cbc3e1a84ad3831a5170f21cdf772f1697ca0a59dea63cdd47da382e9f1fd77325d9ff8bcd47559a425dc883a820c646c628cd00faed82cb0f83f SHA512 1d17dfb14f99a894a6cda256caf9ec481c14068aaf8f3a85fa3befa7c7cca7fca0f544a91a3a7c2f2fc55bab19b06a67ca79f55ac9081151d94478c7f611f8f7
+EBUILD libunwind-1.6.2-r1.ebuild 3678 BLAKE2B 03a9e1885931f49a702d561e5ff0ad58ab6acc5dba7bbf01560cddca2cd31cb499042eb36bdb6b3aa0ac88a21abff60b37c762976870a8dd3f806604cffcfedd SHA512 62f6689aa706eee6b6a7ff908bcbf54d0f56472d794b40a60534ca0681ea6495160d9b0e2a4990e837d04c107d9337e41238204d8c1f341eb22f879eebce067e
EBUILD libunwind-1.6.2.ebuild 2680 BLAKE2B 686f5fa9f0362c6669e9195e84f5f35546da5a6d8f66bdf0e9b91a580e1e20b9da4025718ed2f960dff7cbd66d325cb5aec6868b1147bed013486d9ebf4d6b16 SHA512 c44f75111e3a5f97aa85e6124c007c6216445d9ee3cff8418153229a2d97b83b5d97895576993a9c91a457e67f47d74ea50ac755fbbd55f7492a1cbf690ac263
MISC metadata.xml 574 BLAKE2B cf49536a68a838e39d6c67191eff496d8910f1d58cd7830546e519af38972db7cf7add177a6e5902202d2a66bc6b3dadcd261505b3bb61f285f0be10a0db42e7 SHA512 bf5fd787ae0b233c7fe5e8f4b987c472a03b93c07adebf35ce27c7b6759b9ac239296d5ede6725ac11f5030365199533389e51ced10dc6a20bb5aa74baf34ab0
diff --git a/sys-libs/libunwind/libunwind-1.6.2-r1.ebuild b/sys-libs/libunwind/libunwind-1.6.2-r1.ebuild
new file mode 100644
index 000000000000..144c3e79cac5
--- /dev/null
+++ b/sys-libs/libunwind/libunwind-1.6.2-r1.ebuild
@@ -0,0 +1,117 @@
+# Copyright 2005-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-libunwind-docs
+# Set to 1 if prebuilt, 0 if not
+# (the construct below is to allow overriding from env for script)
+LIBUNWIND_DOCS_PREBUILT=${LIBUNWIND_DOCS_PREBUILT:-1}
+LIBUNWIND_DOCS_PREBUILT_DEV=sam
+LIBUNWIND_DOCS_VERSION=$(ver_cut 1-3)
+# Default to generating docs (inc. man pages) if no prebuilt; overridden later
+LIBUNWIND_DOCS_USEFLAG="+doc"
+
+[[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] && LIBUNWIND_DOCS_USEFLAG="doc"
+
+MY_PV=${PV/_/-}
+MY_P=${PN}-${MY_PV}
+inherit multilib-minimal
+
+DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
+HOMEPAGE="https://savannah.nongnu.org/projects/libunwind"
+SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz"
+if [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then
+ SRC_URI+=" !doc? ( https://dev.gentoo.org/~${LIBUNWIND_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${LIBUNWIND_DOCS_VERSION}-docs.tar.xz )"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0/8" # libunwind.so.8
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 -sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug debug-frame ${LIBUNWIND_DOCS_USEFLAG} libatomic lzma static-libs test zlib"
+
+RESTRICT="test !test? ( test )" # some tests are broken (toolchain version dependent, rely on external binaries)
+
+BDEPEND="
+ doc? ( app-text/texlive-core )
+"
+RDEPEND="
+ lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] )
+ zlib? ( sys-libs/zlib[static-libs?,${MULTILIB_USEDEP}] )
+"
+# We just use the header from libatomic.
+DEPEND="${RDEPEND}
+ libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/libunwind.h
+
+ # see libunwind.h for the full list of arch-specific headers
+ /usr/include/libunwind-aarch64.h
+ /usr/include/libunwind-arm.h
+ /usr/include/libunwind-hppa.h
+ /usr/include/libunwind-ia64.h
+ /usr/include/libunwind-mips.h
+ /usr/include/libunwind-ppc32.h
+ /usr/include/libunwind-ppc64.h
+ /usr/include/libunwind-riscv.h
+ /usr/include/libunwind-sh.h
+ /usr/include/libunwind-tilegx.h
+ /usr/include/libunwind-x86.h
+ /usr/include/libunwind-x86_64.h
+)
+
+src_prepare() {
+ default
+
+ chmod +x src/ia64/mk_cursor_i || die
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ # --enable-cxx-exceptions: always enable it, headers provide the interface
+ # and on some archs it is disabled by default causing a mismatch between the
+ # API and the ABI, bug #418253
+ --enable-cxx-exceptions
+ --enable-coredump
+ --enable-ptrace
+ --enable-setjmp
+ $(use_enable debug-frame)
+ $(use_enable doc documentation)
+ $(use_enable lzma minidebuginfo)
+ $(use_enable static-libs static)
+ $(use_enable zlib zlibdebuginfo)
+ # conservative-checks: validate memory addresses before use; as of 1.0.1,
+ # only x86_64 supports this, yet may be useful for debugging, couple it with
+ # debug useflag.
+ $(use_enable debug conservative_checks)
+ $(use_enable debug)
+ $(use_enable test tests)
+ )
+
+ export ac_cv_header_atomic_ops_h=$(usex libatomic)
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+ # bug #586208
+ CCACHE_NODIRECT=1 default
+}
+
+multilib_src_test() {
+ # Explicitly allow parallel build of tests.
+ # Sandbox causes some tests to freak out.
+ SANDBOX_ON=0 emake check
+}
+
+multilib_src_install_all() {
+ find "${ED}" -name "*.la" -type f -delete || die
+
+ # If USE=doc, there'll be newly generated docs which we install instead.
+ if ! use doc && [[ ${LIBUNWIND_DOCS_PREBUILT} == 1 ]] ; then
+ doman "${WORKDIR}"/${PN}-${LIBUNWIND_DOCS_VERSION}-docs/man*/*.[0-8]
+ fi
+}