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)
This commit is contained in:
parent
a5673b92fb
commit
b6cf1c2c3b
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=384911
3 changed files with 17 additions and 12 deletions
|
@ -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 compiler (overrides other options)
|
|||
.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.${GARCH}.freebsd.100B.tar.bz2
|
|||
. 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=-static
|
|||
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}
|
||||
|
|
|
@ -9,7 +9,7 @@ LIB_DEPENDS+= libmpc.so:${PORTSDIR}/math/mpc
|
|||
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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue