At the moment, binutil 2.40 is only available as .tar.bz2
[kernel-tools.git] / setup-toolchain.sh
index 8d00a65551d58cc4c4e793676f0502a370d11450..922a43ed4e348bf57a0b8377b185103d0b6d8d64 100755 (executable)
@@ -66,10 +66,10 @@ setup_keyring
 download_source () {
   # This handles the actual downloading the of the source code from
   # the GNU FTP mirrors along with invoking GPG for verification.
-  if [ ! -f "binutils-$binutils_version.tar.lz" ]; then
-    wget http://ftpmirror.gnu.org/gnu/binutils/binutils-$binutils_version.tar.lz
-    wget http://ftpmirror.gnu.org/gnu/binutils/binutils-$binutils_version.tar.lz.sig
-    gpg --no-default-keyring --keyring ./gnu-keyring.gpg --verify binutils-$binutils_version.tar.lz.sig
+  if [ ! -f "binutils-$binutils_version.tar.bz2" ]; then
+    wget http://ftpmirror.gnu.org/gnu/binutils/binutils-$binutils_version.tar.bz2
+    wget http://ftpmirror.gnu.org/gnu/binutils/binutils-$binutils_version.tar.bz2.sig
+    gpg --no-default-keyring --keyring ./gnu-keyring.gpg --verify binutils-$binutils_version.tar.bz2.sig
   fi
   if [ ! -f "gcc-$gcc_version.tar.xz" ]; then
     wget http://ftpmirror.gnu.org/gnu/gcc/gcc-$gcc_version/gcc-$gcc_version.tar.xz
@@ -98,7 +98,7 @@ setup_source () {
   # function extracts the tarballs and places things into the
   # appropriate locations as needed.
   if [ ! -d "binutils-$binutils_version" ]; then
-    tar xf binutils-$binutils_version.tar.lz
+    tar xf binutils-$binutils_version.tar.bz2
   fi
   if [ ! -d "gcc-$gcc_version" ]; then
     tar xf gcc-$gcc_version.tar.xz
@@ -189,10 +189,10 @@ do
   # these. These are just the defaults and are adjusted for specific
   # architectures as needed as the program runs.
   export gcc_version="12.2.0"
-  export binutils_version="2.39"
+  export binutils_version="2.40"
   export gmp_version="6.2.1"
-  export mpc_version="1.2.1"
-  export mpfr_version="4.1.0"
+  export mpc_version="1.3.1"
+  export mpfr_version="4.2.0"
   # The $toolchain_directory variable is used to store each
   # compiled toolchain, named after the associated GCC version when
   # the above versions are being used. The intention is to change
@@ -215,36 +215,6 @@ do
   # Now build some additional toolchains beyond the default ones. This
   # is because some older kernels needs older toolchain versions.
   case $target in
-    mipsel-linux)
-      # The 4.9 kernel series needs to be built with GCC 11.3
-      export gcc_version="11.3.0"
-      export toolchain_directory="toolchain-$gcc_version"
-      reset_path
-      set_path
-      reset_path
-      set_path
-      setup_directories
-      download_source
-      setup_source
-      build binutils
-      build gcc
-      reset_path
-    ;;
-    powerpc-linux)
-      # The 6.0 series needs to be build with binutils 2.38
-      export binutils_version="2.38"
-      export toolchain_directory="toolchain-$gcc_version-binutils-$binutils_version"
-      reset_path
-      set_path
-      reset_path
-      set_path
-      setup_directories
-      download_source
-      setup_source
-      build binutils
-      build gcc
-      reset_path
-    ;;
     powerpc64-linux)
       # The 5.10 needs to be build with GCC 11.3
       export gcc_version="11.3.0"
@@ -261,7 +231,7 @@ do
       reset_path
     ;;
     powerpc64le-linux)
-      # The 5.10 and 4.9 series needs to be build with GCC 11.3
+      # The 5.10 series needs to be build with GCC 11.3
       export gcc_version="11.3.0"
       export toolchain_directory="toolchain-$gcc_version"
       reset_path
@@ -292,7 +262,7 @@ do
       reset_path
     ;;
     s390x-linux)
-      # The 4.9, and 4.14 kernel series needs to be built with GCC 8.5
+      # The 4.14 kernel series needs to be built with GCC 8.5
       export gcc_version="8.5.0"
       export toolchain_directory="toolchain-$gcc_version"
       reset_path