Skip to content

Commit

Permalink
gcc: 8.2.0 added
Browse files Browse the repository at this point in the history
  • Loading branch information
Furniel committed Jul 26, 2018
1 parent fb926ae commit 545c888
Show file tree
Hide file tree
Showing 4 changed files with 151 additions and 3 deletions.
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,14 +109,15 @@ At the moment, successfully building the following versions:
gcc-7.2.0
gcc-7.3.0
gcc-8.1.0
gcc-8.2.0
gcc-4_6-branch (currently 4.6.5 prerelease)
gcc-4_7-branch (currently 4.7.5 prerelease)
gcc-4_8-branch (currently 4.8.6 prerelease)
gcc-4_9-branch (currently 4.9.5 prerelease)
gcc-5-branch (currently 5.6.0 prerelease)
gcc-6-branch (currently 6.5.0 prerelease)
gcc-7-branch (currently 7.4.0 prerelease)
gcc-8-branch (currently 8.2.0 prerelease)
gcc-8-branch (currently 8.3.0 prerelease)
gcc-trunk (currently 9.0.0 snapshot)
```

Expand Down
3 changes: 2 additions & 1 deletion build
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,8 @@ readonly RUN_ARGS="$@"
echo " gcc-7.3.0 (7.3.0 release)"
echo " gcc-7-branch (currently 7.4.0-prerelease)"
echo " gcc-8.1.0 (8.1.0 release)"
echo " gcc-8-branch (currently 8.2.0-prerelease)"
echo " gcc-8.2.0 (8.2.0 release)"
echo " gcc-8-branch (currently 8.3.0-prerelease)"
echo " gcc-trunk (currently 9-snapshot)"

exit 0
Expand Down
2 changes: 1 addition & 1 deletion library/functions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -934,7 +934,7 @@ function func_map_gcc_name_to_gcc_version {
gcc-5-branch) echo "5.6.0" ;;
gcc-6-branch) echo "6.5.0" ;;
gcc-7-branch) echo "7.4.0" ;;
gcc-8-branch) echo "8.2.0" ;;
gcc-8-branch) echo "8.3.0" ;;
gcc-trunk) echo "9.0.0" ;;
*) die "gcc name error: $1. terminate." ;;
esac
Expand Down
146 changes: 146 additions & 0 deletions scripts/gcc-8.2.0.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@

#
# The BSD 3-Clause License. http://www.opensource.org/licenses/BSD-3-Clause
#
# This file is part of MinGW-W64(mingw-builds: https://github.com/niXman/mingw-builds) project.
# Copyright (c) 2011-2017 by niXman (i dotty nixman doggy gmail dotty com)
# Copyright (c) 2012-2015 by Alexpux (alexpux doggy gmail dotty com)
# All rights reserved.
#
# Project: MinGW-W64 ( http://sourceforge.net/projects/mingw-w64/ )
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the distribution.
# - Neither the name of the 'MinGW-W64' nor the names of its contributors may
# be used to endorse or promote products derived from this software
# without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#

# **************************************************************************

PKG_VERSION=8.2.0
PKG_NAME=gcc-${PKG_VERSION}
PKG_DIR_NAME=gcc-${PKG_VERSION}
PKG_TYPE=.tar.xz
PKG_URLS=(
"https://ftp.gnu.org/gnu/gcc/gcc-${PKG_VERSION}/gcc-${PKG_VERSION}${PKG_TYPE}"
)

PKG_PRIORITY=main

#

PKG_PATCHES=(
gcc/gcc-4.7-stdthreads.patch
gcc/gcc-5.1-iconv.patch
gcc/gcc-4.8-libstdc++export.patch
gcc/gcc-4.8.2-fix-for-windows-not-minding-non-existant-parent-dirs.patch
gcc/gcc-4.8.2-windows-lrealpath-no-force-lowercase-nor-backslash.patch
gcc/gcc-4.9.1-enable-shared-gnat-implib.mingw.patch
gcc/gcc-5.1.0-make-xmmintrin-header-cplusplus-compatible.patch
gcc/gcc-5.2-fix-mingw-pch.patch
gcc/gcc-5-dwarf-regression.patch
gcc/gcc-5.1.0-fix-libatomic-building-for-threads=win32.patch
gcc/gcc-6-ktietz-libgomp.patch
gcc/gcc-libgomp-ftime64.patch
gcc/gcc-8-branch-Backport-patches-for-std-filesystem-from-master.patch
)

#

PKG_CONFIGURE_FLAGS=(
--host=$HOST
--build=$BUILD
--target=$TARGET
#
--prefix=$MINGWPREFIX
--with-sysroot=$PREFIX
#--with-gxx-include-dir=$MINGWPREFIX/$TARGET/include/c++
#
$LINK_TYPE_GCC
#
$( [[ $USE_MULTILIB == yes ]] \
&& echo "--enable-targets=all --enable-multilib" \
|| echo "--disable-multilib" \
)
--enable-languages=$ENABLE_LANGUAGES,lto
--enable-libstdcxx-time=yes
--enable-threads=$THREADS_MODEL
--enable-libgomp
--enable-libatomic
--enable-lto
--enable-graphite
--enable-checking=release
--enable-fully-dynamic-string
--enable-version-specific-runtime-libs
--enable-libstdcxx-filesystem-ts=yes
$( [[ $EXCEPTIONS_MODEL == dwarf ]] \
&& echo "--disable-sjlj-exceptions --with-dwarf2" \
)
$( [[ $EXCEPTIONS_MODEL == sjlj ]] \
&& echo "--enable-sjlj-exceptions" \
)
#
--disable-libstdcxx-pch
--disable-libstdcxx-debug
$( [[ $BOOTSTRAPING == yes ]] \
&& echo "--enable-bootstrap" \
|| echo "--disable-bootstrap" \
)
--disable-rpath
--disable-win32-registry
--disable-nls
--disable-werror
--disable-symvers
#
--with-gnu-as
--with-gnu-ld
#
$PROCESSOR_OPTIMIZATION
$PROCESSOR_TUNE
#
--with-libiconv
--with-system-zlib
--with-{gmp,mpfr,mpc,isl}=$PREREQ_DIR/$HOST-$LINK_TYPE_SUFFIX
--with-pkgversion="\"$BUILD_ARCHITECTURE-$THREADS_MODEL-$EXCEPTIONS_MODEL${REV_STRING}, $MINGW_W64_PKG_STRING\""
--with-bugurl=$BUG_URL
#
CFLAGS="\"$COMMON_CFLAGS\""
CXXFLAGS="\"$COMMON_CXXFLAGS\""
CPPFLAGS="\"$COMMON_CPPFLAGS\""
LDFLAGS="\"$COMMON_LDFLAGS $( [[ $BUILD_ARCHITECTURE == i686 ]] && echo -Wl,--large-address-aware )\""
)

#

PKG_MAKE_FLAGS=(
-j$JOBS
all
)

#

PKG_INSTALL_FLAGS=(
-j1
DESTDIR=$BASE_BUILD_DIR
$( [[ $STRIP_ON_INSTALL == yes ]] && echo install-strip || echo install )
)

# **************************************************************************

0 comments on commit 545c888

Please sign in to comment.