Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[aarch64] Fix for aarch64 builds. Contributes JB#36790
Fix isl configs, and aarch64 spec arch64.
Update linaro-gcc from 2014-01 to 2014-04
  • Loading branch information
Andrew Branson committed Nov 14, 2016
1 parent d830989 commit 025bf9c
Show file tree
Hide file tree
Showing 14 changed files with 907 additions and 201 deletions.
24 changes: 14 additions & 10 deletions cross-aarch64-gcc.spec
Expand Up @@ -86,7 +86,7 @@ BuildRequires: %{cross_deps}
%define crossextraconfig --disable-libstdcxx-pch
%endif
%if "%{crossarch}" == "aarch64"
%define crossextraconfig --disable-libstdcxx-pch
%define crossextraconfig --with-arch=armv8-a --disable-libstdcxx-pch
%endif

# single target atm.
Expand Down Expand Up @@ -144,7 +144,7 @@ Release: %{gcc_release}
License: GPLv3+, GPLv3+ with exceptions and GPLv2+ with exceptions
Group: Development/Languages
URL: http://launchpad.net/gcc-linaro
Source0: https://launchpad.net/gcc-linaro/4.8/4.8-2014.01/+download/gcc-linaro-4.8-2014.01.tar.xz
Source0: https://launchpad.net/gcc-linaro/4.8/4.8-2014.04/+download/gcc-linaro-4.8-2014.04.tar.xz
%global isl_version 0.11.1
Source1: ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.11.1.tar.bz2
%global cloog_version 0.18.1
Expand Down Expand Up @@ -215,7 +215,7 @@ Patch1100: isl-%{isl_version}-aarch64-config.patch
Patch9999: gcc44-ARM-boehm-gc-stack-qemu.patch

#We need -gnueabi indicator for ARM
%ifnarch %{arm}
%ifnarch %{arm} aarch64
%global _gnu %{nil}
%endif
%global gcc_target_platform %{_target_platform}
Expand Down Expand Up @@ -552,7 +552,7 @@ for compiling GCC plugins. The GCC plugin ABI is currently
not stable, so plugins must be rebuilt any time GCC is updated.

%prep
%setup -q -n gcc-linaro-4.8-2014.01 -a 1 -a 2
%setup -q -n gcc-linaro-4.8-2014.04 -a 1 -a 2
%patch0 -p0 -b .hack~
%patch1 -p0 -b .java-nomulti~
%patch3 -p0 -b .rh330771~
Expand All @@ -569,7 +569,7 @@ not stable, so plugins must be rebuilt any time GCC is updated.
%endif
%patch20 -p1

%ifarch %arm
%ifarch %arm aarch64
%patch42 -p1
%endif
%patch44 -p1
Expand Down Expand Up @@ -673,7 +673,7 @@ esac
# export OPT_FLAGS="$OPT_FLAGS --param ggc-min-expand=0 --param ggc-min-heapsize=65536"
%endif

%ifarch %arm
%ifarch %arm aarch64
# gcc 45 fails to bootstrap itself otherwise on insn-attrtab.o
# issue is bad interaction between ggc and qemu
# Enable this only if --enable-bootstrap is active for QEMU --cvm
Expand Down Expand Up @@ -703,6 +703,10 @@ esac
%ifarch armv7tnhl
%define ARM_EXTRA_CONFIGURE --disable-libstdcxx-pch --with-float=hard --with-fpu=neon --with-arch=armv7-a --with-mode=thumb
%endif
# aarch64
%ifarch aarch64
%define ARM_EXTRA_CONFIGURE --disable-libstdcxx-pch --with-arch=armv8-a
%endif
%endif

