Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 Mar 2014 20:41:10 +0000 (UTC)
From:      Gerald Pfeifer <gerald@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r347808 - in head: Mk lang/gcc lang/gcc/files lang/gcc47
Message-ID:  <201403102041.s2AKfAG9046132@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: gerald
Date: Mon Mar 10 20:41:10 2014
New Revision: 347808
URL: http://svnweb.freebsd.org/changeset/ports/347808
QAT: https://qat.redports.org/buildarchive/r347808/

Log:
  Update the default version of GCC used in the Ports Collection from
  GCC 4.6.4 to GCC 4.7.3.  This entails updating the lang/gcc port as
  well as changing the default in Mk/bsd.default-versions.mk.
  
  This adds powerpc64 as a supported architecture (and removes ia64,
  though it can be supported by manually installing lang/gcc48).
  
  New binaries %%GNU_HOST%%-gcc-ar47, %%GNU_HOST%%-gcc-nm47, and
  %%GNU_HOST%%-gcc-ranlib47 are provided to support link-time
  optimization (LTO) which scales significantly better.
  
  And it adds support for indirect functions (IFUNCS), experimental
  support for transactional memory in the compiler as well as a supporting
  run-time library called libitm, a new string length optimization pass,
  and support for atomic operations specifying the C++11/C11 memory model.
  
  Version 3.1 of the OpenMP specification is now supported for the C,
  C++, and Fortran compilers.
  
  GCC accepts the options -std=c11 and -std=gnu11 for the C11 revision
  of the ISO C standard which inlcude support for unicode strings,
  nonreturning functions (_Noreturn and <stdnoreturn.h>), alignment
  support (_Alignas, _Alignof, max_align_t, <stdalign.h>), and a
  __builtin_complex built-in function.
  
  The C++ frontend now accepts the -std=c++11, -std=gnu++11, and
  -Wc++11-compat options and implements many C++11 features of the
  language including extended friends syntax, explicit override
  control, non-static data member initializers, user-defined literals,
  alias declarations, delegating constructors, atomic classes, and more.
  
  The C++ standard library and Fortran frontend have received many
  improvements.  See http://gcc.gnu.org/gcc-4.7/changes.html for an
  extense list of changes; http://gcc.gnu.org/gcc-4.7/porting_to.html
  for information on how to port to that new version.
  
  PR:		182136
  Supported by:	Christoph Moench-Tegeder <cmt@burggraben.net> (fixing many ports)
  Tested by:	bdrewery (two -exp runs)

Deleted:
  head/lang/gcc/files/patch-unwind-ia64.h
Modified:
  head/Mk/bsd.default-versions.mk
  head/Mk/bsd.gcc.mk
  head/lang/gcc/Makefile
  head/lang/gcc/distinfo
  head/lang/gcc/pkg-descr
  head/lang/gcc/pkg-plist
  head/lang/gcc47/Makefile

