Lines 145-151
Link Here
|
145 |
[[ -n ${D_VER} ]] && IUSE="${IUSE} d" |
145 |
[[ -n ${D_VER} ]] && IUSE="${IUSE} d" |
146 |
|
146 |
|
147 |
if version_is_at_least 3 ; then |
147 |
if version_is_at_least 3 ; then |
148 |
IUSE="${IUSE} bootstrap doc gcj gtk hardened multilib objc vanilla" |
148 |
IUSE="${IUSE} bootstrap doc gcj gtk hardened libffi multilib objc vanilla" |
149 |
|
149 |
|
150 |
# gcc-{nios2,bfin} don't accept these |
150 |
# gcc-{nios2,bfin} don't accept these |
151 |
if [[ ${PN} == "gcc" ]] ; then |
151 |
if [[ ${PN} == "gcc" ]] ; then |
Lines 958-963
Link Here
|
958 |
einfo "updating configuration to build hardened GCC" |
958 |
einfo "updating configuration to build hardened GCC" |
959 |
make_gcc_hard || die "failed to make gcc hard" |
959 |
make_gcc_hard || die "failed to make gcc hard" |
960 |
fi |
960 |
fi |
|
|
961 |
|
962 |
if is_libffi && ! is_gcj ; then |
963 |
einfo "enabling libffi without gcj" |
964 |
sed -i~ -e '/^libgcj="/,/"/s/target-libffi//' \ |
965 |
-e '/^target_libraries="/,/"/s/\${libgcj}/target-libffi &/' \ |
966 |
configure.in configure |
967 |
if [[ $(diff configure.in{~,} | wc -l) -ne 8 || |
968 |
$(diff configure{~,} | wc -l) -ne 8 ]]; then |
969 |
die "libffi sed went wrong!" |
970 |
fi |
971 |
fi |
961 |
} |
972 |
} |
962 |
gcc-library_src_unpack() { |
973 |
gcc-library_src_unpack() { |
963 |
: |
974 |
: |
Lines 1719-1725
Link Here
|
1719 |
# "#include <ffitarget.h>" which (correctly, as it's an "extra" file) |
1730 |
# "#include <ffitarget.h>" which (correctly, as it's an "extra" file) |
1720 |
# is installed in .../GCCVER/include/libffi; the following fixes |
1731 |
# is installed in .../GCCVER/include/libffi; the following fixes |
1721 |
# ffi.'s include of ffitarget.h - Armando Di Cianno <fafhrd@gentoo.org> |
1732 |
# ffi.'s include of ffitarget.h - Armando Di Cianno <fafhrd@gentoo.org> |
1722 |
if is_objc && ! is_gcj ; then |
1733 |
if { is_libffi || is_objc; } && ! is_gcj ; then |
1723 |
#dosed "s:<ffitarget.h>:<libffi/ffitarget.h>:g" /${LIBPATH}/include/ffi.h |
1734 |
#dosed "s:<ffitarget.h>:<libffi/ffitarget.h>:g" /${LIBPATH}/include/ffi.h |
1724 |
mv "${D}"${LIBPATH}/include/libffi/* "${D}"${LIBPATH}/include |
1735 |
mv "${D}"${LIBPATH}/include/libffi/* "${D}"${LIBPATH}/include |
1725 |
rm -Rf "${D}"${LIBPATH}/include/libffi |
1736 |
rm -Rf "${D}"${LIBPATH}/include/libffi |
Lines 2366-2371
Link Here
|
2366 |
use gcj |
2377 |
use gcj |
2367 |
} |
2378 |
} |
2368 |
|
2379 |
|
|
|
2380 |
is_libffi() { |
2381 |
[[ ${GCCMAJOR} < 3 ]] && return 1 |
2382 |
use build && return 1 |
2383 |
use libffi |
2384 |
} |
2385 |
|
2369 |
is_objc() { |
2386 |
is_objc() { |
2370 |
gcc-lang-supported objc || return 1 |
2387 |
gcc-lang-supported objc || return 1 |
2371 |
use build && return 1 |
2388 |
use build && return 1 |