#export OPT_FLAGS=`echo "$OPT_FLAGS" | sed -e "s/-O2/-O2 -fkeep-inline-functions/g"`
Expand Down Expand Up @@ -747,7 +751,7 @@ CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`"
--disable-libstdcxx-pch \
--with-arch=mips32 \
%endif
%ifarch %{arm}
%ifarch %{arm} aarch64
%ARM_EXTRA_CONFIGURE \
--disable-sjlj-exceptions \
%endif
Expand Down Expand Up @@ -1289,7 +1293,7 @@ fi
%{_prefix}/bin/gcc-ar
%{_prefix}/bin/gcc-nm
%{_prefix}/bin/gcc-ranlib
%ifnarch %{arm} mipsel
%ifnarch %{arm} aarch64 mipsel
%{_prefix}/bin/%{gcc_target_platform}-gcc
%{_prefix}/bin/%{gcc_target_platform}-gcc-ar
%{_prefix}/bin/%{gcc_target_platform}-gcc-nm
Expand Down Expand Up @@ -1447,13 +1451,13 @@ fi
%doc gcc/COPYING.LIB

# For ARM port
%ifarch %{arm} mipsel
%ifarch %{arm} aarch64 mipsel
%{_prefix}/%{_lib}/libssp*
%endif

%files c++
%defattr(-,root,root,-)
%ifnarch %{arm} mipsel
%ifnarch %{arm} aarch64 mipsel
%{_prefix}/bin/%{gcc_target_platform}-*++
%endif
%{_prefix}/bin/g++
Expand Down
24 changes: 14 additions & 10 deletions cross-armv5tel-gcc.spec
Expand Up @@ -86,7 +86,7 @@ BuildRequires: %{cross_deps}
%define crossextraconfig --disable-libstdcxx-pch
%endif
%if "%{crossarch}" == "aarch64"
%define crossextraconfig --disable-libstdcxx-pch
%define crossextraconfig --with-arch=armv8-a --disable-libstdcxx-pch
%endif

# single target atm.
Expand Down Expand Up @@ -144,7 +144,7 @@ Release: %{gcc_release}
License: GPLv3+, GPLv3+ with exceptions and GPLv2+ with exceptions
Group: Development/Languages
URL: http://launchpad.net/gcc-linaro
Source0: https://launchpad.net/gcc-linaro/4.8/4.8-2014.01/+download/gcc-linaro-4.8-2014.01.tar.xz
Source0: https://launchpad.net/gcc-linaro/4.8/4.8-2014.04/+download/gcc-linaro-4.8-2014.04.tar.xz
%global isl_version 0.11.1
Source1: ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.11.1.tar.bz2
%global cloog_version 0.18.1
Expand Down Expand Up @@ -215,7 +215,7 @@ Patch1100: isl-%{isl_version}-aarch64-config.patch
Patch9999: gcc44-ARM-boehm-gc-stack-qemu.patch

#We need -gnueabi indicator for ARM
%ifnarch %{arm}
%ifnarch %{arm} aarch64
%global _gnu %{nil}
%endif
%global gcc_target_platform %{_target_platform}
Expand Down Expand Up @@ -552,7 +552,7 @@ for compiling GCC plugins. The GCC plugin ABI is currently
not stable, so plugins must be rebuilt any time GCC is updated.

%prep
%setup -q -n gcc-linaro-4.8-2014.01 -a 1 -a 2
%setup -q -n gcc-linaro-4.8-2014.04 -a 1 -a 2
%patch0 -p0 -b .hack~
%patch1 -p0 -b .java-nomulti~
%patch3 -p0 -b .rh330771~
Expand All @@ -569,7 +569,7 @@ not stable, so plugins must be rebuilt any time GCC is updated.
%endif
%patch20 -p1

%ifarch %arm
%ifarch %arm aarch64
%patch42 -p1
%endif
%patch44 -p1
Expand Down Expand Up @@ -673,7 +673,7 @@ esac
# export OPT_FLAGS="$OPT_FLAGS --param ggc-min-expand=0 --param ggc-min-heapsize=65536"
%endif

%ifarch %arm
%ifarch %arm aarch64
# gcc 45 fails to bootstrap itself otherwise on insn-attrtab.o
# issue is bad interaction between ggc and qemu
# Enable this only if --enable-bootstrap is active for QEMU --cvm
Expand Down Expand Up @@ -703,6 +703,10 @@ esac
%ifarch armv7tnhl
%define ARM_EXTRA_CONFIGURE --disable-libstdcxx-pch --with-float=hard --with-fpu=neon --with-arch=armv7-a --with-mode=thumb
%endif
# aarch64
%ifarch aarch64
%define ARM_EXTRA_CONFIGURE --disable-libstdcxx-pch --with-arch=armv8-a
%endif
%endif

#export OPT_FLAGS=`echo "$OPT_FLAGS" | sed -e "s/-O2/-O2 -fkeep-inline-functions/g"`
Expand Down Expand Up @@ -747,7 +751,7 @@ CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`"
--disable-libstdcxx-pch \
--with-arch=mips32 \
%endif
%ifarch %{arm}
%ifarch %{arm} aarch64
%ARM_EXTRA_CONFIGURE \
--disable-sjlj-exceptions \
%endif
Expand Down Expand Up @@ -1289,7 +1293,7 @@ fi
%{_prefix}/bin/gcc-ar
%{_prefix}/bin/gcc-nm
%{_prefix}/bin/gcc-ranlib
%ifnarch %{arm} mipsel
%ifnarch %{arm} aarch64 mipsel
%{_prefix}/bin/%{gcc_target_platform}-gcc
%{_prefix}/bin/%{gcc_target_platform}-gcc-ar
%{_prefix}/bin/%{gcc_target_platform}-gcc-nm
Expand Down Expand Up @@ -1447,13 +1451,13 @@ fi
%doc gcc/COPYING.LIB

