summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authormuhviehstah2017-12-31 07:40:17 +0100
committermuhviehstah2017-12-31 07:40:17 +0100
commit489c248582e76176024cc5e7b76457bf2f5d7f74 (patch)
tree4b5715265936fb9ac7025fe5fb68c945bd2b2684
parent765375b8a758c3667deb4224ecb1369db636089f (diff)
downloadaur-489c248582e76176024cc5e7b76457bf2f5d7f74.tar.gz
new flags and patch
-rw-r--r--.SRCINFO17
-rw-r--r--0400-enable-with-multilib-list-for-arm.patch215
-rwxr-xr-xPKGBUILD37
3 files changed, 247 insertions, 22 deletions
diff --git a/.SRCINFO b/.SRCINFO
index b71faba45e4..b164e10cf4c 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = arm-none-eabi-gcc60-linaro
pkgdesc = The GNU Compiler Collection - cross compiler for ARM EABI (bare-metal) target.
- pkgver = 6.3_2017.06
+ pkgver = 6.4_2017.11
pkgrel = 1
url = https://releases.linaro.org/
arch = i686
@@ -8,30 +8,33 @@ pkgbase = arm-none-eabi-gcc60-linaro
groups = arm-none-eabi-toolchain
license = GPL
license = LGPL
+ makedepends = gcc-ada
+ makedepends = expect
makedepends = flex
makedepends = bison
- depends = arm-none-eabi-binutils>=2.26-1
+ depends = arm-none-eabi-linaro-binutils
+ depends = isl
+ depends = mpc
depends = gmp
depends = cloog
depends = arm-none-eabi-newlib-linaro-git
depends = mpfr
depends = libmpc
- provides = arm-none-eabi-gcc
- conflicts = arm-none-eabi-gcc
- conflicts = cross-arm-none-eabi-gcc
options = staticlibs
options = !libtool
options = !emptydirs
options = !strip
options = zipman
options = docs
- source = http://snapshots.linaro.org/components/toolchain/gcc-linaro/6.3-2017.06/gcc-linaro-snapshot-6.3-2017.06.tar.xz
+ source = http://snapshots.linaro.org/components/toolchain/gcc-linaro/6.4-2017.11/gcc-linaro-snapshot-6.4-2017.11.tar.xz
source = 0200-gcc-no-exceptions.patch
source = 0300-gcc-multilib2.patch
+ source = 0400-enable-with-multilib-list-for-arm.patch
source = 1039-libcc1-fix-libcc1-s-install-path-and-rpath.patch
- sha256sums = 173ed3dc04260875cfdad203906532521401a621670c58b7c191e14850a60824
+ sha256sums = bf2e8ad02196c2117d59aeebf3ba1b5b42beb4381c8bd0c27882e8c93d4a5edf
sha256sums = 76eab14830216c774291d2ac35d4b4690f3273aa8c630a2c1546f02538847d8a
sha256sums = c9b6bc1dd53f9b4b80f5fdacdef94c9fce0e516c16fb78063107b66ba2e9fdd1
+ sha256sums = 9447a8fd40d7c1e238b8e9790b739492de5feaa489d61f4ecdab863e5ea1975a
sha256sums = fa08269d6a748631b07b55a5fe00fa518b2f6e04356a3d6634c60f3c3ece3b07
pkgname = arm-none-eabi-gcc60-linaro
diff --git a/0400-enable-with-multilib-list-for-arm.patch b/0400-enable-with-multilib-list-for-arm.patch
new file mode 100644
index 00000000000..8825c30ca1b
--- /dev/null
+++ b/0400-enable-with-multilib-list-for-arm.patch
@@ -0,0 +1,215 @@
+commit 71587241301d28b68bbe2f41c5eb2856053c750c
+Author: Anatol Pomozov <anatol.pomozov@gmail.com>
+Date: Tue May 9 21:19:27 2017 -0700
+
+ ARM patch https://gcc.gnu.org/ml/gcc-patches/2012-05/msg00083/enable-with-multilib-list-for-arm.patch
+
+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
+index f675e073ecc..cced5329b47 100644
+--- a/gcc/Makefile.in
++++ b/gcc/Makefile.in
+@@ -558,6 +558,7 @@ lang_opt_files=@lang_opt_files@ $(srcdir)/c-family/c.opt $(srcdir)/common.opt
+ lang_specs_files=@lang_specs_files@
+ lang_tree_files=@lang_tree_files@
+ target_cpu_default=@target_cpu_default@
++with_multilib_list=@with_multilib_list@
+ OBJC_BOEHM_GC=@objc_boehm_gc@
+ extra_modes_file=@extra_modes_file@
+ extra_opt_files=@extra_opt_files@
+diff --git a/gcc/config.gcc b/gcc/config.gcc
+index b8bb4d65825..713e35b62af 100644
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -1140,7 +1140,7 @@ arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems* | arm*-*-fuchsia*)
+ case ${target} in
+ arm*-*-eabi*)
+ tm_file="$tm_file newlib-stdint.h"
+- tmake_file="${tmake_file} arm/t-bpabi"
++ tmake_file="${tmake_file} arm/t-bpabi arm/t-mlibs"
+ use_gcc_stdint=wrap
+ ;;
+ arm*-*-fuchsia*)
+@@ -3787,56 +3787,6 @@ case "${target}" in
+ echo "Switch \"--with-tune\" may not be used with switch \"--with-cpu\"" 1>&2
+ exit 1
+ fi
+-
+- # Add extra multilibs
+- if test "x$with_multilib_list" != x; then
+- arm_multilibs=`echo $with_multilib_list | sed -e 's/,/ /g'`
+- case ${arm_multilibs} in
+- aprofile)
+- # Note that arm/t-aprofile is a
+- # stand-alone make file fragment to be
+- # used only with itself. We do not
+- # specifically use the
+- # TM_MULTILIB_OPTION framework because
+- # this shorthand is more
+- # pragmatic.
+- tmake_profile_file="arm/t-aprofile"
+- ;;
+- rmprofile)
+- # Note that arm/t-rmprofile is a
+- # stand-alone make file fragment to be
+- # used only with itself. We do not
+- # specifically use the
+- # TM_MULTILIB_OPTION framework because
+- # this shorthand is more
+- # pragmatic.
+- tmake_profile_file="arm/t-rmprofile"
+- ;;
+- default)
+- ;;
+- *)
+- echo "Error: --with-multilib-list=${with_multilib_list} not supported." 1>&2
+- exit 1
+- ;;
+- esac
+-
+- if test "x${tmake_profile_file}" != x ; then
+- # arm/t-aprofile and arm/t-rmprofile are only
+- # designed to work without any with-cpu,
+- # with-arch, with-mode, with-fpu or with-float
+- # options.
+- if test "x$with_arch" != x \
+- || test "x$with_cpu" != x \
+- || test "x$with_float" != x \
+- || test "x$with_fpu" != x \
+- || test "x$with_mode" != x ; then
+- echo "Error: You cannot use any of --with-arch/cpu/fpu/float/mode with --with-multilib-list=${with_multilib_list}" 1>&2
+- exit 1
+- fi
+-
+- tmake_file="${tmake_file} ${tmake_profile_file}"
+- fi
+- fi
+ ;;
+
+ fr*-*-*linux*)
+diff --git a/gcc/config/arm/t-mlibs b/gcc/config/arm/t-mlibs
+new file mode 100644
+index 00000000000..5720cf7503d
+--- /dev/null
++++ b/gcc/config/arm/t-mlibs
+@@ -0,0 +1,89 @@
++# A set of predefined MULTILIB which can be used for different ARM targets.
++# Via the configure option --with-multilib-list, user can customize the
++# final MULTILIB implementation.
++
++comma := ,
++space :=
++space +=
++
++MULTILIB_OPTIONS = mthumb/marm
++MULTILIB_DIRNAMES = thumb arm
++MULTILIB_OPTIONS += march=armv6s-m/march=armv7-m/march=armv7e-m/march=armv7
++MULTILIB_DIRNAMES += armv6-m armv7-m armv7e-m armv7-ar
++MULTILIB_OPTIONS += mfloat-abi=softfp/mfloat-abi=hard
++MULTILIB_DIRNAMES += softfp fpu
++MULTILIB_OPTIONS += mfpu=fpv4-sp-d16/mfpu=vfpv3-d16
++MULTILIB_DIRNAMES += fpv4-sp-d16 vfpv3-d16
++
++MULTILIB_MATCHES = march?armv6s-m=mcpu?cortex-m0
++MULTILIB_MATCHES += march?armv6s-m=mcpu?cortex-m0plus
++MULTILIB_MATCHES += march?armv6s-m=mcpu?cortex-m1
++MULTILIB_MATCHES += march?armv6s-m=march?armv6-m
++MULTILIB_MATCHES += march?armv7-m=mcpu?cortex-m3
++MULTILIB_MATCHES += march?armv7e-m=mcpu?cortex-m4
++MULTILIB_MATCHES += march?armv7e-m=mcpu?cortex-m7
++MULTILIB_MATCHES += march?armv7=march?armv7-r
++MULTILIB_MATCHES += march?armv7=march?armv7-a
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-r4
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-r4f
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-r5
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-r7
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-a5
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-a7
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-a8
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-a9
++MULTILIB_MATCHES += march?armv7=mcpu?cortex-a15
++MULTILIB_MATCHES += mfpu?fpv4-sp-d16=mfpu?fpv5-sp-d16
++MULTILIB_MATCHES += mfpu?fpv4-sp-d16=mfpu?fpv5-d16
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?vfpv3
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?vfpv3-fp16
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?vfpv3-d16-fp16
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?vfpv3xd
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?vfpv3xd-fp16
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?vfpv4
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?vfpv4-d16
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?neon
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?neon-fp16
++MULTILIB_MATCHES += mfpu?vfpv3-d16=mfpu?neon-vfpv4
++
++MULTILIB_EXCEPTIONS =
++MULTILIB_REUSE =
++
++MULTILIB_REQUIRED = mthumb
++MULTILIB_REQUIRED += marm
++MULTILIB_REQUIRED += mfloat-abi=hard
++
++MULTILIB_OSDIRNAMES = mthumb=!thumb
++MULTILIB_OSDIRNAMES += marm=!arm
++MULTILIB_OSDIRNAMES += mfloat-abi.hard=!fpu
++
++ifneq (,$(findstring armv6-m,$(subst $(comma),$(space),$(with_multilib_list))))
++MULTILIB_REQUIRED += mthumb/march=armv6s-m
++MULTILIB_OSDIRNAMES += mthumb/march.armv6s-m=!armv6-m
++endif
++
++ifneq (,$(findstring armv7-m,$(subst $(comma),$(space),$(with_multilib_list))))
++MULTILIB_REQUIRED += mthumb/march=armv7-m
++MULTILIB_OSDIRNAMES += mthumb/march.armv7-m=!armv7-m
++endif
++
++ifneq (,$(findstring armv7e-m,$(subst $(comma),$(space),$(with_multilib_list))))
++MULTILIB_REQUIRED += mthumb/march=armv7e-m
++MULTILIB_REQUIRED += mthumb/march=armv7e-m/mfloat-abi=softfp/mfpu=fpv4-sp-d16
++MULTILIB_REQUIRED += mthumb/march=armv7e-m/mfloat-abi=hard/mfpu=fpv4-sp-d16
++MULTILIB_OSDIRNAMES += mthumb/march.armv7e-m=!armv7e-m
++MULTILIB_OSDIRNAMES += mthumb/march.armv7e-m/mfloat-abi.hard/mfpu.fpv4-sp-d16=!armv7e-m/fpu
++MULTILIB_OSDIRNAMES += mthumb/march.armv7e-m/mfloat-abi.softfp/mfpu.fpv4-sp-d16=!armv7e-m/softfp
++endif
++
++ifneq (,$(filter armv7 armv7-r armv7-a,$(subst $(comma),$(space),$(with_multilib_list))))
++MULTILIB_REQUIRED += mthumb/march=armv7
++MULTILIB_REQUIRED += mthumb/march=armv7/mfloat-abi=softfp/mfpu=vfpv3-d16
++MULTILIB_REQUIRED += mthumb/march=armv7/mfloat-abi=hard/mfpu=vfpv3-d16
++MULTILIB_OSDIRNAMES += mthumb/march.armv7=!armv7-ar/thumb
++MULTILIB_OSDIRNAMES += mthumb/march.armv7/mfloat-abi.hard/mfpu.vfpv3-d16=!armv7-ar/thumb/fpu
++MULTILIB_OSDIRNAMES += mthumb/march.armv7/mfloat-abi.softfp/mfpu.vfpv3-d16=!armv7-ar/thumb/softfp
++MULTILIB_REUSE += mthumb/march.armv7=marm/march.armv7
++MULTILIB_REUSE += mthumb/march.armv7/mfloat-abi.softfp/mfpu.vfpv3-d16=marm/march.armv7/mfloat-abi.softfp/mfpu.vfpv3-d16
++MULTILIB_REUSE += mthumb/march.armv7/mfloat-abi.hard/mfpu.vfpv3-d16=marm/march.armv7/mfloat-abi.hard/mfpu.vfpv3-d16
++endif
+diff --git a/gcc/configure b/gcc/configure
+index ea73b151a4e..c609f25e50c 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -772,6 +772,7 @@ SET_MAKE
+ accel_dir_suffix
+ real_target_noncanonical
+ enable_as_accelerator
++with_multilib_list
+ REPORT_BUGS_TEXI
+ REPORT_BUGS_TO
+ PKGVERSION
+@@ -7763,6 +7764,7 @@ else
+ fi
+
+
++
+ # -------------------------
+ # Checks for other programs
+ # -------------------------
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 9d4c792a33f..abd988eb113 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -1007,6 +1007,7 @@ AC_ARG_WITH(multilib-list,
+ [AS_HELP_STRING([--with-multilib-list], [select multilibs (AArch64, SH and x86-64 only)])],
+ :,
+ with_multilib_list=default)
++AC_SUBST(with_multilib_list)
+
+ # -------------------------
+ # Checks for other programs
diff --git a/PKGBUILD b/PKGBUILD
index 97401863b56..089053f080a 100755
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,35 +1,37 @@
-# Maintainer: Johnny Halfmoon <jhalfmoon@milksnot.com>
+# Maintainer: Timo Sarawinski <t.sarawinski@gmail.com>
# Latest sources are at http://snapshots.linaro.org/components/toolchain/gcc-linaro/
pkgname=arm-none-eabi-gcc60-linaro
-_relver=snapshot-6.3
-_relshortdate=17.06
+_relver=snapshot-6.4
+_relshortdate=17.11
_reldate=20${_relshortdate}
_relverdate=${_relver}-${_reldate}
# This is how I want to define the pkgver, but the AUR doesn't understand it, because multiple _ characters are not allowed
#pkgver=${_relver}_${_reldate//-/_}
-pkgver=6.3_2017.06
-_pkgver=6.3-2017.06
+pkgver=6.4_2017.11
+_pkgver=6.4-2017.11
pkgrel=1
pkgdesc="The GNU Compiler Collection - cross compiler for ARM EABI (bare-metal) target."
arch=(i686 x86_64)
url="https://releases.linaro.org/"
license=('GPL' 'LGPL')
groups=('arm-none-eabi-toolchain')
-depends=('arm-none-eabi-binutils>=2.26-1' 'gmp' 'cloog' 'arm-none-eabi-newlib-linaro-git' 'mpfr' 'libmpc')
-makedepends=('flex' 'bison')
-provides=('arm-none-eabi-gcc')
-conflicts=('arm-none-eabi-gcc' 'cross-arm-none-eabi-gcc')
+depends=('arm-none-eabi-linaro-binutils' 'isl' 'mpc' 'gmp' 'cloog' 'arm-none-eabi-newlib-linaro-git' 'mpfr' 'libmpc')
+makedepends=('gcc-ada' 'expect' 'flex' 'bison')
+#provides=('arm-none-eabi-gcc')
+#conflicts=('arm-none-eabi-gcc' 'cross-arm-none-eabi-gcc')
options=(staticlibs !libtool !emptydirs !strip zipman docs)
source=(http://snapshots.linaro.org/components/toolchain/gcc-linaro/${_pkgver}/gcc-linaro-${_relverdate}.tar.xz
0200-gcc-no-exceptions.patch
0300-gcc-multilib2.patch
+ 0400-enable-with-multilib-list-for-arm.patch
1039-libcc1-fix-libcc1-s-install-path-and-rpath.patch)
_basedir=gcc-linaro-${_relverdate}
-sha256sums=('173ed3dc04260875cfdad203906532521401a621670c58b7c191e14850a60824'
+sha256sums=('bf2e8ad02196c2117d59aeebf3ba1b5b42beb4381c8bd0c27882e8c93d4a5edf'
'76eab14830216c774291d2ac35d4b4690f3273aa8c630a2c1546f02538847d8a'
'c9b6bc1dd53f9b4b80f5fdacdef94c9fce0e516c16fb78063107b66ba2e9fdd1'
+ '9447a8fd40d7c1e238b8e9790b739492de5feaa489d61f4ecdab863e5ea1975a'
'fa08269d6a748631b07b55a5fe00fa518b2f6e04356a3d6634c60f3c3ece3b07')
build() {
@@ -50,27 +52,32 @@ cd ${srcdir}/${_basedir}
--target=arm-none-eabi\
--prefix=/usr \
--libexecdir=/usr/lib \
- --datarootdir=/usr/share/arm-none-eabi-gcc \
+ --datarootdir=/usr/share/arm-none-eabi-gcc-6 \
--enable-multilib \
--enable-languages=c,c++ \
--enable-interwork \
+ --program-suffix=-6 \
+ --enable-vtable-verify \
--with-newlib \
--with-gnu-as \
--with-gnu-ld \
--with-system-zlib \
--disable-nls \
- --disable-isl-version-check \
--disable-shared \
--enable-threads \
--enable-lto \
--disable-libssp \
--disable-libstdcxx-pch \
--disable-libstdc__-v3 \
- --enable-silent-rules
+ --disable-libmudflap \
+ --disable-libgomp \
+ --enable-gold \
+ --enable-silent-rules \
+ --with-headers=/usr/arm-none-eabi/include \
+ --disable-newlib-supplied-syscalls
make
}
-# --disable-libmudflap \
-# --disable-libgomp \
+
package() {
cd ${srcdir}/${_basedir}/build
make -j1 DESTDIR=${pkgdir} install