# Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=4 inherit eutils multilib toolchain-funcs autotools-utils MY_P="${P}a" DESCRIPTION="A C++ based modeling platform for VLSI and system-level co-design" HOMEPAGE="http://accellera.org/community/systemc" SRC_URI="http://accellera.org/images/downloads/standards/${PN}/${MY_P}.tar.gz" SLOT="0" LICENSE="Apache-2.0" IUSE="doc static-libs" KEYWORDS="~amd64 ~x86" RESTRICT="test" AUTOTOOLS_IN_SOURCE_BUILD=1 S="${WORKDIR}/${MY_P}" src_prepare() { # drop compiler check to enable use of CXX epatch "${FILESDIR}"/${P}-config.patch sed -i -e "s:OPT_CXXFLAGS=\"-O3\":OPT_CXXFLAGS=\"\":g" configure.in || die "Patching configure.in failed" sed -i -e "s:lib-\$(TARGET_ARCH):$(get_libdir):g" $(find . -name Makefile.am) || die "Patching Makefile.am failed" # respect DESTDIR sed -i -e "s:\$(prefix):\$(DESTDIR)\$(prefix):g" $(find . -name Makefile.am) || die "Patching Makefile.am failed" eautoreconf sed -i -e "s:\$(DESTDIR)\$(libdir):\$(libdir):g" src/sysc/Makefile.in || die for sfile in src/sysc/qt/md/*.s ; do sed -i -e '$a \ #if defined(__linux__) && defined(__ELF__) \ .section .note.GNU-stack,"",%progbits \ #endif' "${sfile}" || die "Patching ${sfile} failed" done } src_configure() { econf $(use_enable static-libs static) CXX=$(tc-getCXX) } src_compile() { cd src default } src_install() { dodoc AUTHORS ChangeLog INSTALL NEWS README RELEASENOTES use doc && dodoc -r docs/* cd src autotools-utils_src_install } pkg_postinst() { elog "If you want to run the examples, you need to :" elog " tar xvfz ${PORTAGE_ACTUAL_DISTDIR}/${A}" elog " cd ${MY_P}" elog " find examples -name 'Makefile.*' -exec sed -i -e 's/-lm/-lm -lpthread/' '{}' \;" elog " ./configure" elog " cd examples" elog " make check" }