elfutils-0.186_pre9999.ebuild (2195B)
- # Copyright 2003-2021 Gentoo Authors
 - # Distributed under the terms of the GNU General Public License v2
 - EAPI=7
 - inherit flag-o-matic multilib-minimal autotools git-r3
 - DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)"
 - HOMEPAGE="http://elfutils.org/"
 - EGIT_REPO_URI="git://sourceware.org/git/elfutils.git"
 - LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )"
 - SLOT="0"
 - IUSE="bzip2 lzma nls static-libs test +threads +utils valgrind zstd"
 - RDEPEND=">=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}]
 - bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] )
 - lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] )
 - zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] )
 - !dev-libs/libelf
 - "
 - DEPEND="${RDEPEND}
 - valgrind? ( dev-util/valgrind )
 - "
 - BDEPEND="nls? ( sys-devel/gettext )
 - >=sys-devel/flex-2.5.4a
 - sys-devel/m4
 - "
 - RESTRICT="!test? ( test )"
 - PATCHES=(
 - "${FILESDIR}"/${PN}-0.186-gnu99-cleanup.patch
 - )
 - src_prepare() {
 - default
 - eautoreconf
 - if ! use static-libs; then
 - sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die
 - fi
 - # https://sourceware.org/PR23914
 - sed -i 's:-Werror::' */Makefile.in || die
 - }
 - src_configure() {
 - use test && append-flags -g #407135
 - # Symbol aliases are implemented as asm statements.
 - # Will require porting: https://gcc.gnu.org/PR48200
 - filter-flags '-flto*'
 - multilib-minimal_src_configure
 - }
 - multilib_src_configure() {
 - ECONF_SOURCE="${S}" econf \
 - $(use_enable nls) \
 - $(use_enable threads thread-safety) \
 - $(use_enable valgrind) \
 - --disable-debuginfod \
 - --disable-libdebuginfod \
 - --program-prefix="eu-" \
 - --with-zlib \
 - --enable-maintainer-mode \
 - $(use_with bzip2 bzlib) \
 - $(use_with lzma) \
 - $(use_with zstd)
 - }
 - multilib_src_test() {
 - env LD_LIBRARY_PATH="${BUILD_DIR}/libelf:${BUILD_DIR}/libebl:${BUILD_DIR}/libdw:${BUILD_DIR}/libasm" \
 - LC_ALL="C" \
 - emake check VERBOSE=1
 - }
 - multilib_src_install_all() {
 - einstalldocs
 - dodoc NOTES
 - # These build quick, and are needed for most tests, so don't
 - # disable their building when the USE flag is disabled.
 - if ! use utils; then
 - rm -rf "${ED}"/usr/bin || die
 - fi
 - }