# For ARM port
%ifarch %{arm} mipsel
%ifarch %{arm} aarch64 mipsel
%{_prefix}/%{_lib}/libssp*
%endif

%files c++
%defattr(-,root,root,-)
%ifnarch %{arm} mipsel
%ifnarch %{arm} aarch64 mipsel
%{_prefix}/bin/%{gcc_target_platform}-*++
%endif
%{_prefix}/bin/g++
Expand Down
24 changes: 14 additions & 10 deletions cross-armv6l-gcc.spec
Expand Up @@ -86,7 +86,7 @@ BuildRequires: %{cross_deps}
%define crossextraconfig --disable-libstdcxx-pch
%endif
%if "%{crossarch}" == "aarch64"
%define crossextraconfig --disable-libstdcxx-pch
%define crossextraconfig --with-arch=armv8-a --disable-libstdcxx-pch
%endif

# single target atm.
Expand Down Expand Up @@ -144,7 +144,7 @@ Release: %{gcc_release}
License: GPLv3+, GPLv3+ with exceptions and GPLv2+ with exceptions
Group: Development/Languages
URL: http://launchpad.net/gcc-linaro
Source0: https://launchpad.net/gcc-linaro/4.8/4.8-2014.01/+download/gcc-linaro-4.8-2014.01.tar.xz
Source0: https://launchpad.net/gcc-linaro/4.8/4.8-2014.04/+download/gcc-linaro-4.8-2014.04.tar.xz
%global isl_version 0.11.1
Source1: ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.11.1.tar.bz2
%global cloog_version 0.18.1
Expand Down Expand Up @@ -215,7 +215,7 @@ Patch1100: isl-%{isl_version}-aarch64-config.patch
Patch9999: gcc44-ARM-boehm-gc-stack-qemu.patch

#We need -gnueabi indicator for ARM
%ifnarch %{arm}
%ifnarch %{arm} aarch64
%global _gnu %{nil}
%endif
%global gcc_target_platform %{_target_platform}
Expand Down Expand Up @@ -552,7 +552,7 @@ for compiling GCC plugins. The GCC plugin ABI is currently
not stable, so plugins must be rebuilt any time GCC is updated.

