dev-libs/dyninst: rename sys-cluster/dyninst

Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
Alessandro Barbieri
2022-06-14 09:20:27 +02:00
parent 7327685cc4
commit 2300478dbc
5 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
DIST dyninst-11.0.1.tar.gz 9059074 BLAKE2B 5ef230d8c5c3253aa54c01387fbb8c6f1d57ea43cb7779e3761306c916cbcd00999ee48cb6d76daba3af45dca6388dcc4c71b527f176039a32130c1ef8f6d074 SHA512 9c439be0252edae0ed3fcfa05b38595b614a91b6627afa85db126df32d5c5de5dc9413a70caf52bee7ac2349d24947626f6370f0dbf19413916c39e01679444f
DIST dyninst-12.1.0.tar.gz 8572639 BLAKE2B 74c835a3c6c6cc9a90d416fff0ea3b4039a55941cb3a7fd63cebd19420a690d6b4fd3d574b728cc9cac53034a6075ffe2a6e9885a7aa87e2d9d0fd798f5e9a29 SHA512 ec09b83f288afefd6a30a3253c91554d421305a43c2f2384435207dcabf523d5498d64873f876817c3108c3fc0a43fd4c48ce2c1ca873c73fb98a2d823446549

View File

@@ -0,0 +1,62 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
CMAKE_MAKEFILE_GENERATOR="emake"
inherit cmake
DESCRIPTION="Tools for binary instrumentation, analysis, and modification"
HOMEPAGE="
https://dyninst.org/dyninst
https://github.com/dyninst/dyninst
"
SRC_URI="https://github.com/dyninst/dyninst/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~amd64"
IUSE="doc openmp valgrind"
RDEPEND="
<dev-cpp/tbb-2021
dev-libs/boost:=
virtual/libelf
virtual/mpi
valgrind? ( dev-util/valgrind )
"
DEPEND="${RDEPEND}"
BDEPEND="doc? ( dev-texlive/texlive-latex )"
PATCHES=( "${FILESDIR}/${P}-remove-executable-flag-from-dyninst_heap-section.patch" )
src_configure() {
local mycmakeargs=(
-DENABLE_STATIC_LIBS=NO
-DSTERILE_BUILD=YES
-DADD_VALGRIND_ANNOTATIONS=$(usex valgrind)
-DBUILD_DOCS=$(usex doc)
-DUSE_OpenMP=$(usex openmp)
)
cmake_src_configure
}
src_install() {
cmake_src_install
einstalldocs
if use doc; then
mv "${ED}"/usr/share/doc/*.pdf "${ED}/usr/share/doc/${PF}" || die
fi
if [[ ! -e "${ED}/usr/$(get_libdir)" ]]; then
mv "${ED}/usr/lib" "${ED}/usr/$(get_libdir)" || die
fi
mkdir -p "${ED}/usr/include/dyninst" || die
mv "${ED}"/usr/include/*.h* "${ED}/usr/include/dyninst" || die
find "${ED}" -name '*.a' -delete || die
}

View File

@@ -0,0 +1,60 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CMAKE_MAKEFILE_GENERATOR="emake"
inherit cmake
DESCRIPTION="Tools for binary instrumentation, analysis, and modification"
HOMEPAGE="
https://dyninst.org/dyninst
https://github.com/dyninst/dyninst
"
SRC_URI="https://github.com/dyninst/dyninst/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~amd64"
IUSE="doc openmp valgrind"
RDEPEND="
<dev-cpp/tbb-2021
dev-libs/boost:=
virtual/libelf
virtual/mpi
valgrind? ( dev-util/valgrind )
"
DEPEND="${RDEPEND}"
BDEPEND="doc? ( dev-texlive/texlive-latex )"
src_configure() {
local mycmakeargs=(
-DENABLE_STATIC_LIBS=NO
-DSTERILE_BUILD=ON
-DADD_VALGRIND_ANNOTATIONS=$(usex valgrind)
-DBUILD_DOCS=$(usex doc)
-DUSE_OpenMP=$(usex openmp)
)
cmake_src_configure
}
src_install() {
cmake_src_install
einstalldocs
if use doc; then
mv "${ED}"/usr/share/doc/*.pdf "${ED}/usr/share/doc/${PF}" || die
fi
if [[ ! -e "${ED}/usr/$(get_libdir)" ]]; then
mv "${ED}/usr/lib" "${ED}/usr/$(get_libdir)" || die
fi
mkdir -p "${ED}/usr/include/dyninst" || die
mv "${ED}"/usr/include/*.h* "${ED}/usr/include/dyninst" || die
find "${ED}" -name '*.a' -delete || die
}

View File

@@ -0,0 +1,20 @@
From f27f96cee0b73f770cf69cb98a5744f769014ee5 Mon Sep 17 00:00:00 2001
From: "James A. Kupsch" <kupsch@cs.wisc.edu>
Date: Mon, 30 Aug 2021 10:18:17 -0500
Subject: [PATCH] remove executable flag from .dyninst_heap section
This prevents the library/object with this code from having a segment violates
the W^X security property for segments as the current setting resulted in
segment with both the WRITE and EXECUTE flags set. The function
mark_heaps_exec() restores execute protection to just the heap arrays.
--- a/dyninstAPI_RT/src/RTspace.S
+++ b/dyninstAPI_RT/src/RTspace.S
@@ -8,7 +8,7 @@
.type DYNINSTstaticHeap_16M_anyHeap_1, @object
.size DYNINSTstaticHeap_16M_anyHeap_1, 16777216
-.section .dyninst_heap,"awx",@nobits
+.section .dyninst_heap,"aw",@nobits
.align 16
DYNINSTstaticHeap_512K_lowmemHeap_1:
.skip 524288

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>lssndrbarbieri@gmail.com</email>
<name>Alessandro Barbieri</name>
</maintainer>
<upstream>
<remote-id type="github">dyninst/dyninst</remote-id>
</upstream>
<use>
<flag name="openmp">Enable parallel code parsing</flag>
<!--<flag name="rtlib">Build the RT library as a separate project so we can change compilers</flag>-->
<flag name="valgrind">Enable annotations for Valgrind analysis</flag>
</use>
</pkgmetadata>