Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Apr 2015 15:58:00 +0000 (UTC)
From:      John Marino <marino@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r384911 - head/lang/gcc5-aux
Message-ID:  <201504281558.t3SFw00K055874@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marino
Date: Tue Apr 28 15:57:59 2015
New Revision: 384911
URL: https://svnweb.freebsd.org/changeset/ports/384911

Log:
  lang/gcc5-aux: Build in one stage by default, new bootstrap for DF
  
  The original intention was to build update all the bootstrap compilers
  to be based on GCC5, but right now I'm only doing that for DragonFly.
  After June 30, I might rebuild the bootstrap compiler on FreeBSD 10.1,
  but right now gcc5-aux is building fine on FreeBSD in one stage, even
  though their bootstrap is based on GCC 4.9.
  
  Right now, gcc5-aux is building with 3 full stages.  I'm switching it to
  a single stage build, but adding an off-by-default option to build it
  in three stages again.  With one stage, libcc1 is not built, but with
  three stages it is.  LibCC1 is meant to support the upcoming release of
  GDB so it's currently not needed (it fails to build if gcc is not fully
  bootstrapping which is why it's disabled)
  
  This brings the build down to about 9-14 minutes versus 60-90 minutes
  depending on the (average power) machine.
  
  Also, I've explicitly limited the build to i386 and amd64 on FreeBSD and
  I have dropped i386 support on DragonFly, which could only have been
  build on DragonFly 3.8 or earlier.
  
  Also, I removed the iconv dependency when a bootstrap compiler is being
  created (the all-overriding BOOTSTRAP option for the maintainer)

Modified:
  head/lang/gcc5-aux/Makefile
  head/lang/gcc5-aux/Makefile.common
  head/lang/gcc5-aux/distinfo

Modified: head/lang/gcc5-aux/Makefile
==============================================================================
--- head/lang/gcc5-aux/Makefile	Tue Apr 28 15:56:30 2015	(r384910)
+++ head/lang/gcc5-aux/Makefile	Tue Apr 28 15:57:59 2015	(r384911)
@@ -31,7 +31,7 @@ CPPFLAGS+=		-I${LOCALBASE}/include
 LDFLAGS+=		-L${LOCALBASE}/lib
 
 OPTIONS_GROUP=		Standard Bootstrap
-OPTIONS_GROUP_Standard=	FORT OBJC NLS TESTSUITE STATIC
+OPTIONS_GROUP_Standard=	FORT OBJC NLS TESTSUITE ALLSTAGES STATIC
 OPTIONS_GROUP_Bootstrap=BOOTSTRAP
 OPTIONS_DEFAULT=	FORT OBJC
 NO_OPTIONS_SORT=	yes
@@ -39,6 +39,7 @@ NO_OPTIONS_SORT=	yes
 FORT_DESC=		Fortran language support
 OBJC_DESC=		Objective-C language support
 TESTSUITE_DESC=		Activate test support
+ALLSTAGES_DESC=		Build compiler with itself (twice, brings in libcc1)
 STATIC_DESC=		Link compilers and drivers statically
 BOOTSTRAP_DESC=		Create bootstrap compiler (overrides other options)
 
@@ -50,6 +51,7 @@ BOOTSTRAP_DESC=		Create bootstrap compil
 .include <bsd.port.options.mk>
 
 .if ${OPSYS} == FreeBSD
+ONLY_FOR_ARCHS=		amd64 i386
 MODERN_BINUTILS=	yes
 .  if ${OSVERSION} < 900000
 BOOTSTRAP_COMPILER=	ada-bootstrap.${GARCH}.freebsd.84.tar.bz2