%prep
%setup -q -n gcc-linaro-4.8-2014.01 -a 1 -a 2
%setup -q -n gcc-linaro-4.8-2014.04 -a 1 -a 2
%patch0 -p0 -b .hack~
%patch1 -p0 -b .java-nomulti~
%patch3 -p0 -b .rh330771~
Expand All @@ -569,7 +569,7 @@ not stable, so plugins must be rebuilt any time GCC is updated.
%endif
%patch20 -p1

%ifarch %arm
%ifarch %arm aarch64
%patch42 -p1
%endif
%patch44 -p1
Expand Down Expand Up @@ -673,7 +673,7 @@ esac
# export OPT_FLAGS="$OPT_FLAGS --param ggc-min-expand=0 --param ggc-min-heapsize=65536"
%endif

%ifarch %arm
%ifarch %arm aarch64
# gcc 45 fails to bootstrap itself otherwise on insn-attrtab.o
# issue is bad interaction between ggc and qemu
# Enable this only if --enable-bootstrap is active for QEMU --cvm
Expand Down Expand Up @@ -703,6 +703,10 @@ esac
%ifarch armv7tnhl
%define ARM_EXTRA_CONFIGURE --disable-libstdcxx-pch --with-float=hard --with-fpu=neon --with-arch=armv7-a --with-mode=thumb
%endif
# aarch64
%ifarch aarch64
%define ARM_EXTRA_CONFIGURE --disable-libstdcxx-pch --with-arch=armv8-a
%endif
%endif

#export OPT_FLAGS=`echo "$OPT_FLAGS" | sed -e "s/-O2/-O2 -fkeep-inline-functions/g"`
Expand Down Expand Up @@ -747,7 +751,7 @@ CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`"
--disable-libstdcxx-pch \
--with-arch=mips32 \
%endif
%ifarch %{arm}
%ifarch %{arm} aarch64
%ARM_EXTRA_CONFIGURE \
--disable-sjlj-exceptions \
%endif
Expand Down Expand Up @@ -1289,7 +1293,7 @@ fi
%{_prefix}/bin/gcc-ar
%{_prefix}/bin/gcc-nm
%{_prefix}/bin/gcc-ranlib
%ifnarch %{arm} mipsel
%ifnarch %{arm} aarch64 mipsel
%{_prefix}/bin/%{gcc_target_platform}-gcc
%{_prefix}/bin/%{gcc_target_platform}-gcc-ar
%{_prefix}/bin/%{gcc_target_platform}-gcc-nm
Expand Down Expand Up @@ -1447,13 +1451,13 @@ fi
%doc gcc/COPYING.LIB

# For ARM port
%ifarch %{arm} mipsel
%ifarch %{arm} aarch64 mipsel
%{_prefix}/%{_lib}/libssp*
%endif

%files c++
%defattr(-,root,root,-)
%ifnarch %{arm} mipsel
%ifnarch %{arm} aarch64 mipsel
%{_prefix}/bin/%{gcc_target_platform}-*++
%endif
%{_prefix}/bin/g++
Expand Down
24 changes: 14 additions & 10 deletions cross-armv7hl-gcc.spec
Expand Up @@ -86,7 +86,7 @@ BuildRequires: %{cross_deps}
%define crossextraconfig --disable-libstdcxx-pch
%endif
%if "%{crossarch}" == "aarch64"
%define crossextraconfig --disable-libstdcxx-pch
%define crossextraconfig --with-arch=armv8-a --disable-libstdcxx-pch
%endif

# single target atm.
Expand Down Expand Up @@ -144,7 +144,7 @@ Release: %{gcc_release}
License: GPLv3+, GPLv3+ with exceptions and GPLv2+ with exceptions
Group: Development/Languages
URL: http://launchpad.net/gcc-linaro
Source0: https://launchpad.net/gcc-linaro/4.8/4.8-2014.01/+download/gcc-linaro-4.8-2014.01.tar.xz
Source0: https://launchpad.net/gcc-linaro/4.8/4.8-2014.04/+download/gcc-linaro-4.8-2014.04.tar.xz
%global isl_version 0.11.1
Source1: ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.11.1.tar.bz2
%global cloog_version 0.18.1
Expand Down Expand Up @@ -215,7 +215,7 @@ Patch1100: isl-%{isl_version}-aarch64-config.patch
Patch9999: gcc44-ARM-boehm-gc-stack-qemu.patch

#We need -gnueabi indicator for ARM
%ifnarch %{arm}
%ifnarch %{arm} aarch64
%global _gnu %{nil}
%endif
%global gcc_target_platform %{_target_platform}
Expand Down Expand Up @@ -552,7 +552,7 @@ for compiling GCC plugins. The GCC plugin ABI is currently
not stable, so plugins must be rebuilt any time GCC is updated.

%prep
%setup -q -n gcc-linaro-4.8-2014.01 -a 1 -a 2
%setup -q -n gcc-linaro-4.8-2014.04 -a 1 -a 2
%patch0 -p0 -b .hack~
%patch1 -p0 -b .java-nomulti~
%patch3 -p0 -b .rh330771~
Expand All @@ -569,7 +569,7 @@ not stable, so plugins must be rebuilt any time GCC is updated.
%endif
%patch20 -p1

%ifarch %arm
%ifarch %arm aarch64
%patch42 -p1
%endif
%patch44 -p1
Expand Down Expand Up @@ -673,7 +673,7 @@ esac
# export OPT_FLAGS="$OPT_FLAGS --param ggc-min-expand=0 --param ggc-min-heapsize=65536"
%endif

%ifarch %arm
%ifarch %arm aarch64
# gcc 45 fails to bootstrap itself otherwise on insn-attrtab.o
# issue is bad interaction between ggc and qemu
# Enable this only if --enable-bootstrap is active for QEMU --cvm
Expand Down Expand Up @@ -703,6 +703,10 @@ esac
%ifarch armv7tnhl
%define ARM_EXTRA_CONFIGURE --disable-libstdcxx-pch --with-float=hard --with-fpu=neon --with-arch=armv7-a --with-mode=thumb
%endif
# aarch64
%ifarch aarch64
%define ARM_EXTRA_CONFIGURE --disable-libstdcxx-pch --with-arch=armv8-a
%endif
%endif

#export OPT_FLAGS=`echo "$OPT_FLAGS" | sed -e "s/-O2/-O2 -fkeep-inline-functions/g"`
Expand Down Expand Up @@ -747,7 +751,7 @@ CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`"
--disable-libstdcxx-pch \
--with-arch=mips32 \
%endif
%ifarch %{arm}
%ifarch %{arm} aarch64
%ARM_EXTRA_CONFIGURE \
--disable-sjlj-exceptions \
%endif
Expand Down Expand Up @@ -1289,7 +1293,7 @@ fi
%{_prefix}/bin/gcc-ar
%{_prefix}/bin/gcc-nm
%{_prefix}/bin/gcc-ranlib
%ifnarch %{arm} mipsel
%ifnarch %{arm} aarch64 mipsel
%{_prefix}/bin/%{gcc_target_platform}-gcc
%{_prefix}/bin/%{gcc_target_platform}-gcc-ar
%{_prefix}/bin/%{gcc_target_platform}-gcc-nm
Expand Down Expand Up @@ -1447,13 +1451,13 @@ fi
%doc gcc/COPYING.LIB

# For ARM port
%ifarch %{arm} mipsel
%ifarch %{arm} aarch64 mipsel
%{_prefix}/%{_lib}/libssp*
%endif

%files c++
%defattr(-,root,root,-)
%ifnarch %{arm} mipsel
%ifnarch %{arm} aarch64 mipsel
%{_prefix}/bin/%{gcc_target_platform}-*++
%endif
%{_prefix}/bin/g++
Expand Down

0 comments on commit 025bf9c

Please sign in to comment.