diff options
Diffstat (limited to 'community/mingw-w64-gcc-base/APKBUILD')
-rw-r--r-- | community/mingw-w64-gcc-base/APKBUILD | 116 |
1 files changed, 64 insertions, 52 deletions
diff --git a/community/mingw-w64-gcc-base/APKBUILD b/community/mingw-w64-gcc-base/APKBUILD index d418e589e25..928fbe06298 100644 --- a/community/mingw-w64-gcc-base/APKBUILD +++ b/community/mingw-w64-gcc-base/APKBUILD @@ -1,73 +1,85 @@ # Contributor: Leo <thinkabit.ukim@gmail.com> -# Maintainer: +# Maintainer: Simon Zeni <simon@bl4ckb0ne.ca> pkgname=mingw-w64-gcc-base -pkgver=11.2.0 -pkgrel=0 -_islver=0.22 +pkgver=13.2.0 +pkgrel=1 +_islver=0.26 pkgdesc="Cross GCC for the MinGW-w64 cross-compiler (bootstrap)" url="https://gcc.gnu.org/" arch="x86_64 x86" license="GPL-3.0-or-later" -depends="mingw-w64-binutils mingw-w64-headers mingw-w64-headers-bootstrap !mingw-w64-gcc" -makedepends="zlib-dev mpc1-dev gmp-dev mpfr-dev" -source=" - $pkgname-$pkgver.tar.xz::https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz - https://libisl.sourceforge.io/isl-$_islver.tar.bz2 +depends=" + !mingw-w64-gcc + mingw-w64-binutils + mingw-w64-headers + mingw-w64-headers-bootstrap " +makedepends=" + gmp-dev + isl-dev + mpc1-dev + mpfr-dev + zlib-dev + " +source="$pkgname-$pkgver.tar.xz::https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz" builddir="$srcdir/gcc-$pkgver" case "$CARCH" in - x86_64) _target="x86_64-w64-mingw32" ;; - x86) _target="i686-w64-mingw32" ;; +x86_64) + _targets="x86_64-w64-mingw32 i686-w64-mingw32" + depends=" + $depends + !i686-mingw-w64-gcc + i686-mingw-w64-binutils + i686-mingw-w64-headers + " + ;; +x86) + _targets="i686-w64-mingw32" + ;; esac -# Directory for our out-of-tree builds -_gccdir="$srcdir"/gcc-build-${_target} - -prepare() { - default_prepare - - # Do not install libiberty - sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in - sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" gcc/configure - - # link isl for in-tree builds - ln -sf ../isl-${_islver} isl - - mkdir -p "$_gccdir" -} - build() { - cd "$_gccdir" - "$builddir"/configure \ - --prefix=/usr \ - --target=${_target} \ - --enable-languages=c,lto \ - --enable-static \ - --with-system-zlib \ - --enable-lto --disable-dw2-exceptions \ - --disable-ns --enable-version-specific-runtime-libs \ - --disable-multilib --enable-checking=release \ - CFLAGS="$(echo "$CFLAGS" | sed -e 's/-Os/-O2/g')" \ - CPPFLAGS="$(echo "$CPPFLAGS" | sed -e 's/-Os/-O2/g')" - make all-gcc + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100431 + export CFLAGS="$CFLAGS -O2 -Wno-error=format-security" + export CXXFLAGS="$CXXFLAGS -O2 -Wno-error=format-security" + + local target + for target in $_targets; do + msg "building target: $target" + ( + local bld="$srcdir"/bld-$target + mkdir -p "$bld" + cd "$bld" + "$builddir"/configure \ + --prefix=/usr \ + --program-prefix=$target- \ + --target=$target \ + --disable-dw2-exceptions \ + --disable-multilib \ + --disable-ns \ + --enable-checking=release \ + --enable-languages=c,lto \ + --enable-static \ + --enable-version-specific-runtime-libs \ + --with-bugurl="https://gitlab.alpinelinux.org/alpine/aports/-/issues" \ + --with-system-zlib + make all-gcc + ) + done } package() { - cd "$_gccdir" - make DESTDIR="$pkgdir" install-gcc - - strip "${pkgdir}"/usr/bin/${_target}-* - strip "${pkgdir}"/usr/libexec/gcc/${_target}/${pkgver}/lto* - strip "${pkgdir}"/usr/libexec/gcc/${_target}/${pkgver}/cc1 - strip "${pkgdir}"/usr/libexec/gcc/${_target}/${pkgver}/collect2 + local target + for target in $_targets; do + make -C "$srcdir"/bld-$target DESTDIR="$pkgdir" install-gcc + done - rm -rf "${pkgdir}"/usr/share/man - rm -rf "${pkgdir}"/usr/share/info - rm -rf "${pkgdir}"/usr/share/locale + rm -rf "$pkgdir"/usr/share/man + rm -rf "$pkgdir"/usr/share/info + rm -rf "$pkgdir"/usr/share/locale } sha512sums=" -d53a0a966230895c54f01aea38696f818817b505f1e2bfa65e508753fcd01b2aedb4a61434f41f3a2ddbbd9f41384b96153c684ded3f0fa97c82758d9de5c7cf mingw-w64-gcc-base-11.2.0.tar.xz -fc2c9796979610dd51143dcefe4f5c989c4354571cc5a1fcc6b932fd41f42a54f6b43adfd289af61be7bd06f3a523fa6a7d7ee56680e32d8036beb4c188fa668 isl-0.22.tar.bz2 +d99e4826a70db04504467e349e9fbaedaa5870766cda7c5cab50cdebedc4be755ebca5b789e1232a34a20be1a0b60097de9280efe47bdb71c73251e30b0862a2 mingw-w64-gcc-base-13.2.0.tar.xz " |