@@ -58,7 +60,8 @@ BOOTSTRAP_COMPILER=	ada-bootstrap.${GARC
 .  endif
 .endif
 .if ${OPSYS} == DragonFly
-BOOTSTRAP_COMPILER=	ada-bootstrap.${GARCH}.dragonfly.36A.tar.bz2
+ONLY_FOR_ARCHS=		x86_64
+BOOTSTRAP_COMPILER=	ada-bootstrap.${GARCH}.dragonfly.41.tar.bz2
 .endif
 
 .if defined(MODERN_BINUTILS)
@@ -109,10 +112,9 @@ DISTFILES+=	${BOOTSTRAP_COMPILER}:boot
 .if defined(PLUS_BOOTSTRAPS)
 DISTFILES=	\
    ${IDENTIFICATION}.tar.bz2 \
-   ada-bootstrap.i386.dragonfly.36A.tar.bz2:boot \
    ada-bootstrap.i386.freebsd.84.tar.bz2:boot \
    ada-bootstrap.i386.freebsd.100B.tar.bz2:boot \
-   ada-bootstrap.x86_64.dragonfly.36A.tar.bz2:boot \
+   ada-bootstrap.x86_64.dragonfly.41.tar.bz2:boot \
    ada-bootstrap.x86_64.freebsd.84.tar.bz2:boot \
    ada-bootstrap.x86_64.freebsd.100B.tar.bz2:boot
 .endif
@@ -151,8 +153,14 @@ EXTRA_CONFIG+=		--with-stage1-ldflags=-s
 EXTRA_CONFIG+=		--disable-shared --disable-lto
 EXTRA_CONFIG+=		--with-boot-ldflags=-static
 .else
-# For some reason, libcc1.a can't be build with bootstrap (only) in poudriere
-#EXTRA_CONFIG+=		--disable-bootstrap
+.  if !${PORT_OPTIONS:MALLSTAGES}
+#  For reasons unknown, build fails at libcc1 when the compiler is not
+#  not bootstrapping.  It appears to be an upstream error.  LibCC1 is used
+#  for gdb 7.9 exclusively, so it's not really needed.  Let's disable it
+#  by default, but let people that want it suffer a 3-stage build.
+EXTRA_CONFIG+=		--disable-bootstrap --disable-libcc1
+.  endif
+USES+=			iconv
 .endif
 
 # Establish Ada-aware compiler for use
@@ -164,7 +172,6 @@ ADA_CONFIGURE_ENV+=	CXXFLAGS="${CXXFLAGS
 ADA_CONFIGURE_ENV+=	LDFLAGS="${LDFLAGS}"
 ADA_CONFIGURE_ENV+=	PATH=${FULL_PATH}
 ADA_MAKE_ENV+=		PATH=${FULL_PATH}
-ADA_MAKE_ENV+=		LD_LIBRARY_PATH=${BUILDDIR}/gcc
 
 # The standard configuration options
 ADA_CONFIG_ARGS=	--enable-languages=${LANGS:Q}

Modified: head/lang/gcc5-aux/Makefile.common
==============================================================================
--- head/lang/gcc5-aux/Makefile.common	Tue Apr 28 15:56:30 2015	(r384910)
+++ head/lang/gcc5-aux/Makefile.common	Tue Apr 28 15:57:59 2015	(r384911)
@@ -9,7 +9,7 @@ LIB_DEPENDS+=		libmpc.so:${PORTSDIR}/mat
 ONLY_FOR_ARCHS= 	i386 amd64
 
 GNU_CONFIGURE=		yes
-USES=			gmake iconv libtool perl5 tar:bzip2
+USES=			gmake libtool perl5 tar:bzip2
 USE_PERL5=		build
 ALL_TARGET=		default
 

Modified: head/lang/gcc5-aux/distinfo
==============================================================================
--- head/lang/gcc5-aux/distinfo	Tue Apr 28 15:56:30 2015	(r384910)
+++ head/lang/gcc5-aux/distinfo	Tue Apr 28 15:57:59 2015	(r384911)
@@ -1,13 +1,11 @@
 SHA256 (gcc-5.1.0.tar.bz2) = b7dafdf89cbb0e20333dbf5b5349319ae06e3d1a30bf3515b5488f7e89dca5ad
 SIZE (gcc-5.1.0.tar.bz2) = 94954411
-SHA256 (ada-bootstrap.i386.dragonfly.36A.tar.bz2) = 6b1a6ff0fe0e3bf13c667db2fef177b811329cd998400a1303969a86911cb1c8
-SIZE (ada-bootstrap.i386.dragonfly.36A.tar.bz2) = 39357314
 SHA256 (ada-bootstrap.i386.freebsd.84.tar.bz2) = b410336cb0e71c8a29dd5f831a17b4b7282e7d590f452475a94c6a625cfc8846
 SIZE (ada-bootstrap.i386.freebsd.84.tar.bz2) = 39727003
 SHA256 (ada-bootstrap.i386.freebsd.100B.tar.bz2) = 7231209f2600275f554f788ad1d036cf633c4339ebd25bd479a5bb1ddcddedf3
 SIZE (ada-bootstrap.i386.freebsd.100B.tar.bz2) = 41229192
-SHA256 (ada-bootstrap.x86_64.dragonfly.36A.tar.bz2) = ba9b193f1f5c780c0e94086a9af6f1c8e843b6782c133b9948789b95b2e605c4
-SIZE (ada-bootstrap.x86_64.dragonfly.36A.tar.bz2) = 40747242
+SHA256 (ada-bootstrap.x86_64.dragonfly.41.tar.bz2) = eb7785d8b842aee2bb04b43adfb1346b178ee4e83d8775b4e6705fd23f1586f0
+SIZE (ada-bootstrap.x86_64.dragonfly.41.tar.bz2) = 44956630
 SHA256 (ada-bootstrap.x86_64.freebsd.84.tar.bz2) = ba1a407d936e7b3f2bfe825d1fb5a1f0e85e8edbdd9e8440bb49ef643fec05fc
 SIZE (ada-bootstrap.x86_64.freebsd.84.tar.bz2) = 40227668
 SHA256 (ada-bootstrap.x86_64.freebsd.100B.tar.bz2) = 1066d7c5e71d78b4416de3b73348227678ca07db52488409e270db7b00467f55



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