commit: 68390ee986e725c3b4c817a163460005370ca268 Author: David Roman <davidroman96 <AT> gmail <DOT> com> AuthorDate: Thu Aug 7 11:22:46 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Fri Aug 8 03:17:39 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=68390ee9
dev-libs/libdwarf: new package, add 2.1.0 Signed-off-by: David Roman <davidroman96 <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/43369 Closes: https://github.com/gentoo/gentoo/pull/43369 Signed-off-by: Sam James <sam <AT> gentoo.org> dev-libs/libdwarf/Manifest | 1 + .../files/libdwarf-0.9.2-fix-include-patch.patch | 22 +++++++++++ dev-libs/libdwarf/libdwarf-2.1.0.ebuild | 46 ++++++++++++++++++++++ dev-libs/libdwarf/metadata.xml | 23 +++++++++++ 4 files changed, 92 insertions(+) diff --git a/dev-libs/libdwarf/Manifest b/dev-libs/libdwarf/Manifest new file mode 100644 index 000000000000..f22f7d7be0ff --- /dev/null +++ b/dev-libs/libdwarf/Manifest @@ -0,0 +1 @@ +DIST libdwarf-2.1.0.tar.xz 2946744 BLAKE2B a6bae4f65140b58457be2a175b73fd5588bc9579ed5bf64cf073a0f5f0861e40c227457011f69572ed1bb4a4da2d239d3477c5622bfd556549bd079dbc04cf45 SHA512 fd58ee55fc7f685f70cf7e79733d926d7064752c4e1ffe3eede1b1cc1090e127c76c59def3a3b32d5514384cd901bb69f9f2afeefa518d0ce9460f529b498078 diff --git a/dev-libs/libdwarf/files/libdwarf-0.9.2-fix-include-patch.patch b/dev-libs/libdwarf/files/libdwarf-0.9.2-fix-include-patch.patch new file mode 100644 index 000000000000..edc75ad1f66c --- /dev/null +++ b/dev-libs/libdwarf/files/libdwarf-0.9.2-fix-include-patch.patch @@ -0,0 +1,22 @@ +diff --git a/src/lib/libdwarf/CMakeLists.txt b/src/lib/libdwarf/CMakeLists.txt +index 6cb0b24e..12fa3e40 100644 +--- a/src/lib/libdwarf/CMakeLists.txt ++++ b/src/lib/libdwarf/CMakeLists.txt +@@ -114,7 +114,7 @@ install(TARGETS dwarf + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" +- PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" ++ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/libdwarf/" + ) + + configure_file(libdwarf.pc.cmake libdwarf.pc @ONLY) +@@ -130,7 +130,7 @@ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libdwarfConfig.cmake" "${CMAKE_CURREN + install(TARGETS dwarf EXPORT libdwarfTargets + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" +- PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}") ++ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/libdwarf") + install(EXPORT libdwarfTargets + FILE libdwarf-targets.cmake + NAMESPACE libdwarf:: diff --git a/dev-libs/libdwarf/libdwarf-2.1.0.ebuild b/dev-libs/libdwarf/libdwarf-2.1.0.ebuild new file mode 100644 index 000000000000..32c1a0c8c7ca --- /dev/null +++ b/dev-libs/libdwarf/libdwarf-2.1.0.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="The DWARF Debugging Information Format" +HOMEPAGE=" + https://www.prevanders.net/dwarf.html + https://github.com/davea42/libdwarf-code +" +SRC_URI="https://www.prevanders.net/${P}.tar.xz" + +LICENSE="BSD GPL-2 LGPL-2.1" +SLOT="0/$(ver_cut 1)" +KEYWORDS="~amd64" +IUSE="test dwarfexample dwarfgen" +RESTRICT="!test? ( test )" + +DEPEND=" + app-arch/zstd:= + sys-libs/zlib:= +" +RDEPEND="${DEPEND}" + +DOCS=( AUTHORS NEWS README.md ) + +PATCHES=( "${FILESDIR}/${PN}-0.9.2-fix-include-patch.patch" ) + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED=ON + -DBUILD_DWARFGEN=$(usex dwarfgen) + -DBUILD_DWARFEXAMPLE=$(usex dwarfexample) + -DDO_TESTING=$(usex test) + ) + + cmake_src_configure +} + +src_install(){ + cmake_src_install + + dodoc ChangeLog* doc/*.pdf +} diff --git a/dev-libs/libdwarf/metadata.xml b/dev-libs/libdwarf/metadata.xml new file mode 100644 index 000000000000..7b111fe732d5 --- /dev/null +++ b/dev-libs/libdwarf/metadata.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>David Roman</name> + </maintainer> + <maintainer type="project" proxied="proxy"> + <email>[email protected]</email> + <name>Proxy Maintainers</name> + </maintainer> + <maintainer type="project"> + <email>[email protected]</email> + <name>Gentoo Toolchain Project</name> + </maintainer> + <upstream> + <remote-id type="github">davea42/libdwarf-code</remote-id> + </upstream> + <use> + <flag name="dwarfexample">enable dwarfexample compilation</flag> + <flag name="dwarfgen">enable dwarfgen compilation</flag> + </use> +</pkgmetadata>
