From fa7ae387a0aab9fe8fe9c9dabf6500076af83673 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rcio=20Alexandre=20Silva=20Delgado?= Date: Sat, 13 Jul 2013 20:42:36 -0300 Subject: cross-binutils: fixing architectures --- ~coadde/cross-binutils/PKGBUILD | 207 +++++++++++++++++++++------------------- 1 file changed, 107 insertions(+), 100 deletions(-) (limited to '~coadde/cross-binutils/PKGBUILD') diff --git a/~coadde/cross-binutils/PKGBUILD b/~coadde/cross-binutils/PKGBUILD index 5f322af4f..cb84cae3a 100644 --- a/~coadde/cross-binutils/PKGBUILD +++ b/~coadde/cross-binutils/PKGBUILD @@ -3,34 +3,57 @@ # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc -#+-------------------+-----------------------+-------------+------------------------------+ -#| _CARCH | _os (GNU/Linux-libre) | _os (GNU) | _os (GNU/Linux-libre uClibc) | -#+-------------------+-----------------------+-------------+------------------------------+ -#| mips64el | unknown-linux-gnu | - | unknown-uclinux-gnu | -#| x86_64 | unknown-linux-gnu | unknown-gnu | unknown-uclinux-gnu | -#| i[65]86 | pc-linux-gnu | pc-gnu | unknown-uclinux-gnu | -#| aarch64{,_be} | unknown-linux-gnu | - | unknown-uclinux-gnu | -#| arm{,v[765]}{,eb} | unknown-linux-gnueabi | - | unknown-uclinux-gnueabi | -#| sparc64 | unknown-linux-gnu | - | - | -#| ia64 | unknown-linux-gnu | - | - | -#+-------------------+-----------------------+-------------+------------------------------+ - -#+----------------+--------------------+ -#| _CARCH | _os (ELF/EABI) | -#+----------------+--------------------+ -#| xtensa | unknown-elf | -#| mips64{,el} | unknown-elf | -#| mips32{,el} | unknown-elf | -#| x86_64 | unknown-elf | -#| i[653]86 | unknown-elf | -#| aarch64{,_be} | unknown-elf | -#| arm{,eb} | unknown-eabi | -#| powerpc64{,le} | unknown-{elf,eabi} | -#| powerpc32{,le} | unknown-{elf,eabi} | -#| sh64{,l} | unknown-elf | -#| sh{,l} | unknown-elf | -#| m68k | unknown-elf | -#+----------------+--------------------+ +# +-------------+-------------+-----------------------------------------------------------+-----------+---------+ +# | -march | CARCH | CHOST (_target) | Multilib | QEMU | +# +-------------+-------------+-------------+----------+----------------------------------+-----------+---------+ +# | _arch | _CARCH | _host | _machine | _system (GNU/*) | _multilib | - | +# +-------------+-------------+-------------+----------+----------------------------------+-----------+---------+ +# | mips64el | mips64el | mips64el | unknown | linux-gnu|elf | yes | sys | +# | mips64 | mips64 | mips64 | unknown | linux-gnu|elf | yes | sys | +# | * | mipsel | mipsel | unknown | elf | no | bin/sys | +# | * | mips | mips | unknown | elf | no | bin/sys | +# | x86_64 | x86_64 | x86_64 | unknown | linux-gnu|gnu<|elf | yes | bin/sys | +# | i[5-7]86 | i[5-7]86 | i[5-7]86 | pc | linux-gnu|gnu|elf | no | bin/sys | +# | * | i486 | i486 | unknown | elf | no | bin/sys | +# | * | i386 | i386 | unknown | elf | no | bin/sys | +# | armv8-a | aarch64 | aarch64 | unknown | linux-gnu|elf | yes | - | +# | armv8-a | aarch64_be | aarch64_be | unknown | linux-gnu|elf | yes | - | +# | armv7-a | armv7h | armv7l | unknown | linux-gnueabihf | no | bin/sys | +# | armv6 | armv6h | armv6l | unknown | linux-gnueabihf | no | bin/sys | +# | armv5te | arm | armv5tel | unknown | linux-gnueabi | no | bin/sys | +# | * | arm | arm | unknown | eabi | no | bin/sys | +# | arm | armeb | armeb | unknown | linux-gnueabi|eabi | no | bin | +# | sparc64 | sparc64 | sparc64 | unknown | linux-gnu | yes | bin/sys | +# | sparc | sparc | sparc | unknown | linux-gnu | no | bin/sys | +# | - | ia64 | ia64 | unknown | linux-gnu | yes | - | +# | - | s390 | s390 | unknown | linux-gnu | no | - | +# | - | s390x | s390x | unknown | linux-gnu | no | bin/sys | +# | powerpc64 | powerpc64 | powerpc64 | unknown | linux-gnu|linux-gnueabi|elf|eabi | yes | bin/sys | +# | powerpc64le | powerpc64le | powerpc64le | unknown | linux-gnu|linux-gnueabi|elf|eabi | yes | - | +# | powerpc | powerpc | powerpc | unknown | linux-gnu|linux-gnueabi|elf|eabi | no | bin/sys | +# | powerpcle | powerpcle | powerpcle | unknown | linux-gnu|linux-gnueabi|elf|eabi | no | - | +# | - | spu | spu | unknown | elf | no | - | +# | - | sh64 | sh64 | unknown | linux-gnu|elf | yes | - | +# | - | sh64l | sh64l | unknown | linux-gnu|elf | yes | - | +# | - | sh4 | sh4 | unknown | linux-gnu | no | bin/sys | +# | - | sh4l | sh4l | unknown | linux-gnu | no | bin/sys | +# | - | sh | sh | unknown | elf | no | - @ | +# | - | shl | shl | unknown | elf | no | - @ | +# | - | xtensa | xtensa | unknown | elf | no | sys | +# | * | m68k | m68k | unknown | elf | no | bin/sys | +# | - | lm32 | lm32 | unknown | linux-gnu|elf | no | sys | +# | - | or32 | or32 | unknown | linux-gnu<|elf< | no | bin/sys | +# +-------------+-------------+-------------+----------+----------------------------------+-----------+---------+ + +# * : Any supported by architecture. +# - : None. +# @ : bin/sys (Only sh4 and sh4l support) +# < : I will support it. (future) + +_carch_list=('mips64el' 'mips64' 'x86_64' 'i786' 'i686' 'i586' 'i486' 'i386' 'aarch64' 'aarch64_be' + 'armv7l' 'armv6l' 'armv5tel' 'armeb' 'sparc64' 'sparc' 'ia64' 's390' 's390x' + 'powerpc64' 'powerpc64le' 'powerpc' 'powerpcle' 'sh64' 'sh64l' 'sh4' 'sh4l' 'lm32' 'or32') +_multilib_list=('mips64el' 'mips64' 'x86_64' 'aarch64' 'aarch64_be' 'sparc64' 'ia64' 'powerpc64' 'powerpc64le''sh64' 'sh64l') #--------------------------------------------------------------------------------------------------------------------------------------------- @@ -38,8 +61,9 @@ _pkgname="binutils" ### Base FLAGS: ### _CARCH="x86_64" -_os="unknown-linux-gnu" -_target="${_CARCH}-${_os}" +_host="${_CARCH}" +_machine="unknown" +_system="linux-gnu" _multilib="no" ### Patch FLAGS: ### @@ -47,30 +71,16 @@ _patch_ath9k_htc_fw="no" #--------------------------------------------------------------------------------------------------------------------------------------------- +_target="${_host}-${_machine}-${_system}" + # For "_multilib" [[ ${_multilib} == "yes" ]] && { _multilib_name="-multilib" _multilib_desc=" for multilib" } -[[ ${_CARCH} == i686 || - ${_CARCH} == i586 || - ${_CARCH} == i386 || - ${_CARCH} == xtensa || - ${_CARCH} == mips32 || - ${_CARCH} == mips32el || - ${_CARCH} == arm || - ${_CARCH} == armeb || - ${_CARCH} == armv7 || - ${_CARCH} == armv7eb || - ${_CARCH} == armv6 || - ${_CARCH} == armv6eb || - ${_CARCH} == armv5 || - ${_CARCH} == armv5eb || - ${_CARCH} == powerpc32 || - ${_CARCH} == powerpc32le || - ${_CARCH} == sh || - ${_CARCH} == shl || - ${_CARCH} == m68k ]] && _multilib="no" +for _arch_multilib in ${_multilib_list[@]}; do + [[ ${_CARCH} != ${_arch_multilib} ]] && _multilib="no" +done # For "_patch_ath9k_htc_fw" [[ ${_patch_ath9k_htc_fw} == "yes" ]] && { @@ -88,7 +98,7 @@ pkgname=( ) pkgver=2.23.2 pkgrel=2 -arch=('i686' 'x86_64' 'mips64el') +arch=("${_carch_list[@]}") url="http://www.gnu.org/software/${_pkgname}/" license=('GPL2') groups=('cross-devel') @@ -132,16 +142,13 @@ build() { cd ${srcdir}/${_pkgname}-build [[ $CARCH != ${_CARCH} ]] && _TARGET="--target=${_target}" - if [[ $CARCH == x86_64 || - $CARCH == mips64el || - $CARCH == aarch64 || - $CARCH == aarch64_be || - $CARCH == sparc64 || - $CARCH == ia64 ]]; then - _LIB_PATH="--with-lib-path=/usr/lib:/usr/lib32:/usr/local/lib:/usr/local/lib32:/usr/${_target}/lib:/usr/${_target}/lib32" - else - _LIB_PATH="--with-lib-path=/usr/lib:/usr/local/lib:/usr/${_target}/lib" - fi + for _arch_multilib2 in ${_multilib_list[@]}; do + if [[ ${_CARCH} == ${_arch_multilib2} ]]; then + _LIB_PATH="--with-lib-path=/usr/lib:/usr/lib32:/usr/local/lib:/usr/local/lib32:/usr/${_target}/lib:/usr/${_target}/lib32" + else + _LIB_PATH="--with-lib-path=/usr/lib:/usr/local/lib:/usr/${_target}/lib" + fi + done if [[ ${_multilib} == "yes" ]]; then _MULTILIB='--enable-multilib' @@ -248,69 +255,64 @@ _target-binutils() { #--------------------------------------------------------------------------------------------------------------------------------------------- -# GNU/Linux-libre with GNU C Library (glibc) +# GNU/Linux-libre package_mips64el-unknown-linux-gnu-binutils() { _target-binutils; } package_mips64el-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_mips64-unknown-linux-gnu-binutils() { _target-binutils; } +package_mips64-unknown-linux-gnu-binutils-multilib() { _target-binutils; } package_x86_64-unknown-linux-gnu-binutils() { _target-binutils; } package_x86_64-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_i786-pc-linux-gnu-binutils() { _target-binutils; } package_i686-pc-linux-gnu-binutils() { _target-binutils; } package_i586-pc-linux-gnu-binutils() { _target-binutils; } package_aarch64-unknown-linux-gnu-binutils() { _target-binutils; } package_aarch64-unknown-linux-gnu-binutils-multilib() { _target-binutils; } package_aarch64_be-unknown-linux-gnu-binutils() { _target-binutils; } package_aarch64_be-unknown-linux-gnu-binutils-multilib() { _target-binutils; } -package_arm-unknown-linux-gnueabi-binutils() { _target-binutils; } +package_arm7l-unknown-linux-gnueabi-binutils() { _target-binutils; } +package_arm6l-unknown-linux-gnueabi-binutils() { _target-binutils; } +package_arm5tel-unknown-linux-gnueabi-binutils() { _target-binutils; } package_armeb-unknown-linux-gnueabi-binutils() { _target-binutils; } -package_armv7-unknown-linux-gnueabi-binutils() { _target-binutils; } -package_armv7eb-unknown-linux-gnueabi-binutils() { _target-binutils; } -package_armv6-unknown-linux-gnueabi-binutils() { _target-binutils; } -package_armv6eb-unknown-linux-gnueabi-binutils() { _target-binutils; } -package_armv5-unknown-linux-gnueabi-binutils() { _target-binutils; } -package_armv5eb-unknown-linux-gnueabi-binutils() { _target-binutils; } package_sparc64-unknown-linux-gnu-binutils() { _target-binutils; } package_sparc64-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_sparc-unknown-linux-gnu-binutils() { _target-binutils; } package_ia64-unknown-linux-gnu-binutils() { _target-binutils; } package_ia64-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_s390-unknown-linux-gnu-binutils() { _target-binutils; } +package_s390x-unknown-linux-gnu-binutils() { _target-binutils; } +package_sparc64-unknown-linux-gnu-binutils() { _target-binutils; } +package_sparc64-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_powerpc64-unknown-linux-gnu-binutils() { _target-binutils; } +package_powerpc64-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_powerpc64le-unknown-linux-gnu-binutils() { _target-binutils; } +package_powerpc64le-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_powerpc-unknown-linux-gnu-binutils() { _target-binutils; } +package_powerpcle-unknown-linux-gnu-binutils() { _target-binutils; } +package_sh64-unknown-linux-gnu-binutils() { _target-binutils; } +package_sh64-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_sh64l-unknown-linux-gnu-binutils() { _target-binutils; } +package_sh64l-unknown-linux-gnu-binutils-multilib() { _target-binutils; } +package_sh4-unknown-linux-gnu-binutils() { _target-binutils; } +package_sh4l-unknown-linux-gnu-binutils() { _target-binutils; } +package_lm32-unknown-linux-gnu-binutils() { _target-binutils; } +package_or32-unknown-linux-gnu-binutils() { _target-binutils; } # GNU package_x86_64-unknown-gnu-binutils() { _target-binutils; } package_x86_64-unknown-gnu-binutils-multilib() { _target-binutils; } +package_i786-pc-gnu-binutils() { _target-binutils; } package_i686-pc-gnu-binutils() { _target-binutils; } package_i586-pc-gnu-binutils() { _target-binutils; } -# GNU/Linux-libre with uClibc -package_mips64el-unknown-uclinux-gnu-binutils() { _target-binutils; } -package_mips64el-unknown-uclinux-gnu-binutils-multilib() { _target-binutils; } -package_x86_64-unknown-uclinux-gnu-binutils() { _target-binutils; } -package_x86_64-unknown-uclinux-gnu-binutils-multilib() { _target-binutils; } -package_i686-pc-uclinux-gnu-binutils() { _target-binutils; } -package_i586-pc-uclinux-gnu-binutils() { _target-binutils; } -package_aarch64-unknown-uclinux-gnu-binutils() { _target-binutils; } -package_aarch64-unknown-uclinux-gnu-binutils-multilib() { _target-binutils; } -package_aarch64_be-unknown-uclinux-gnu-binutils() { _target-binutils; } -package_aarch64_be-unknown-uclinux-gnu-binutils-multilib() { _target-binutils; } -package_arm-unknown-uclinux-gnueabi-binutils() { _target-binutils; } -package_armeb-unknown-uclinux-gnueabi-binutils() { _target-binutils; } -package_armv7-unknown-uclinux-gnueabi-binutils() { _target-binutils; } -package_armv7eb-unknown-uclinux-gnueabi-binutils() { _target-binutils; } -package_armv6-unknown-uclinux-gnueabi-binutils() { _target-binutils; } -package_armv6eb-unknown-uclinux-gnueabi-binutils() { _target-binutils; } -package_armv5-unknown-uclinux-gnueabi-binutils() { _target-binutils; } -package_armv5eb-unknown-uclinux-gnueabi-binutils() { _target-binutils; } - # ELF or EABI only -package_xtensa-unknown-elf-binutils() { _target-binutils; } -package_xtensa-unknown-elf-binutils-ath9k_htc() { _target-binutils; } package_mips64el-unknown-elf-binutils() { _target-binutils; } package_mips64el-unknown-elf-binutils-multilib() { _target-binutils; } package_mips64-unknown-elf-binutils() { _target-binutils; } package_mips64-unknown-elf-binutils-multilib() { _target-binutils; } -package_mips32el-unknown-elf-binutils() { _target-binutils; } -package_mips32-unknown-elf-binutils() { _target-binutils; } +package_mipsel-unknown-elf-binutils() { _target-binutils; } +package_mips-unknown-elf-binutils() { _target-binutils; } package_x86_64-unknown-elf-binutils() { _target-binutils; } package_x86_64-unknown-elf-binutils-multilib() { _target-binutils; } -package_i686-unknown-elf-binutils() { _target-binutils; } -package_i586-unknown-elf-binutils() { _target-binutils; } package_i386-unknown-elf-binutils() { _target-binutils; } package_aarch64-unknown-elf-binutils() { _target-binutils; } package_aarch64-unknown-elf-binutils-multilib() { _target-binutils; } @@ -320,23 +322,28 @@ package_arm-unknown-eabi-binutils() { _target-binutils; } package_armeb-unknown-eabi-binutils() { _target-binutils; } package_powerpc64-unknown-elf-binutils() { _target-binutils; } package_powerpc64-unknown-elf-binutils-multilib() { _target-binutils; } -package_powerpc64le-unknown-elf-binutils() { _target-binutils; } -package_powerpc64le-unknown-elf-binutils-multilib() { _target-binutils; } -package_powerpc32-unknown-elf-binutils() { _target-binutils; } -package_powerpc32le-unknown-elf-binutils() { _target-binutils; } package_powerpc64-unknown-eabi-binutils() { _target-binutils; } package_powerpc64-unknown-eabi-binutils-multilib() { _target-binutils; } +package_powerpc64le-unknown-elf-binutils() { _target-binutils; } +package_powerpc64le-unknown-elf-binutils-multilib() { _target-binutils; } package_powerpc64le-unknown-eabi-binutils() { _target-binutils; } package_powerpc64le-unknown-eabi-binutils-multilib() { _target-binutils; } -package_powerpc32-unknown-eabi-binutils() { _target-binutils; } -package_powerpc32le-unknown-eabi-binutils() { _target-binutils; } +package_powerpc-unknown-elf-binutils() { _target-binutils; } +package_powerpc-unknown-eabi-binutils() { _target-binutils; } +package_powerpcle-unknown-elf-binutils() { _target-binutils; } +package_powerpcle-unknown-eabi-binutils() { _target-binutils; } +package_spu-unknown-elf-binutils() { _target-binutils; } package_sh64-unknown-elf-binutils() { _target-binutils; } package_sh64-unknown-elf-binutils-multilib() { _target-binutils; } package_sh64l-unknown-elf-binutils() { _target-binutils; } package_sh64l-unknown-elf-binutils-multilib() { _target-binutils; } package_sh-unknown-elf-binutils() { _target-binutils; } package_shl-unknown-elf-binutils() { _target-binutils; } +package_xtensa-unknown-elf-binutils() { _target-binutils; } +package_xtensa-unknown-elf-binutils-ath9k_htc() { _target-binutils; } package_m68k-unknown-elf-binutils() { _target-binutils; } +package_lm32-unknown-elf-binutils() { _target-binutils; } +package_or32-unknown-elf-binutils() { _target-binutils; } #--------------------------------------------------------------------------------------------------------------------------------------------- -- cgit v1.2.3-2-g168b