71 lines
1.8 KiB
Bash
71 lines
1.8 KiB
Bash
# 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"
|
|
}
|