Merge pull request #3063 from chneukirchen/mips

mipsel-musl update
This commit is contained in:
Christian Neukirchen 2015-11-27 19:10:29 +01:00
commit 125540e86a
14 changed files with 1351 additions and 26 deletions

View file

@ -70,7 +70,8 @@ case "$XBPS_TARGET_MACHINE" in
. ${_AUTOCONFCACHEDIR}/mips-linux . ${_AUTOCONFCACHEDIR}/mips-linux
;; ;;
mipsel) . ${_AUTOCONFCACHEDIR}/endian-little mipsel*)
. ${_AUTOCONFCACHEDIR}/endian-little
. ${_AUTOCONFCACHEDIR}/mips-common . ${_AUTOCONFCACHEDIR}/mips-common
. ${_AUTOCONFCACHEDIR}/mips-linux . ${_AUTOCONFCACHEDIR}/mips-linux
;; ;;

View file

@ -4,7 +4,7 @@ CXXFLAGS="-fstack-protector-strong -D_FORTIFY_SOURCE=2 $CXXFLAGS"
# Enable as-needed and relro by default. # Enable as-needed and relro by default.
LDFLAGS="-Wl,--as-needed -Wl,-z,relro $LDFLAGS" LDFLAGS="-Wl,--as-needed -Wl,-z,relro $LDFLAGS"
if [ -z "$nopie" ]; then if [ -z "$nopie" ] && [ "$XBPS_TARGET_ARCH" != mipsel-musl ]; then
_GCCSPECSDIR=${XBPS_COMMONDIR}/environment/configure/gccspecs _GCCSPECSDIR=${XBPS_COMMONDIR}/environment/configure/gccspecs
CFLAGS="-specs=${_GCCSPECSDIR}/hardened-cc1 $CFLAGS" CFLAGS="-specs=${_GCCSPECSDIR}/hardened-cc1 $CFLAGS"
CXXFLAGS="-specs=${_GCCSPECSDIR}/hardened-cc1 $CXXFLAGS" CXXFLAGS="-specs=${_GCCSPECSDIR}/hardened-cc1 $CXXFLAGS"

View file

@ -1226,6 +1226,7 @@ libunwind-ptrace.so.0 libunwind-1.1_1
libunwind-x86_64.so.8 libunwind-1.1_1 libunwind-x86_64.so.8 libunwind-1.1_1
libunwind-x86.so.8 libunwind-1.1_1 libunwind-x86.so.8 libunwind-1.1_1
libunwind-arm.so.8 libunwind-1.1_4 libunwind-arm.so.8 libunwind-1.1_4
libunwind-mips.so.8 libunwind-1.1_4
libmicrohttpd.so.10 libmicrohttpd-0.9.26_1 libmicrohttpd.so.10 libmicrohttpd-0.9.26_1
libgit2.so.23 libgit2-0.23.1_1 libgit2.so.23 libgit2-0.23.1_1
libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1 libgit2-glib-1.0.so.0 libgit2-glib-0.23.4_1

View file

@ -10,7 +10,7 @@ license="Public Domain"
distfiles="http://www.lysator.liu.se/~nisse/misc/argp-standalone-${version}.tar.gz" distfiles="http://www.lysator.liu.se/~nisse/misc/argp-standalone-${version}.tar.gz"
checksum=dec79694da1319acd2238ce95df57f3680fea2482096e483323fddf3d818d8be checksum=dec79694da1319acd2238ce95df57f3680fea2482096e483323fddf3d818d8be
only_for_archs="i686-musl x86_64-musl armv5tel-musl armv6l-musl armv7l-musl aarch64-musl" only_for_archs="i686-musl x86_64-musl armv5tel-musl armv6l-musl armv7l-musl aarch64-musl mipsel-musl"
CFLAGS="-fPIC" CFLAGS="-fPIC"

View file

