New package: cross-riscv64-linux-gnu-0.35

This commit is contained in:
John 2023-07-21 23:12:12 +02:00 committed by John Zimmermann
parent 2cd18c461c
commit 04738fa6bb
6 changed files with 72 additions and 3 deletions

View File

@ -0,0 +1,7 @@
XBPS_TARGET_CFLAGS="-march=rv64imafdc"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="riscv64-unknown-linux-gnu"
XBPS_RUST_TARGET="riscv64gc-unknown-linux-gnu"
XBPS_ZIG_TARGET="riscv64-linux-gnu"
XBPS_ZIG_CPU="baseline"

View File

@ -641,9 +641,6 @@ do_install() {
ln -sf libgnat-${gcc_major}.so ${DESTDIR}/${sysroot}/usr/lib/libgnat.so
rm -vf ${DESTDIR}/${adalib}/libgna{rl,t}.so
# Remove unnecessary libatomic which is only built for gccgo
rm -rf ${DESTDIR}/${sysroot}/usr/lib/libatomic.*
# If libquadmath was forced (needed for gfortran on some platforms)
# then remove it because it conflicts with libquadmath package
rm -rf ${DESTDIR}/${sysroot}/usr/lib/libquadmath.*

View File

@ -0,0 +1,12 @@
# Cross build profile for riscv64 and Musl libc.
XBPS_TARGET_MACHINE="riscv64"
XBPS_TARGET_QEMU_MACHINE="riscv64"
XBPS_CROSS_TRIPLET="riscv64-linux-gnu"
XBPS_CROSS_CFLAGS="-march=rv64imafdc"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
XBPS_CROSS_RUST_TARGET="riscv64gc-unknown-linux-gnu"
XBPS_CROSS_ZIG_TARGET="riscv64-linux-gnu"
XBPS_CROSS_ZIG_CPU="baseline"

View File

@ -26,6 +26,7 @@ ld-linux-x86-64.so.2 glibc-2.36_1 x86_64
ld-linux.so.2 glibc-2.36_1 i686
ld-linux.so.3 glibc-2.36_1 armv5tel
ld-linux-aarch64.so.1 glibc-2.36_1 aarch64
ld-linux-riscv64-lp64d.so.1 glibc-2.36_1 riscv64
ld64.so.2 glibc-2.36_1 ppc64
ld.so.1 glibc-2.36_1 mips
ld.so.1 glibc-2.36_1 ppc

View File

@ -0,0 +1 @@
cross-riscv64-linux-gnu

View File

@ -0,0 +1,51 @@
# Template file for 'cross-riscv64-linux-gnu'
_binutils_version=2.39
_gcc_version=12.2.0
_glibc_version=2.36
_glibc_patchver="72-g0f90d6204d"
_linux_version=5.10.4
pkgname=cross-riscv64-linux-gnu
version=0.35
revision=3
build_style=void-cross
configure_args="--with-arch=rv64gc --with-abi=lp64d --enable-autolink-libatomic --disable-multilib"
hostmakedepends="texinfo tar gcc-objc gcc-go flex perl python3 pkg-config"
makedepends="isl-devel libmpc-devel gmp-devel mpfr-devel
zlib-devel libzstd-devel"
depends="${pkgname}-libc-${version}_${revision}"
short_desc="Void cross toolchain for ${pkgname/cross-}"
maintainer="John <me@johnnynator.dev>"
license="GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.1-or-later"
homepage="https://www.voidlinux.org/"
distfiles="${GNU_SITE}/binutils/binutils-${_binutils_version}.tar.xz"
distfiles+=" ${GNU_SITE}/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.xz"
# distfiles+=" ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz"
distfiles+=" https://vasilek.cz/paste/glibc-${_glibc_version}-${_glibc_patchver}.tar.xz"
distfiles+=" ${KERNEL_SITE}/kernel/v5.x/linux-${_linux_version}.tar.xz"
checksum="645c25f563b8adc0a81dbd6a41cffbf4d37083a382e02d5d3df4f65c09516d00
e549cf9cf3594a00e27b6589d4322d70e0720cdd213f39beb4181e06926230ff
656200722d5ba968b4888a2d2950719d72c86290fd0479f61897d25b7db2cb57
904e396c26e9992a16cd1cc989460171536bed7739bf36049f6eb020ee5d56ec"
nocross=yes
cross_glibc_cflags="-O2"
if [ "$XBPS_TARGET_MACHINE" = "riscv64" ]; then
broken="Can't build crosstoolchain to itself"
fi
case "$XBPS_MACHINE" in
ppc64*) ;;
ppc*|mips*) broken="no gccgo support";;
esac
cross-riscv64-linux-gnu-libc_package() {
short_desc+=" - glibc files"
nostrip=yes
noshlibprovides=yes
noverifyrdeps=yes
pkg_install() {
vmove usr/${sourcepkg/cross-}
}
}