From a970f4eb885167fcf85827bd573634dd3206d314 Mon Sep 17 00:00:00 2001 From: Denis Dupeyron Date: Sat, 11 Jul 2009 17:59:04 +0000 Subject: Fixed compilation with gcc 4.3 and 4.4 (bug #252623, thanks to Gene Seto for the patch). Fixed executable stack warnings in a portable way. (Portage version: 2.1.6.13/cvs/Linux x86_64) --- sci-electronics/systemc/ChangeLog | 8 ++- sci-electronics/systemc/systemc-2.2.0-r1.ebuild | 68 +++++++++++++++++++++++++ 2 files changed, 75 insertions(+), 1 deletion(-) create mode 100644 sci-electronics/systemc/systemc-2.2.0-r1.ebuild (limited to 'sci-electronics') diff --git a/sci-electronics/systemc/ChangeLog b/sci-electronics/systemc/ChangeLog index 2a65f869f791..f3ad2bae48be 100644 --- a/sci-electronics/systemc/ChangeLog +++ b/sci-electronics/systemc/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sci-electronics/systemc # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-electronics/systemc/ChangeLog,v 1.13 2009/07/11 16:19:51 calchan Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-electronics/systemc/ChangeLog,v 1.14 2009/07/11 17:59:04 calchan Exp $ + +*systemc-2.2.0-r1 (11 Jul 2009) + + 11 Jul 2009; Denis Dupeyron +systemc-2.2.0-r1.ebuild: + Fixed compilation with gcc 4.3 and 4.4 (bug #252623, thanks to Gene Seto + for the patch). Fixed executable stack warnings in a portable way. 11 Jul 2009; Denis Dupeyron -systemc-2.2_beta20060605.ebuild: diff --git a/sci-electronics/systemc/systemc-2.2.0-r1.ebuild b/sci-electronics/systemc/systemc-2.2.0-r1.ebuild new file mode 100644 index 000000000000..a969548ae13b --- /dev/null +++ b/sci-electronics/systemc/systemc-2.2.0-r1.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-electronics/systemc/systemc-2.2.0-r1.ebuild,v 1.1 2009/07/11 17:59:04 calchan Exp $ + +inherit versionator multilib + +DESCRIPTION="A C++ based modeling platform for VLSI and system-level co-design" +LICENSE="SOPLA-2.3" +HOMEPAGE="http://www.systemc.org/" +SRC_URI="${P}.tgz" + +SLOT="0" +IUSE="" +KEYWORDS="~amd64 ~x86" +RESTRICT="fetch test" + +DEPEND="" +RDEPEND="" + +pkg_nofetch() { + elog "${PN} developers require end-users to accept their license agreement" + elog "by registering on their Web site (${HOMEPAGE})." + elog "Please download ${A} manually and place it in ${DISTDIR}." +} + +src_unpack() { + unpack ${A} + cd "${S}" + + sed -i -e "s:lib-\$(TARGET_ARCH):$(get_libdir):g" $(find . -name Makefile.in) || die "Patching Makefile.in failed" + + sed -i -e "s:OPT_CXXFLAGS=\"-O3\":OPT_CXXFLAGS=\"${CXXFLAGS}\":g" configure || die "Patching configure failed" + + sed -i -e '/#include "sysc\/utils\/sc_report.h"/a \ +#include \ +#include ' src/sysc/utils/sc_utils_ids.cpp || die "Patching failed" + + 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_compile() { + econf --disable-dependency-tracking CXX="g++" || die "Configuration failed" + cd src + emake || die "Compilation failed" +} + +src_install() { + dodoc AUTHORS ChangeLog INSTALL NEWS README RELEASENOTES + insinto /usr/share/doc/${PF}/docs + doins docs/* + cd src + einstall +} + +pkg_postinst() { + elog "If you want to run the examples, you need to :" + elog " tar xvfz ${PORTAGE_ACTUAL_DISTDIR}/${A}" + elog " cd ${P}" + elog " find examples -name 'Makefile.*' -exec sed -i -e 's/-lm/-lm -lpthread/' '{}' \;" + elog " ./configure" + elog " cd examples" + elog " make check" +} -- cgit v1.2.3-65-gdbad