Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 354903 | Differences between
and this patch

Collapse All | Expand All

(-)toolchain.eclass (-24 / +5 lines)
Lines 91-97 Link Here
91
	[[ -n ${SPECS_VER} ]] && IUSE+=" nossp"
91
	[[ -n ${SPECS_VER} ]] && IUSE+=" nossp"
92
92
93
	if tc_version_is_at_least 3 ; then
93
	if tc_version_is_at_least 3 ; then
94
		IUSE+=" bootstrap doc gcj gtk hardened libffi multilib objc"
94
		IUSE+=" bootstrap doc gcj gtk hardened multilib objc"
95
95
96
		tc_version_is_at_least "4.0" && IUSE+=" objc-gc mudflap"
96
		tc_version_is_at_least "4.0" && IUSE+=" objc-gc mudflap"
97
		tc_version_is_at_least "4.1" && IUSE+=" libssp objc++"
97
		tc_version_is_at_least "4.1" && IUSE+=" libssp objc++"
Lines 722-735 Link Here
722
722
723
	use hardened && make_gcc_hard
723
	use hardened && make_gcc_hard
724
724
725
	if is_libffi ; then
726
		# move the libffi target out of gcj and into all
727
		sed -i \
728
			-e '/^libgcj=/s:target-libffi::' \
729
			-e '/^target_lib/s:=":="target-libffi :' \
730
			"${S}"/configure || die
731
	fi
732
733
	# install the libstdc++ python into the right location
725
	# install the libstdc++ python into the right location
734
	# http://gcc.gnu.org/PR51368
726
	# http://gcc.gnu.org/PR51368
735
	if tc_version_is_at_least 4.5 ; then
727
	if tc_version_is_at_least 4.5 ; then
Lines 780-785 Link Here
780
		do_gcc_rename_java_bins
772
		do_gcc_rename_java_bins
781
	fi
773
	fi
782
774
775
	# Prevent libffi from being installed
776
	sed -i -e 's/\(install.*:\) install-.*recursive/\1/' "${S}"/libffi/Makefile.in
777
	sed -i -e 's/\(install-data-am:\).*/\1/' "${S}"/libffi/include/Makefile.in
778
783
	# Fixup libtool to correctly generate .la files with portage
779
	# Fixup libtool to correctly generate .la files with portage
784
	cd "${S}"
780
	cd "${S}"
785
	elibtoolize --portage --shallow --no-uclibc
781
	elibtoolize --portage --shallow --no-uclibc
Lines 1498-1514 Link Here
1498
		fi
1494
		fi
1499
	done
1495
	done
1500
1496
1501
	# I do not know if this will break gcj stuff, so I'll only do it for
1502
	#	objc for now; basically "ffi.h" is the correct file to include,
1503
	#	but it gets installed in .../GCCVER/include and yet it does
1504
	#	"#include <ffitarget.h>" which (correctly, as it's an "extra" file)
1505
	#	is installed in .../GCCVER/include/libffi; the following fixes
1506
	#	ffi.'s include of ffitarget.h - Armando Di Cianno <fafhrd@gentoo.org>
1507
	if [[ -d ${D}${LIBPATH}/include/libffi ]] ; then
1508
		mv -i "${D}"${LIBPATH}/include/libffi/* "${D}"${LIBPATH}/include || die
1509
		rm -r "${D}"${LIBPATH}/include/libffi || die
1510
	fi
1511
1512
	# Now do the fun stripping stuff
1497
	# Now do the fun stripping stuff
1513
	env RESTRICT="" CHOST=${CHOST} prepstrip "${D}${BINPATH}"
1498
	env RESTRICT="" CHOST=${CHOST} prepstrip "${D}${BINPATH}"
1514
	env RESTRICT="" CHOST=${CTARGET} prepstrip "${D}${LIBPATH}"
1499
	env RESTRICT="" CHOST=${CTARGET} prepstrip "${D}${LIBPATH}"
Lines 2009-2018 Link Here
2009
	use cxx && use_if_iuse go
1994
	use cxx && use_if_iuse go
2010
}
1995
}
2011
1996
2012
is_libffi() {
2013
	use_if_iuse libffi
2014
}
2015
2016
is_objc() {
1997
is_objc() {
2017
	gcc-lang-supported objc || return 1
1998
	gcc-lang-supported objc || return 1
2018
	use_if_iuse objc
1999
	use_if_iuse objc

Return to bug 354903