diff options
author | jmmv <jmmv@FreeBSD.org> | 2015-11-09 04:09:59 +0800 |
---|---|---|
committer | jmmv <jmmv@FreeBSD.org> | 2015-11-09 04:09:59 +0800 |
commit | 209f7c5354459954440d5b07f02aab172650841d (patch) | |
tree | 4f057637df17829ca8031c2f30a223ba06c28582 /lang | |
parent | d8b309c535d1ee8b89cc03c536ec8a0b1fe326e9 (diff) | |
download | freebsd-ports-gnome-209f7c5354459954440d5b07f02aab172650841d.tar.gz freebsd-ports-gnome-209f7c5354459954440d5b07f02aab172650841d.tar.zst freebsd-ports-gnome-209f7c5354459954440d5b07f02aab172650841d.zip |
Add a MULTILIB option to gcc{,48,49,5} for powerpc64
This change is the same as r400632, which updated gcc[56]-devel, but now
for gcc{,48,49,5}. Waited a week to ensure the change caused nothing to go
horribly wrong but this change is very low risk because it only affects
powerpc64.
This fixes the build of gcc{,48,49,5} under powerpc64 when the system
is built without the lib32 libraries.
More in detail:
If the system is built with lib32 support (WITH_LIB32, which is the default),
building gcc from ports results in a compiler that can target both 64-bit and
32-bit binaries on powerpc64. However, when lib32 support is disabled
(WITHOUT_LIB32), gcc should only be built with 64-bit support or otherwise
the build fails.
To fix this, explicitly disable 32-bit support when /usr/lib32 is not present
and add a MULTILIB option (which is only defined for powerpc64 when 32-bit
support is possible and defaults to yes to preserve the current behavior) to
allow the user to explicitly control this feature.
Approved by: gerald (maintainer), bdrewery (mentor), andreast
Differential Revision: https://reviews.freebsd.org/D3952
Diffstat (limited to 'lang')
-rw-r--r-- | lang/gcc/Makefile | 9 | ||||
-rw-r--r-- | lang/gcc48/Makefile | 9 | ||||
-rw-r--r-- | lang/gcc49/Makefile | 9 | ||||
-rw-r--r-- | lang/gcc5/Makefile | 11 |
4 files changed, 37 insertions, 1 deletions
diff --git a/lang/gcc/Makefile b/lang/gcc/Makefile index 3af4bab4c988..f67439703172 100644 --- a/lang/gcc/Makefile +++ b/lang/gcc/Makefile @@ -3,6 +3,7 @@ PORTNAME= gcc PORTVERSION= 4.8.5 +PORTREVISION= 1 CATEGORIES= lang java MASTER_SITES= GCC/releases/gcc-${DISTVERSION} @@ -46,6 +47,14 @@ OPTIONS_DEFAULT_i386= JAVA OPTIONS_DEFAULT_amd64= JAVA OPTIONS_EXCLUDE_DragonFly= JAVA BOOTSTRAP_DESC= Build using a full bootstrap +.if exists(/usr/lib32/libc.so) +OPTIONS_DEFINE+= MULTILIB +OPTIONS_DEFAULT+= MULTILIB +MULTILIB_DESC= Build support for 32-bit and 64-bit target types +MULTILIB_CONFIGURE_ENABLE= multilib +.else +CONFIGURE_ARGS+= --disable-multilib +.endif .include <bsd.port.pre.mk> diff --git a/lang/gcc48/Makefile b/lang/gcc48/Makefile index 2739fb9c12c8..f9c3aa94d8e7 100644 --- a/lang/gcc48/Makefile +++ b/lang/gcc48/Makefile @@ -3,6 +3,7 @@ PORTNAME= gcc PORTVERSION= 4.8.5 +PORTREVISION= 1 CATEGORIES= lang java MASTER_SITES= GCC/releases/gcc-${DISTVERSION} PKGNAMESUFFIX= ${SUFFIX} @@ -49,6 +50,14 @@ OPTIONS_DEFAULT_i386= JAVA OPTIONS_DEFAULT_amd64= JAVA OPTIONS_EXCLUDE_DragonFly= JAVA BOOTSTRAP_DESC= Build using a full bootstrap +.if exists(/usr/lib32/libc.so) +OPTIONS_DEFINE+= MULTILIB +OPTIONS_DEFAULT+= MULTILIB +MULTILIB_DESC= Build support for 32-bit and 64-bit target types +MULTILIB_CONFIGURE_ENABLE= multilib +.else +CONFIGURE_ARGS+= --disable-multilib +.endif .include <bsd.port.pre.mk> diff --git a/lang/gcc49/Makefile b/lang/gcc49/Makefile index 30b82b46005d..269738f33122 100644 --- a/lang/gcc49/Makefile +++ b/lang/gcc49/Makefile @@ -3,6 +3,7 @@ PORTNAME= gcc PORTVERSION= 4.9.4.s20151028 +PORTREVISION= 1 CATEGORIES= lang java MASTER_SITES= GCC/snapshots/${DISTVERSION} PKGNAMESUFFIX= ${SUFFIX} @@ -50,6 +51,14 @@ OPTIONS_DEFAULT_i386= JAVA OPTIONS_DEFAULT_amd64= JAVA OPTIONS_EXCLUDE_DragonFly= JAVA BOOTSTRAP_DESC= Build using a full bootstrap +.if exists(/usr/lib32/libc.so) +OPTIONS_DEFINE+= MULTILIB +OPTIONS_DEFAULT+= MULTILIB +MULTILIB_DESC= Build support for 32-bit and 64-bit target types +MULTILIB_CONFIGURE_ENABLE= multilib +.else +CONFIGURE_ARGS+= --disable-multilib +.endif .include <bsd.port.pre.mk> diff --git a/lang/gcc5/Makefile b/lang/gcc5/Makefile index a06dd7606f72..06567f2c9fea 100644 --- a/lang/gcc5/Makefile +++ b/lang/gcc5/Makefile @@ -3,7 +3,7 @@ PORTNAME= gcc PORTVERSION= 5.2.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= lang java MASTER_SITES= GCC/releases/gcc-${DISTVERSION} PKGNAMESUFFIX= ${SUFFIX} @@ -52,6 +52,15 @@ OPTIONS_DEFAULT_amd64= JAVA OPTIONS_EXCLUDE_DragonFly= JAVA BOOTSTRAP_DESC= Build using a full bootstrap +.if exists(/usr/lib32/libc.so) +OPTIONS_DEFINE_powerpc64= MULTILIB +OPTIONS_DEFAULT_powerpc64= MULTILIB +MULTILIB_DESC= Build support for 32-bit and 64-bit targets +MULTILIB_CONFIGURE_ENABLE= multilib +.else +CONFIGURE_ARGS+= --disable-multilib +.endif + .include <bsd.port.pre.mk> .if ${ARCH} == "amd64" |