Modified: head/Mk/bsd.default-versions.mk
==============================================================================
--- head/Mk/bsd.default-versions.mk	Mon Mar 10 20:00:49 2014	(r347807)
+++ head/Mk/bsd.default-versions.mk	Mon Mar 10 20:41:10 2014	(r347808)
@@ -20,7 +20,7 @@ ${_l:U}_DEFAULT=	${lang:C/.*=//g}
 
 APACHE_DEFAULT?=	2.2
 FPC_DEFAULT?=		2.6.2
-GCC_DEFAULT?=		4.6
+GCC_DEFAULT?=		4.7
 LUA_DEFAULT?=		5.2
 MYSQL_DEFAULT?=		5.5
 PERL5_DEFAULT?=		5.16

Modified: head/Mk/bsd.gcc.mk
==============================================================================
--- head/Mk/bsd.gcc.mk	Mon Mar 10 20:00:49 2014	(r347807)
+++ head/Mk/bsd.gcc.mk	Mon Mar 10 20:41:10 2014	(r347808)
@@ -19,7 +19,7 @@
 #
 # Examples:
 #   USE_GCC=	yes			# port requires a current version of GCC
-#							# (4.6 as of today, subject to change).
+#							# (4.7 as of today, subject to change).
 #   USE_GCC=	any			# port requires GCC 4.2 or later.
 #   USE_GCC=	4.8+		# port requires GCC 4.8 or later.
 #   USE_GCC=	4.8			# port requires GCC 4.8.

Modified: head/lang/gcc/Makefile
==============================================================================
--- head/lang/gcc/Makefile	Mon Mar 10 20:00:49 2014	(r347807)
+++ head/lang/gcc/Makefile	Mon Mar 10 20:41:10 2014	(r347808)
@@ -2,13 +2,13 @@
 # $FreeBSD$
 
 PORTNAME=	gcc
-PORTVERSION=	4.6.4
+PORTVERSION=	4.7.3
 CATEGORIES=	lang java
 MASTER_SITES=	${MASTER_SITE_GCC}
 MASTER_SITE_SUBDIR=	releases/gcc-${DISTVERSION}
 
 MAINTAINER=	gerald@FreeBSD.org
-COMMENT=	GNU Compiler Collection 4.6
+COMMENT=	GNU Compiler Collection 4.7
 
 LICENSE=	GPLv3 GPLv3RLE
 LICENSE_COMB=	multi
@@ -23,14 +23,14 @@ RUN_DEPENDS+=	${LOCALBASE}/bin/as:${PORT
 BUILD_DEPENDS+=	runtest:${PORTSDIR}/misc/dejagnu
 .endif
 
-CONFLICTS=	gcc46*
+CONFLICTS=	gcc47*
 
 # DISTVERSION relates to downloads, GCC_VERSION and SUFFIX to names
 # of executables and directories once installed.
 DISTVERSION=	${PORTVERSION}
 GCC_VERSION=	${PORTVERSION:C/(.+)\.[0-9]{8}/\1/}
 SUFFIX=		${PORTVERSION:C/([0-9]+).([0-9]+).*/\1\2/}
-ONLY_FOR_ARCHS=	amd64 i386 ia64 powerpc sparc64
+ONLY_FOR_ARCHS=	amd64 i386 powerpc powerpc64 sparc64
 USES=		gmake iconv perl5
 USE_BINUTILS=	yes
 USE_BZIP2=	yes
@@ -55,6 +55,10 @@ CONFIGURE_TARGET=	x86_64-portbld-${OPSYS
 CONFIGURE_TARGET=	${ARCH}-portbld-${OPSYS:L}${OSREL}
 .endif
 
+.if ${ARCH} == powerpc64
+CONFIGURE_ENV+=	UNAME_m="powerpc64"
+.endif
+
 LANGUAGES:=	c,c++,objc,fortran
 SRCDIR=		${WRKDIR}/gcc-${DISTVERSION}
 WRKSRC=		${WRKDIR}/build
@@ -67,6 +71,7 @@ CONFIGURE_ARGS+=--disable-bootstrap
 ALL_TARGET=	bootstrap-lean
 .endif
 CONFIGURE_ARGS+=--disable-nls \
+		--enable-gnu-indirect-function \
 		--libdir=${TARGLIB} \
 		--libexecdir=${LIBEXEC} \
 		--program-suffix=${SUFFIX} \
@@ -91,7 +96,8 @@ INFO=		gcc${SUFFIX}/cpp \
 		gcc${SUFFIX}/libgomp
 # Release tarballs (as opposed to snapshots) always carry this.
 #.if ${ARCH} != "ia64" && ${ARCH} != "powerpc" && ${ARCH} != "sparc64"
-INFO+=		gcc${SUFFIX}/libquadmath
+INFO+=		gcc${SUFFIX}/libquadmath \
+		gcc${SUFFIX}/libitm
 #.endif
 
 .if ${PORT_OPTIONS:MJAVA}

Modified: head/lang/gcc/distinfo
==============================================================================
--- head/lang/gcc/distinfo	Mon Mar 10 20:00:49 2014	(r347807)
+++ head/lang/gcc/distinfo	Mon Mar 10 20:41:10 2014	(r347808)
@@ -1,2 +1,2 @@
-SHA256 (gcc-4.6.4.tar.bz2) = 35af16afa0b67af9b8eb15cafb76d2bc5f568540552522f5dc2c88dd45d977e8
-SIZE (gcc-4.6.4.tar.bz2) = 72006076
+SHA256 (gcc-4.7.3.tar.bz2) = 2f7c37eb4fc14422ff2358a9ef59c974a75ab41204ef0e49fc34ab1d8981a9c3
+SIZE (gcc-4.7.3.tar.bz2) = 82904224

Modified: head/lang/gcc/pkg-descr
==============================================================================
--- head/lang/gcc/pkg-descr	Mon Mar 10 20:00:49 2014	(r347807)
+++ head/lang/gcc/pkg-descr	Mon Mar 10 20:41:10 2014	(r347808)
@@ -1,11 +1,11 @@
 GCC, the GNU Compiler Collection, supports a number of languages.  This
-port installs the C, C++, Fortran and Java front ends as gcc46, g++46,
-gfortran46, and gcj46, respectively.
+port installs the C, C++, Fortran and Java front ends as gcc47, g++47,
+gfortran47, and gcj47, respectively.
 
-It can be used interchangibly with the lang/gcc46 port which tracks
+It can be used interchangibly with the lang/gcc47 port which tracks
 weekly upstream snapshots whereas this port will be updated less
 frequently, mostly in sync with upstream releases, and will move to
-lang/gcc47 and later over time.
+lang/gcc48 and later over time.
 
 WWW: http://gcc.gnu.org/
 

Modified: head/lang/gcc/pkg-plist
==============================================================================
--- head/lang/gcc/pkg-plist	Mon Mar 10 20:00:49 2014	(r347807)
+++ head/lang/gcc/pkg-plist	Mon Mar 10 20:41:10 2014	(r347808)
@@ -2,11 +2,17 @@ bin/%%GNU_HOST%%-c++%%SUFFIX%%
 bin/%%GNU_HOST%%-g++%%SUFFIX%%
 bin/%%GNU_HOST%%-gcc%%SUFFIX%%
 bin/%%GNU_HOST%%-gcc-%%GCC_VERSION%%
+bin/%%GNU_HOST%%-gcc-ar%%SUFFIX%%
+bin/%%GNU_HOST%%-gcc-nm%%SUFFIX%%
+bin/%%GNU_HOST%%-gcc-ranlib%%SUFFIX%%
 bin/%%GNU_HOST%%-gfortran%%SUFFIX%%
 bin/c++%%SUFFIX%%
 bin/cpp%%SUFFIX%%
 bin/g++%%SUFFIX%%
 bin/gcc%%SUFFIX%%
+bin/gcc-ar%%SUFFIX%%
+bin/gcc-nm%%SUFFIX%%
+bin/gcc-ranlib%%SUFFIX%%
 bin/gcov%%SUFFIX%%
 bin/gfortran%%SUFFIX%%
 info/gcc%%SUFFIX%%/dir
@@ -47,7 +53,7 @@ share/gcc-%%GCC_VERSION%%/python/libstdc
 %%JAVA%%bin/jcf-dump%%SUFFIX%%
 %%JAVA%%bin/jv-convert%%SUFFIX%%
 %%JAVA%%bin/rebuild-gcj-db%%SUFFIX%%
-%%JAVA%%libdata/pkgconfig/libgcj-4.6.pc
+%%JAVA%%libdata/pkgconfig/libgcj-4.7.pc
 %%JAVA%%man/man1/aot-compile%%SUFFIX%%.1.gz
 %%JAVA%%man/man1/gappletviewer%%SUFFIX%%.1.gz
 %%JAVA%%man/man1/gc-analyze%%SUFFIX%%.1.gz

Modified: head/lang/gcc47/Makefile
==============================================================================
--- head/lang/gcc47/Makefile	Mon Mar 10 20:00:49 2014	(r347807)
+++ head/lang/gcc47/Makefile	Mon Mar 10 20:41:10 2014	(r347808)
@@ -24,6 +24,8 @@ RUN_DEPENDS+=	${LOCALBASE}/bin/as:${PORT
 BUILD_DEPENDS+=	runtest:${PORTSDIR}/misc/dejagnu
 .endif
 
+CONFLICTS=	gcc-4.7.*
+
 # DISTVERSION relates to downloads, GCC_VERSION and SUFFIX to names
 # of executables and directories once installed.  A PORTVERSION of
 # 4.Y.2.s20130808 results in values of 4.Y-20130808, 4.Y.2, and 4Y



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201403102041.s2AKfAG9046132>