@ -29,6 +29,9 @@ do_configure() {
# avoiding --with-sysroot to $XBPS_CROSS_BASE. # avoiding --with-sysroot to $XBPS_CROSS_BASE.
CONFIGFLAG="--host=$XBPS_CROSS_TRIPLET --with-build-sysroot=$XBPS_CROSS_BASE" CONFIGFLAG="--host=$XBPS_CROSS_TRIPLET --with-build-sysroot=$XBPS_CROSS_BASE"
fi fi
if [ "$XBPS_TARGET_MACHINE" = "mipsel-musl" ]; then
CONFIGFLAG+=" --with-float=soft --without-fp"
fi
./configure --build=$XBPS_TRIPLET --prefix=/usr --enable-threads \ ./configure --build=$XBPS_TRIPLET --prefix=/usr --enable-threads \
--enable-plugins --enable-secureplt --with-mmap \ --enable-plugins --enable-secureplt --with-mmap \
--disable-shared --enable-gold --disable-werror \ --disable-shared --enable-gold --disable-werror \

View file

@ -1,8 +1,8 @@
# Template build file for 'cross-mipsel-linux-musl' # Template build file for 'cross-mipsel-linux-musl'
# #
_binutils_version=2.24 _binutils_version=2.25.1
_gcc_version=4.9.3 _gcc_version=4.9.3
_musl_version=1.1.10 _musl_version=1.1.12
_linux_version=3.10.6 _linux_version=3.10.6
_triplet=mipsel-linux-musl _triplet=mipsel-linux-musl
@ -12,7 +12,7 @@ _sysroot="/usr/${_triplet}"
pkgname=cross-${_triplet} pkgname=cross-${_triplet}
version=0.20 version=0.20
revision=3 revision=4
short_desc="Cross toolchain for MIPS32r2 LE softfloat target (musl)" short_desc="Cross toolchain for MIPS32r2 LE softfloat target (musl)"
maintainer="Juan RP <xtraeme@voidlinux.eu>" maintainer="Juan RP <xtraeme@voidlinux.eu>"
homepage="http://www.voidlinux.eu" homepage="http://www.voidlinux.eu"
@ -22,11 +22,10 @@ distfiles="
http://ftp.gnu.org/pub/gnu/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.bz2 http://ftp.gnu.org/pub/gnu/gcc/gcc-${_gcc_version}/gcc-${_gcc_version}.tar.bz2
http://www.kernel.org/pub/linux/kernel/v3.x/linux-${_linux_version}.tar.xz http://www.kernel.org/pub/linux/kernel/v3.x/linux-${_linux_version}.tar.xz
http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz" http://www.musl-libc.org/releases/musl-${_musl_version}.tar.gz"
checksum=" checksum="b5b14added7d78a8d1ca70b5cb75fef57ce2197264f4f5835326b0df22ac9f22
e5e8c5be9664e7f7f96e0d09919110ab5ad597794f5b1809871177a0f0f14137
2332b2a5a321b57508b9031354a8503af6fdfb868b8c1748d33028d100a8b67e 2332b2a5a321b57508b9031354a8503af6fdfb868b8c1748d33028d100a8b67e
ed4dfd9f56b7c82e9c71331bbf8d2ea01ddfddc1b6209bd3f3c8640aa24065cf ed4dfd9f56b7c82e9c71331bbf8d2ea01ddfddc1b6209bd3f3c8640aa24065cf
45bbe9b1c7f7a0f743477af1e103b6889bfe4dd9815e16f6c89f6c90831c8b7c" 720b83c7e276b4b679c0bffe9509340d5f81fd601508e607e708177df0d31c0e"
lib32disabled=yes lib32disabled=yes
nocross=yes nocross=yes

View file

@ -7,7 +7,7 @@ short_desc="The GNU C Compiler"
maintainer="Juan RP <xtraeme@voidlinux.eu>" maintainer="Juan RP <xtraeme@voidlinux.eu>"
homepage="http://gcc.gnu.org" homepage="http://gcc.gnu.org"
license="GFDL-1.2, GPL-3, LGPL-2.1" license="GFDL-1.2, GPL-3, LGPL-2.1"
distfiles="http://ftp.gnu.org/pub/gnu/gcc/gcc-$version/gcc-$version.tar.bz2" distfiles="${GNU_SITE}/gcc/gcc-$version/gcc-$version.tar.bz2"
checksum=2332b2a5a321b57508b9031354a8503af6fdfb868b8c1748d33028d100a8b67e checksum=2332b2a5a321b57508b9031354a8503af6fdfb868b8c1748d33028d100a8b67e
_gcjrel=15 _gcjrel=15
@ -57,7 +57,8 @@ case "$XBPS_TARGET_MACHINE" in
aarch64) _triplet="aarch64-linux-gnu";; aarch64) _triplet="aarch64-linux-gnu";;
aarch64-musl) _triplet="aarch64-linux-musl";; aarch64-musl) _triplet="aarch64-linux-musl";;
mips-musl) _triplet="mips-linux-musl";; mips-musl) _triplet="mips-linux-musl";;
mipsel-musl) _triplet="mipsel-linux-muslhf";; mipsel-musl) _triplet="mipsel-linux-musl";;
mipselhf-musl) _triplet="mipsel-linux-muslhf";;
esac esac
case "$XBPS_TARGET_MACHINE" in case "$XBPS_TARGET_MACHINE" in
*-musl) depends+=" musl";; *-musl) depends+=" musl";;
@ -88,10 +89,12 @@ pre_configure() {
sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
} }
do_configure() { do_configure() {
local _langs _args local _langs _args _hash
_hash=gnu
case "$XBPS_TARGET_MACHINE" in case "$XBPS_TARGET_MACHINE" in
mipsel-musl) _args+=" --with-arch=mips32r2 --with-float=hard";; mipselhf-musl) _args+=" --with-arch=mips32r2 --with-float=hard"; _hash=sysv;;
mipsel-musl) _args+=" --with-arch=mips32r2 --with-float=soft"; _hash=sysv;;
mips-musl) _args+=" --with-arch=mip32r2 --with-float=soft";; mips-musl) _args+=" --with-arch=mip32r2 --with-float=soft";;
armv5*) _args+=" --with-arch=armv5te --with-float=soft";; armv5*) _args+=" --with-arch=armv5te --with-float=soft";;
armv6l*) _args+=" --with-arch=armv6 --with-fpu=vfp --with-float=hard";; armv6l*) _args+=" --with-arch=armv6 --with-fpu=vfp --with-float=hard";;
@ -152,7 +155,7 @@ do_configure() {
--with-system-zlib --enable-shared --enable-lto \ --with-system-zlib --enable-shared --enable-lto \
--enable-linker-build-id --disable-werror --disable-nls \ --enable-linker-build-id --disable-werror --disable-nls \
--enable-checking=release --disable-libstdcxx-pch \ --enable-checking=release --disable-libstdcxx-pch \
--enable-cloog-backend=isl --with-linker-hash-style=gnu \ --enable-cloog-backend=isl --with-linker-hash-style=$_hash \
--enable-languages=${_langs} ${_args} --enable-languages=${_langs} ${_args}
} }
do_build() { do_build() {
@ -211,8 +214,8 @@ do_install() {
# Install c89 and c99 wrappers and its manpages, from NetBSD. # Install c89 and c99 wrappers and its manpages, from NetBSD.
for f in c89 c99; do for f in c89 c99; do
vinstall ${FILESDIR}/${f}.sh 755 usr/bin ${f} vbin ${FILESDIR}/${f}.sh ${f}
vinstall ${FILESDIR}/${f}.1 644 usr/share/man/man1 ${f}.1 vman ${FILESDIR}/${f}.1
done done
case "$XBPS_TARGET_MACHINE" in case "$XBPS_TARGET_MACHINE" in
@ -377,7 +380,7 @@ libgfortran_package() {
pkg_install() { pkg_install() {
vmove "usr/lib/libgfortran.so*" vmove "usr/lib/libgfortran.so*"
vmove usr/lib/libgfortran.spec vmove usr/lib/libgfortran.spec
vinstall ${wrksrc}/COPYING.RUNTIME 644 usr/share/licenses/$pkgname RUNTIME.LIBRARY.EXCEPTION vlicense ${wrksrc}/COPYING.RUNTIME RUNTIME.LIBRARY.EXCEPTION
} }
} }
libgo-devel_package() { libgo-devel_package() {
@ -392,7 +395,7 @@ libgo_package() {
short_desc+=" - Go library" short_desc+=" - Go library"
pkg_install() { pkg_install() {
vmove "usr/lib/libgo.so*" vmove "usr/lib/libgo.so*"
vinstall ${wrksrc}/COPYING.RUNTIME 644 usr/share/licenses/$pkgname RUNTIME.LIBRARY.EXCEPTION vlicense ${wrksrc}/COPYING.RUNTIME RUNTIME.LIBRARY.EXCEPTION
} }
} }
libobjc-devel_package() { libobjc-devel_package() {
@ -406,7 +409,7 @@ libobjc_package() {
short_desc+=" - Objective-C library" short_desc+=" - Objective-C library"
pkg_install() { pkg_install() {
vmove "usr/lib/libobjc.so*" vmove "usr/lib/libobjc.so*"
vinstall ${wrksrc}/COPYING.RUNTIME 644 usr/share/licenses/$pkgname RUNTIME.LIBRARY.EXCEPTION vlicense ${wrksrc}/COPYING.RUNTIME RUNTIME.LIBRARY.EXCEPTION
} }
} }
libquadmath-devel_package() { libquadmath-devel_package() {
@ -423,7 +426,7 @@ libquadmath_package() {
short_desc+=" - quadmath library" short_desc+=" - quadmath library"
pkg_install() { pkg_install() {
vmove "usr/lib/libquadmath.so*" vmove "usr/lib/libquadmath.so*"
vinstall ${wrksrc}/COPYING.RUNTIME 644 usr/share/licenses/$pkgname RUNTIME.LIBRARY.EXCEPTION vlicense ${wrksrc}/COPYING.RUNTIME RUNTIME.LIBRARY.EXCEPTION
} }
} }
libcilkrts-devel_package() { libcilkrts-devel_package() {
@ -476,7 +479,7 @@ libgcc_package() {
noverifyrdeps=yes noverifyrdeps=yes
pkg_install() { pkg_install() {
vmove "usr/lib/libgcc_s.so*" vmove "usr/lib/libgcc_s.so*"
vinstall ${wrksrc}/COPYING.RUNTIME 644 usr/share/licenses/$pkgname RUNTIME.LIBRARY.EXCEPTION vlicense ${wrksrc}/COPYING.RUNTIME RUNTIME.LIBRARY.EXCEPTION
} }
} }
libgomp-devel_package() { libgomp-devel_package() {
@ -495,7 +498,7 @@ libgomp_package() {
short_desc+=" - OpenMP v4.0 library" short_desc+=" - OpenMP v4.0 library"
pkg_install() { pkg_install() {
vmove "usr/lib/libgomp*.so.*" vmove "usr/lib/libgomp*.so.*"
vinstall ${wrksrc}/COPYING.RUNTIME 644 usr/share/licenses/$pkgname RUNTIME.LIBRARY.EXCEPTION vlicense ${wrksrc}/COPYING.RUNTIME RUNTIME.LIBRARY.EXCEPTION
} }
} }
libitm-devel_package() { libitm-devel_package() {
@ -544,7 +547,7 @@ libssp_package() {
short_desc+=" - SSP (StackSmashingProtection) library" short_desc+=" - SSP (StackSmashingProtection) library"
pkg_install() { pkg_install() {
vmove "usr/lib/libssp.so*" vmove "usr/lib/libssp.so*"
vinstall ${wrksrc}/COPYING.RUNTIME 644 usr/share/licenses/$pkgname RUNTIME.LIBRARY.EXCEPTION vlicense ${wrksrc}/COPYING.RUNTIME RUNTIME.LIBRARY.EXCEPTION
} }
} }
libstdc++-devel_package() { libstdc++-devel_package() {
@ -560,7 +563,7 @@ libstdc++_package() {
short_desc+=" - Standard C++ Library" short_desc+=" - Standard C++ Library"
pkg_install() { pkg_install() {
vmove "usr/lib/libstdc++.so*" vmove "usr/lib/libstdc++.so*"
vinstall ${wrksrc}/COPYING.RUNTIME 644 usr/share/licenses/$pkgname RUNTIME.LIBRARY.EXCEPTION vlicense ${wrksrc}/COPYING.RUNTIME RUNTIME.LIBRARY.EXCEPTION
} }
} }
gcc-c++_package() { gcc-c++_package() {

View file

@ -0,0 +1,11 @@
--- gdb/mips-linux-nat.c.orig
+++ gdb/mips-linux-nat.c
@@ -31,7 +31,7 @@
#include "gdb_proc_service.h"
#include "gregset.h"
-#include <sgidefs.h>
+#include <asm/sgidefs.h>
#include <sys/ptrace.h>
#include <asm/ptrace.h>

View file

@ -14,6 +14,12 @@ homepage="http://libjpeg-turbo.virtualgl.org/"
distfiles="${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-${version}.tar.gz" distfiles="${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-${version}.tar.gz"
checksum=521bb5d3043e7ac063ce3026d9a59cc2ab2e9636c655a2515af5f4706122233e checksum=521bb5d3043e7ac063ce3026d9a59cc2ab2e9636c655a2515af5f4706122233e
# SIMD uses FP instructions, disable on soft-float MIPS
case "$XBPS_TARGET_ARCH" in
mips*hf) ;;
mips*) configure_args+=" --without-simd" ;;
esac
do_install() { do_install() {
make DESTDIR=${DESTDIR} docdir=/usr/share/doc/${pkgname} \ make DESTDIR=${DESTDIR} docdir=/usr/share/doc/${pkgname} \
exampledir=/usr/share/doc/${pkgname} install exampledir=/usr/share/doc/${pkgname} install

View file

@ -0,0 +1,11 @@
--- src/mips/getcontext.S.orig
+++ src/mips/getcontext.S
@@ -24,7 +24,7 @@
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#include "offsets.h"
-#include <endian.h>
+#include <bits/endian.h>
.text

View file

@ -0,0 +1,73 @@
Hardcoded according to _MIPS_SIM _ABIO32 (-mabi=32)!
--- src/coredump/_UCD_access_reg_linux.c.orig
+++ src/coredump/_UCD_access_reg_linux.c
@@ -49,37 +49,37 @@
#if defined(UNW_TARGET_MIPS)
static const uint8_t remap_regs[] =
{
- [UNW_MIPS_R0] = EF_REG0,
- [UNW_MIPS_R1] = EF_REG1,
- [UNW_MIPS_R2] = EF_REG2,
- [UNW_MIPS_R3] = EF_REG3,
- [UNW_MIPS_R4] = EF_REG4,
- [UNW_MIPS_R5] = EF_REG5,
- [UNW_MIPS_R6] = EF_REG6,
- [UNW_MIPS_R7] = EF_REG7,
- [UNW_MIPS_R8] = EF_REG8,
- [UNW_MIPS_R9] = EF_REG9,
- [UNW_MIPS_R10] = EF_REG10,
- [UNW_MIPS_R11] = EF_REG11,
- [UNW_MIPS_R12] = EF_REG12,
- [UNW_MIPS_R13] = EF_REG13,
- [UNW_MIPS_R14] = EF_REG14,
- [UNW_MIPS_R15] = EF_REG15,
- [UNW_MIPS_R16] = EF_REG16,
- [UNW_MIPS_R17] = EF_REG17,
- [UNW_MIPS_R18] = EF_REG18,
- [UNW_MIPS_R19] = EF_REG19,
- [UNW_MIPS_R20] = EF_REG20,
- [UNW_MIPS_R21] = EF_REG21,
- [UNW_MIPS_R22] = EF_REG22,
- [UNW_MIPS_R23] = EF_REG23,
- [UNW_MIPS_R24] = EF_REG24,
- [UNW_MIPS_R25] = EF_REG25,
- [UNW_MIPS_R28] = EF_REG28,
- [UNW_MIPS_R29] = EF_REG29,
- [UNW_MIPS_R30] = EF_REG30,
- [UNW_MIPS_R31] = EF_REG31,
- [UNW_MIPS_PC] = EF_CP0_EPC,
+ [UNW_MIPS_R0] = 6,
+ [UNW_MIPS_R1] = 7,
+ [UNW_MIPS_R2] = 8,
+ [UNW_MIPS_R3] = 9,
+ [UNW_MIPS_R4] = 10,
+ [UNW_MIPS_R5] = 11,
+ [UNW_MIPS_R6] = 12,
+ [UNW_MIPS_R7] = 13,
+ [UNW_MIPS_R8] = 14,
+ [UNW_MIPS_R9] = 15,
+ [UNW_MIPS_R10] = 16,
+ [UNW_MIPS_R11] = 17,
+ [UNW_MIPS_R12] = 18,
+ [UNW_MIPS_R13] = 19,
+ [UNW_MIPS_R14] = 20,
+ [UNW_MIPS_R15] = 21,
+ [UNW_MIPS_R16] = 22,
+ [UNW_MIPS_R17] = 23,
+ [UNW_MIPS_R18] = 24,
+ [UNW_MIPS_R19] = 25,
+ [UNW_MIPS_R20] = 26,
+ [UNW_MIPS_R21] = 27,
+ [UNW_MIPS_R22] = 28,
+ [UNW_MIPS_R23] = 29,
+ [UNW_MIPS_R24] = 30,
+ [UNW_MIPS_R25] = 31,
+ [UNW_MIPS_R28] = 34,
+ [UNW_MIPS_R29] = 35,
+ [UNW_MIPS_R30] = 36,
+ [UNW_MIPS_R31] = 37,
+ [UNW_MIPS_PC] = 40,
};
#elif defined(UNW_TARGET_X86)
static const uint8_t remap_regs[] =

View file

@ -1,7 +1,7 @@
# Template file for 'musl'. # Template file for 'musl'.
pkgname=musl pkgname=musl
version=1.1.12 version=1.1.12
revision=1 revision=2
build_style=gnu-configure build_style=gnu-configure
configure_args="--prefix=/usr --disable-gcc-wrapper" configure_args="--prefix=/usr --disable-gcc-wrapper"
conflicts="glibc>=0" conflicts="glibc>=0"
@ -39,4 +39,8 @@ do_install() {
# Create xbps.d(5) arch override file # Create xbps.d(5) arch override file
vmkdir usr/share/xbps.d vmkdir usr/share/xbps.d
echo "architecture=${XBPS_TARGET_MACHINE}" > ${DESTDIR}/usr/share/xbps.d/musl-arch.conf echo "architecture=${XBPS_TARGET_MACHINE}" > ${DESTDIR}/usr/share/xbps.d/musl-arch.conf
vlicense COPYRIGHT
if [ "$XBPS_TARGET_MACHINE" = mipsel-musl ]; then
ln -s libc.so ${DESTDIR}/usr/lib/ld-musl-mipsel.so.1
fi
} }

File diff suppressed because one or more lines are too long

View file

@ -1,7 +1,7 @@
# Template file for 'strace' # Template file for 'strace'
pkgname=strace pkgname=strace
version=4.10 version=4.10
revision=3 revision=4
build_style=gnu-configure build_style=gnu-configure
configure_args="--enable-libunwind" configure_args="--enable-libunwind"
makedepends="libunwind-devel" makedepends="libunwind-devel"
@ -18,7 +18,12 @@ esac
pre_configure() { pre_configure() {
sed -i -e 's/include <linux\/socket.h>/include <sys\/socket.h>/g' configure sed -i -e 's/include <linux\/socket.h>/include <sys\/socket.h>/g' configure
sed -i -e 's/include <sgidefs.h>/include <asm\/sgidefs.h>/g' configure
case "$XBPS_TARGET_MACHINE" in case "$XBPS_TARGET_MACHINE" in
*-musl) export CFLAGS+=" -Dsigcontext_struct=sigcontext";; *-musl) export CFLAGS+=" -Dsigcontext_struct=sigcontext";;
esac esac
} }
post_install() {
vlicense COPYING
}