[arch-commits] Commit in arm-none-eabi-gcc/repos/community-x86_64 (PKGBUILD PKGBUILD)

Anatol Pomozov anatolik at gemini.archlinux.org
Sun Apr 24 03:08:22 UTC 2022


    Date: Sunday, April 24, 2022 @ 03:08:21
  Author: anatolik
Revision: 1189494

archrelease: copy trunk to community-x86_64

Added:
  arm-none-eabi-gcc/repos/community-x86_64/PKGBUILD
    (from rev 1189493, arm-none-eabi-gcc/trunk/PKGBUILD)
Deleted:
  arm-none-eabi-gcc/repos/community-x86_64/PKGBUILD

----------+
 PKGBUILD |  251 ++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 124 insertions(+), 127 deletions(-)

Deleted: PKGBUILD
===================================================================
--- PKGBUILD	2022-04-24 03:07:56 UTC (rev 1189493)
+++ PKGBUILD	2022-04-24 03:08:21 UTC (rev 1189494)
@@ -1,127 +0,0 @@
-# Maintainer: Anatol Pomozov <anatol.pomozov at gmail.com>
-# Contributor: Martin Schmölzer <mschmoelzer at gmail.com>
-
-_target=arm-none-eabi
-pkgname=$_target-gcc
-pkgver=11.2.0
-_islver=0.24
-pkgrel=1
-#_snapshot=8-20180427
-pkgdesc='The GNU Compiler Collection - cross compiler for ARM EABI (bare-metal) target'
-arch=(x86_64)
-url='https://gcc.gnu.org/'
-license=(GPL LGPL FDL)
-depends=($_target-binutils zlib libmpc)
-makedepends=(gmp mpfr $_target-newlib)
-optdepends=('arm-none-eabi-newlib: Standard C library optimized for embedded systems')
-options=(!emptydirs !strip)
-source=(https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz{,.sig}
-        #ftp://gcc.gnu.org/pub/gcc/snapshots/$_snapshot/gcc-$_snapshot.tar.xz
-        http://isl.gforge.inria.fr/isl-$_islver.tar.bz2)
-sha256sums=('d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b'
-            'SKIP'
-            'fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0')
-validpgpkeys=(33C235A34C46AA3FFB293709A328C3A2C3C45C06  # Jakub Jelinek <jakub at redhat.com>
-              D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62  # Jakub Jelinek <jakub at redhat.com>
-              13975A70E63C361C73AE69EF6EEB81F8981C74C7) # Richard Guenther <richard.guenther at gmail.com>
-
-if [ -n "$_snapshot" ]; then
-  _basedir=gcc-$_snapshot
-else
-  _basedir=gcc-$pkgver
-fi
-
-prepare() {
-  cd $_basedir
-
-  # link isl for in-tree builds
-  ln -s ../isl-$_islver isl
-
-  echo $pkgver > gcc/BASE-VER
-
-  # hack! - some configure tests for header files using "$CPP $CPPFLAGS"
-  sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure
-
-  mkdir "$srcdir"/build-{gcc,gcc-nano}
-}
-
-_build_gcc() {
-  "$srcdir"/$_basedir/configure \
-    --target=$_target \
-    --prefix=/usr \
-    --with-sysroot=/usr/$_target \
-    --with-native-system-header-dir=/include \
-    --libexecdir=/usr/lib \
-    --enable-languages=c,c++ \
-    --enable-plugins \
-    --disable-decimal-float \
-    --disable-libffi \
-    --disable-libgomp \
-    --disable-libmudflap \
-    --disable-libquadmath \
-    --disable-libssp \
-    --disable-libstdcxx-pch \
-    --disable-nls \
-    --disable-shared \
-    --disable-threads \
-    --disable-tls \
-    --with-gnu-as \
-    --with-gnu-ld \
-    --with-system-zlib \
-    --with-newlib \
-    --with-headers=/usr/$_target/include \
-    --with-python-dir=share/gcc-arm-none-eabi \
-    --with-gmp \
-    --with-mpfr \
-    --with-mpc \
-    --with-isl \
-    --with-libelf \
-    --enable-gnu-indirect-function \
-    --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' \
-    --with-pkgversion='Arch Repository' \
-    --with-bugurl='https://bugs.archlinux.org/' \
-    --with-multilib-list=rmprofile
-
-  make INHIBIT_LIBC_CFLAGS='-DUSE_TM_CLONE_REGISTRY=0'
-}
-
-build() {
-  cd "$srcdir"/build-gcc
-  export CFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections'
-  export CXXFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections'
-  _build_gcc
-
-  # Build libstdc++ without exceptions support (the 'nano' variant)
-  cd "$srcdir"/build-gcc-nano
-  export CFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections -fno-exceptions'
-  export CXXFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections -fno-exceptions'  
-  _build_gcc
-}
-
-package() {
-  cd "$srcdir"/build-gcc
-  make DESTDIR="$pkgdir" install -j1
-
-  cd "$srcdir"/build-gcc-nano
-  make DESTDIR="$pkgdir.nano" install -j1
-  # we need only libstdc nano files
-  multilibs=( $("$pkgdir"/usr/bin/$_target-gcc -print-multi-lib 2>/dev/null) )
-  for multilib in "${multilibs[@]}"; do
-    dir="${multilib%%;*}"
-    from_dir="$pkgdir".nano/usr/$_target/lib/"$dir"
-    to_dir="$pkgdir"/usr/$_target/lib/"$dir"
-    cp -f "$from_dir"/libstdc++.a "$to_dir"/libstdc++_nano.a
-    cp -f "$from_dir"/libsupc++.a "$to_dir"/libsupc++_nano.a
-  done
-
-  # strip target binaries
-  find "$pkgdir"/usr/lib/gcc/$_target/$pkgver "$pkgdir"/usr/$_target/lib -type f -and \( -name \*.a -or -name \*.o \) -exec $_target-objcopy -R .comment -R .note -R .debug_info -R .debug_aranges -R .debug_pubnames -R .debug_pubtypes -R .debug_abbrev -R .debug_line -R .debug_str -R .debug_ranges -R .debug_loc '{}' \;
-
-  # strip host binaries
-  find "$pkgdir"/usr/bin/ "$pkgdir"/usr/lib/gcc/$_target/$pkgver -type f -and \( -executable \) -exec strip '{}' \;
-
-  # Remove files that conflict with host gcc package
-  rm -r "$pkgdir"/usr/share/man/man7
-  rm -r "$pkgdir"/usr/share/info
-  rm "$pkgdir"/usr/lib/libcc1.*
-}

Copied: arm-none-eabi-gcc/repos/community-x86_64/PKGBUILD (from rev 1189493, arm-none-eabi-gcc/trunk/PKGBUILD)
===================================================================
--- PKGBUILD	                        (rev 0)
+++ PKGBUILD	2022-04-24 03:08:21 UTC (rev 1189494)
@@ -0,0 +1,124 @@
+# Maintainer: Anatol Pomozov <anatol.pomozov at gmail.com>
+# Contributor: Martin Schmölzer <mschmoelzer at gmail.com>
+
+_target=arm-none-eabi
+pkgname=$_target-gcc
+pkgver=11.3.0
+pkgrel=1
+#_snapshot=8-20180427
+pkgdesc='The GNU Compiler Collection - cross compiler for ARM EABI (bare-metal) target'
+arch=(x86_64)
+url='https://gcc.gnu.org/'
+license=(GPL LGPL FDL)
+depends=($_target-binutils zlib libmpc libisl zstd)
+makedepends=(gmp mpfr $_target-newlib)
+optdepends=('arm-none-eabi-newlib: Standard C library optimized for embedded systems')
+options=(!emptydirs !strip !lto)
+source=(https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz{,.sig})
+        #ftp://gcc.gnu.org/pub/gcc/snapshots/$_snapshot/gcc-$_snapshot.tar.xz
+sha256sums=('b47cf2818691f5b1e21df2bb38c795fac2cfbd640ede2d0a5e1c89e338a3ac39'
+            'SKIP')
+validpgpkeys=(33C235A34C46AA3FFB293709A328C3A2C3C45C06  # Jakub Jelinek <jakub at redhat.com>
+              D3A93CAD751C2AF4F8C7AD516C35B99309B5FA62  # Jakub Jelinek <jakub at redhat.com>
+              13975A70E63C361C73AE69EF6EEB81F8981C74C7) # Richard Guenther <richard.guenther at gmail.com>
+
+if [ -n "$_snapshot" ]; then
+  _basedir=gcc-$_snapshot
+else
+  _basedir=gcc-$pkgver
+fi
+
+prepare() {
+  cd $_basedir
+
+  echo $pkgver > gcc/BASE-VER
+
+  mkdir "$srcdir"/build-{gcc,gcc-nano}
+}
+
+_build_gcc() {
+  "$srcdir"/$_basedir/configure \
+    --target=$_target \
+    --prefix=/usr \
+    --with-sysroot=/usr/$_target \
+    --with-native-system-header-dir=/include \
+    --libexecdir=/usr/lib \
+    --enable-languages=c,c++ \
+    --enable-plugins \
+    --disable-decimal-float \
+    --disable-libffi \
+    --disable-libgomp \
+    --disable-libmudflap \
+    --disable-libquadmath \
+    --disable-libssp \
+    --disable-libstdcxx-pch \
+    --disable-nls \
+    --disable-shared \
+    --disable-threads \
+    --disable-tls \
+    --with-gnu-as \
+    --with-gnu-ld \
+    --with-system-zlib \
+    --with-newlib \
+    --with-headers=/usr/$_target/include \
+    --with-python-dir=share/gcc-arm-none-eabi \
+    --with-gmp \
+    --with-mpfr \
+    --with-mpc \
+    --with-isl \
+    --with-libelf \
+    --enable-gnu-indirect-function \
+    --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' \
+    --with-pkgversion='Arch Repository' \
+    --with-bugurl='https://bugs.archlinux.org/' \
+    --with-multilib-list=rmprofile
+
+  make INHIBIT_LIBC_CFLAGS='-DUSE_TM_CLONE_REGISTRY=0'
+}
+
+build() {
+  # Credits @allanmcrae
+  # https://github.com/allanmcrae/toolchain/blob/f18604d70c5933c31b51a320978711e4e6791cf1/gcc/PKGBUILD
+  # TODO: properly deal with the build issues resulting from this
+  CFLAGS=${CFLAGS/-Werror=format-security/}
+  CXXFLAGS=${CXXFLAGS/-Werror=format-security/}
+
+  cd "$srcdir"/build-gcc
+  export CFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections'
+  export CXXFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections'
+  _build_gcc
+
+  # Build libstdc++ without exceptions support (the 'nano' variant)
+  cd "$srcdir"/build-gcc-nano
+  export CFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections -fno-exceptions'
+  export CXXFLAGS_FOR_TARGET='-g -Os -ffunction-sections -fdata-sections -fno-exceptions'  
+  _build_gcc
+}
+
+package() {
+  cd "$srcdir"/build-gcc
+  make DESTDIR="$pkgdir" install -j1
+
+  cd "$srcdir"/build-gcc-nano
+  make DESTDIR="$pkgdir.nano" install -j1
+  # we need only libstdc nano files
+  multilibs=( $("$pkgdir"/usr/bin/$_target-gcc -print-multi-lib 2>/dev/null) )
+  for multilib in "${multilibs[@]}"; do
+    dir="${multilib%%;*}"
+    from_dir="$pkgdir".nano/usr/$_target/lib/"$dir"
+    to_dir="$pkgdir"/usr/$_target/lib/"$dir"
+    cp -f "$from_dir"/libstdc++.a "$to_dir"/libstdc++_nano.a
+    cp -f "$from_dir"/libsupc++.a "$to_dir"/libsupc++_nano.a
+  done
+
+  # strip target binaries
+  find "$pkgdir"/usr/lib/gcc/$_target/$pkgver "$pkgdir"/usr/$_target/lib -type f -and \( -name \*.a -or -name \*.o \) -exec $_target-objcopy -R .comment -R .note -R .debug_info -R .debug_aranges -R .debug_pubnames -R .debug_pubtypes -R .debug_abbrev -R .debug_line -R .debug_str -R .debug_ranges -R .debug_loc '{}' \;
+
+  # strip host binaries
+  find "$pkgdir"/usr/bin/ "$pkgdir"/usr/lib/gcc/$_target/$pkgver -type f -and \( -executable \) -exec strip '{}' \;
+
+  # Remove files that conflict with host gcc package
+  rm -r "$pkgdir"/usr/share/man/man7
+  rm -r "$pkgdir"/usr/share/info
+  rm "$pkgdir"/usr/lib/libcc1.*
+}



More information about the arch-commits mailing list