cross-arm-linux-gnueabihf: sync with other cross pkgs.

This commit is contained in:
Juan RP 2015-06-27 08:27:53 +02:00
parent dd68612b09
commit a80a5e3916
1 changed files with 30 additions and 38 deletions

View File

@ -8,11 +8,11 @@ _linux_version=3.10.6
_triplet=arm-linux-gnueabihf _triplet=arm-linux-gnueabihf
_fpuflags="--with-arch=armv6 --with-fpu=vfp --with-float=hard" _fpuflags="--with-arch=armv6 --with-fpu=vfp --with-float=hard"
_archflags="-march=armv6 -mfpu=vfp -mfloat-abi=hard" _archflags="-march=armv6 -mfpu=vfp -mfloat-abi=hard"
_CROSS_SYSROOT="/usr/${_triplet}" _sysroot="/usr/${_triplet}"
pkgname=cross-${_triplet} pkgname=cross-${_triplet}
version=0.20 version=0.20
revision=1 revision=2
short_desc="GNU Cross toolchain for the ${_triplet} LE target (binutils/gcc/glibc)" short_desc="GNU Cross toolchain for the ${_triplet} LE target (binutils/gcc/glibc)"
maintainer="Juan RP <xtraeme@voidlinux.eu>" maintainer="Juan RP <xtraeme@voidlinux.eu>"
homepage="http://www.voidlinux.eu" homepage="http://www.voidlinux.eu"
@ -57,7 +57,7 @@ _linux_headers() {
cd linux-${_linux_version} cd linux-${_linux_version}
make ARCH=arm headers_check make ARCH=arm headers_check
make ARCH=arm INSTALL_HDR_PATH=${_CROSS_SYSROOT}/usr headers_install make ARCH=arm INSTALL_HDR_PATH=${_sysroot}/usr headers_install
touch ${wrksrc}/.linux_build_done touch ${wrksrc}/.linux_build_done
} }
@ -72,7 +72,7 @@ _binutils_build() {
../binutils-${_binutils_version}/configure \ ../binutils-${_binutils_version}/configure \
--prefix=/usr --target=${_triplet} \ --prefix=/usr --target=${_triplet} \
--with-sysroot=${_CROSS_SYSROOT} --disable-nls --disable-shared \ --with-sysroot=${_sysroot} --disable-nls --disable-shared \
--disable-multilib --disable-werror --disable-multilib --disable-werror
make configure-host make configure-host
@ -126,12 +126,12 @@ _glibc_headers() {
../glibc-${_glibc_version}/configure \ ../glibc-${_glibc_version}/configure \
--host=${_triplet} --prefix=/usr \ --host=${_triplet} --prefix=/usr \
--with-headers=${_CROSS_SYSROOT}/usr/include \ --with-headers=${_sysroot}/usr/include \
--config-cache --enable-obsolete-rpc \ --config-cache --enable-obsolete-rpc \
--enable-kernel=2.6.27 ${_fpuflags} --enable-kernel=2.6.27 ${_fpuflags}
make -k install-headers cross_compiling=yes \ make -k install-headers cross_compiling=yes \
install_root=${_CROSS_SYSROOT} install_root=${_sysroot}
touch ${wrksrc}/.glibc_headers_done touch ${wrksrc}/.glibc_headers_done
} }
@ -154,12 +154,12 @@ _glibc_build() {
../glibc-${_glibc_version}/configure \ ../glibc-${_glibc_version}/configure \
--host=${_triplet} --prefix=/usr \ --host=${_triplet} --prefix=/usr \
--with-headers=${_CROSS_SYSROOT}/usr/include \ --with-headers=${_sysroot}/usr/include \
--config-cache --disable-profile --enable-obsolete-rpc \ --config-cache --disable-profile --enable-obsolete-rpc \
--disable-werror --enable-kernel=2.6.27 ${_fpuflags} --disable-werror --enable-kernel=2.6.27 ${_fpuflags}
make ${makejobs} make ${makejobs}
make install_root=${_CROSS_SYSROOT} install make install_root=${_sysroot} install
touch ${wrksrc}/.glibc_build_done touch ${wrksrc}/.glibc_build_done
} }
@ -178,14 +178,14 @@ _gcc_build() {
# Make this link to target libs. # Make this link to target libs.
if [ ! -f .sed_subst_done ]; then if [ ! -f .sed_subst_done ]; then
sed -e "s, /lib/, ${_CROSS_SYSROOT}/lib/,g;s, /usr/lib/, ${_CROSS_SYSROOT}/usr/lib/,g" \ sed -e "s, /lib/, ${_sysroot}/lib/,g;s, /usr/lib/, ${_sysroot}/usr/lib/,g" \
-i ${_CROSS_SYSROOT}/lib/libc.so ${_CROSS_SYSROOT}/lib/libpthread.so -i ${_sysroot}/lib/libc.so ${_sysroot}/lib/libpthread.so
touch .sed_subst_done touch .sed_subst_done
fi fi
../gcc-${_gcc_version}/configure \ ../gcc-${_gcc_version}/configure \
--target=${_triplet} --prefix=/usr --libdir=/usr/lib \ --target=${_triplet} --prefix=/usr --libdir=/usr/lib \
--libexecdir=/usr/lib --with-sysroot=${_CROSS_SYSROOT} \ --libexecdir=/usr/lib --with-sysroot=${_sysroot} \
--enable-languages=c,c++,lto \ --enable-languages=c,c++,lto \
--with-gnu-as --with-gnu-ld --disable-multilib \ --with-gnu-as --with-gnu-ld --disable-multilib \
--disable-werror --disable-nls --disable-sjlj-exceptions \ --disable-werror --disable-nls --disable-sjlj-exceptions \
@ -205,11 +205,11 @@ _gcc_build() {
do_build() { do_build() {
for f in include lib bin; do for f in include lib bin; do
if [ ! -d ${_CROSS_SYSROOT}/usr/${f} ]; then if [ ! -d ${_sysroot}/usr/${f} ]; then
mkdir -p ${_CROSS_SYSROOT}/usr/${f} mkdir -p ${_sysroot}/usr/${f}
fi fi
if [ ! -h ${_CROSS_SYSROOT}/${f} ]; then if [ ! -h ${_sysroot}/${f} ]; then
ln -sfr ${_CROSS_SYSROOT}/usr/${f} ${_CROSS_SYSROOT}/${f} ln -sfr ${_sysroot}/usr/${f} ${_sysroot}/${f}
fi fi
done done
# Ensure we use sane environment # Ensure we use sane environment
@ -227,12 +227,12 @@ do_build() {
do_install() { do_install() {
for f in include lib bin; do for f in include lib bin; do
if [ ! -d ${DESTDIR}/${_CROSS_SYSROOT}/usr/${f} ]; then if [ ! -d ${DESTDIR}/${_sysroot}/usr/${f} ]; then
mkdir -p ${DESTDIR}/${_CROSS_SYSROOT}/usr/${f} mkdir -p ${DESTDIR}/${_sysroot}/usr/${f}
fi fi
if [ ! -h ${DESTDIR}/${_CROSS_SYSROOT}/${f} ]; then if [ ! -h ${DESTDIR}/${_sysroot}/${f} ]; then
ln -sfr ${DESTDIR}/${_CROSS_SYSROOT}/usr/${f} \ ln -sfr ${DESTDIR}/${_sysroot}/usr/${f} \
${DESTDIR}/${_CROSS_SYSROOT}/${f} ${DESTDIR}/${_sysroot}/${f}
fi fi
done done
# install cross binutils # install cross binutils
@ -245,38 +245,30 @@ do_install() {
# install linux API headers for MIPS # install linux API headers for MIPS
cd ${wrksrc}/linux-${_linux_version} cd ${wrksrc}/linux-${_linux_version}
make ARCH=arm INSTALL_HDR_PATH=${DESTDIR}/${_CROSS_SYSROOT}/usr headers_install make ARCH=arm INSTALL_HDR_PATH=${DESTDIR}/${_sysroot}/usr headers_install
rm -f $(find ${DESTDIR}/${_CROSS_SYSROOT}/usr/include -name .install -or -name ..install.cmd) rm -f $(find ${DESTDIR}/${_sysroot}/usr/include -name .install -or -name ..install.cmd)
rm -rf ${DESTDIR}/${_CROSS_SYSROOT}/usr/include/drm rm -rf ${DESTDIR}/${_sysroot}/usr/include/drm
# install glibc for target # install glibc for target
cd ${wrksrc}/glibc-build cd ${wrksrc}/glibc-build
make install_root=${DESTDIR}/${_CROSS_SYSROOT} install install-headers make install_root=${DESTDIR}/${_sysroot} install install-headers
# Remove unnecessary stuff # Remove unnecessary stuff
rm -f ${DESTDIR}/usr/lib*/libiberty.a rm -f ${DESTDIR}/usr/lib*/libiberty.a
rm -rf ${DESTDIR}/usr/share rm -rf ${DESTDIR}/usr/share
rm -rf ${DESTDIR}/${_CROSS_SYSROOT}/{sbin,etc,var} rm -rf ${DESTDIR}/${_sysroot}/{sbin,bin,lib,etc,var}
rm -rf ${DESTDIR}/${_CROSS_SYSROOT}/usr/{sbin,share,libexec} rm -rf ${DESTDIR}/${_sysroot}/usr/{sbin,share,libexec}
rm -rf ${DESTDIR}/${_CROSS_SYSROOT}/usr/lib/gconv rm -rf ${DESTDIR}/${_sysroot}/usr/lib/gconv
rm -f ${DESTDIR}/${_CROSS_SYSROOT}/libexec rm -f ${DESTDIR}/${_sysroot}/libexec
for f in sprof localedef gencat pldd sotruss tzselect iconv mtrace \
catchsegv xtrace makedb pcprofiledump locale rpcgen getconf \
getent ldd; do
rm -f ${DESTDIR}/${_CROSS_SYSROOT}/usr/bin/${f}
done
# remove temporary symlinks in sysroot
find ${DESTDIR}/${_CROSS_SYSROOT} -maxdepth 1 -type l -delete
} }
cross-arm-linux-gnueabihf-libc_package() { cross-arm-linux-gnueabihf-libc_package() {
short_desc+=" - glibc files" short_desc+=" - glibc files"
noarch=yes noarch=yes
nostrip=yes noshlibprovides=yes
noverifyrdeps=yes noverifyrdeps=yes
pkg_install() { pkg_install() {
vmove usr/${_triplet} vmove ${_sysroot}
} }
} }