Date: Sun, 22 Nov 2015 21:06:54 +0000 (UTC) From: Julio Merino <jmmv@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r402245 - in head/lang: gcc gcc48 gcc49 gcc5 Message-ID: <201511222106.tAML6s72077309@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jmmv (src committer) Date: Sun Nov 22 21:06:54 2015 New Revision: 402245 URL: https://svnweb.freebsd.org/changeset/ports/402245 Log: 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}. This change is the second attempt at doing this: the first attempt went in r401072 and was reverted in r401074 because the diff was bogus and enabled the new MULTILIB option under all platforms instead of just 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 Modified: head/lang/gcc/Makefile head/lang/gcc48/Makefile head/lang/gcc49/Makefile head/lang/gcc5/Makefile Modified: head/lang/gcc/Makefile ============================================================================== --- head/lang/gcc/Makefile Sun Nov 22 20:57:30 2015 (r402244) +++ head/lang/gcc/Makefile Sun Nov 22 21:06:54 2015 (r402245) @@ -3,6 +3,7 @@ PORTNAME= gcc PORTVERSION= 4.8.5 +PORTREVISION= 1 CATEGORIES= lang java MASTER_SITES= GCC/releases/gcc-${DISTVERSION} @@ -47,6 +48,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 target types +MULTILIB_CONFIGURE_ENABLE= multilib +.else +CONFIGURE_ARGS+= --disable-multilib +.endif + .include <bsd.port.pre.mk> .if ${ARCH} == "amd64" Modified: head/lang/gcc48/Makefile ============================================================================== --- head/lang/gcc48/Makefile Sun Nov 22 20:57:30 2015 (r402244) +++ head/lang/gcc48/Makefile Sun Nov 22 21:06:54 2015 (r402245) @@ -3,6 +3,7 @@ PORTNAME= gcc PORTVERSION= 4.8.5 +PORTREVISION= 1 CATEGORIES= lang java MASTER_SITES= GCC/releases/gcc-${DISTVERSION} PKGNAMESUFFIX= ${SUFFIX} @@ -50,6 +51,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 target types +MULTILIB_CONFIGURE_ENABLE= multilib +.else +CONFIGURE_ARGS+= --disable-multilib +.endif + .include <bsd.port.pre.mk> .if ${ARCH} == "amd64" Modified: head/lang/gcc49/Makefile ============================================================================== --- head/lang/gcc49/Makefile Sun Nov 22 20:57:30 2015 (r402244) +++ head/lang/gcc49/Makefile Sun Nov 22 21:06:54 2015 (r402245) @@ -3,6 +3,7 @@ PORTNAME= gcc PORTVERSION= 4.9.4.s20151111 +PORTREVISION= 1 CATEGORIES= lang java MASTER_SITES= GCC/snapshots/${DISTVERSION} PKGNAMESUFFIX= ${SUFFIX} @@ -51,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 target types +MULTILIB_CONFIGURE_ENABLE= multilib +.else +CONFIGURE_ARGS+= --disable-multilib +.endif + .include <bsd.port.pre.mk> .if ${ARCH} == "amd64" Modified: head/lang/gcc5/Makefile ============================================================================== --- head/lang/gcc5/Makefile Sun Nov 22 20:57:30 2015 (r402244) +++ head/lang/gcc5/Makefile Sun Nov 22 21:06:54 2015 (r402245) @@ -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} @@ -53,6 +53,15 @@ OPTIONS_EXCLUDE_DragonFly= JAVA BOOTSTRAP_DESC= Build using a full bootstrap GRAPHITE_DESC= Support for Graphite loop optimizations +.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"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201511222106.tAML6s72077309>