Skip to content
Snippets Groups Projects
Commit 16e360f2 authored by Timo Teräs's avatar Timo Teräs
Browse files

main/musl: upgrade 0.9.11

Also don't build crosstool for native musl builds.
parent a1d5f4aa
No related merge requests found
From d66ab4f1409ad1a2093239ef48b7bca596acdf52 Mon Sep 17 00:00:00 2001
From: Rich Felker <dalias@aerifal.cx>
Date: Mon, 1 Jul 2013 13:43:43 -0400
Subject: [PATCH 1/2] fix Makefile so "make install" works before include/bits
symlink exists
previously, determination of the list of header files for installation
depended on the include/bits symlink (to the arch-specific files)
already having been created. in other words, running "make install"
immediately after configure without first running "make" caused the
bits headers not to be installed.
the solution I have applied is to pull the list of headers directly
from arch/$(ARCH)/bits rather than include/bits, and likewise to
install directly from arch/$(ARCH)/bits rather than via the symlink.
at this point, the only purpose served by keeping the symlink around
is that it enables use of the in-tree headers and libs directly via -I
and -L, which can be useful when testing against a new version of the
library before installing it. on the other hand, removing the bits
symlink would be beneficial if we ever want to support building
multiple archs in the same source tree.
---
Makefile | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 997c5bb..6a86211 100644
--- a/Makefile
+++ b/Makefile
@@ -37,7 +37,8 @@ CFLAGS_ALL_SHARED = $(CFLAGS_ALL) -fPIC -DSHARED
AR = $(CROSS_COMPILE)ar
RANLIB = $(CROSS_COMPILE)ranlib
-ALL_INCLUDES = $(sort $(wildcard include/*.h include/*/*.h) $(GENH))
+ARCH_INCLUDES = $(wildcard arch/$(ARCH)/bits/*.h)
+ALL_INCLUDES = $(sort $(wildcard include/*.h include/*/*.h) $(GENH) $(ARCH_INCLUDES:arch/$(ARCH)/%=include/%))
EMPTY_LIB_NAMES = m rt pthread crypt util xnet resolv dl
EMPTY_LIBS = $(EMPTY_LIB_NAMES:%=lib/lib%.a)
@@ -124,6 +125,9 @@ $(DESTDIR)$(libdir)/%.so: lib/%.so
$(DESTDIR)$(libdir)/%: lib/%
install -D -m 644 $< $@
+$(DESTDIR)$(includedir)/bits/%: arch/$(ARCH)/bits/%
+ install -D -m 644 $< $@
+
$(DESTDIR)$(includedir)/%: include/%
install -D -m 644 $< $@
--
1.8.3.2
From fbcd82040cb67ee14886c6ac4c200cde3662f986 Mon Sep 17 00:00:00 2001
From: Rich Felker <dalias@aerifal.cx>
Date: Mon, 1 Jul 2013 13:50:02 -0400
Subject: [PATCH 2/2] add stubs for additional legacy ether.h functions
these would not be expensive to actually implement, but reading
/etc/ethers does not sound like a particularly useful feature, so for
now I'm leaving them as stubs.
---
include/netinet/ether.h | 6 +++---
src/network/ether.c | 15 +++++++++++++++
2 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/include/netinet/ether.h b/include/netinet/ether.h
index c5179d5..d64c9ef 100644
--- a/include/netinet/ether.h
+++ b/include/netinet/ether.h
@@ -4,11 +4,11 @@
#include <netinet/if_ether.h>
char *ether_ntoa (const struct ether_addr *);
-
struct ether_addr *ether_aton (const char *);
-
char *ether_ntoa_r (const struct ether_addr *, char *);
-
struct ether_addr *ether_aton_r (const char *, struct ether_addr *);
+int ether_line(const char *, struct ether_addr *, char *);
+int ether_ntohost(char *, const struct ether_addr *);
+int ether_hostton(const char *, struct ether_addr *);
#endif
diff --git a/src/network/ether.c b/src/network/ether.c
index ac55411..4304a97 100644
--- a/src/network/ether.c
+++ b/src/network/ether.c
@@ -41,3 +41,18 @@ char *ether_ntoa (const struct ether_addr *p_a) {
static char x[18];
return ether_ntoa_r (p_a, x);
}
+
+int ether_line(const char *l, struct ether_addr *e, char *hostname)
+{
+ return -1;
+}
+
+int ether_ntohost(char *hostname, const struct ether_addr *e)
+{
+ return -1;
+}
+
+int ether_hostton(const char *hostname, struct ether_addr *e)
+{
+ return -1;
+}
--
1.8.3.2
# Contributor: William Pitcock <nenolod@dereferenced.org> # Contributor: William Pitcock <nenolod@dereferenced.org>
# Maintainer: William Pitcock <nenolod@dereferenced.org> # Maintainer: William Pitcock <nenolod@dereferenced.org>
pkgname=musl pkgname=musl
pkgver=0.9.10 pkgver=0.9.11
pkgrel=0 pkgrel=0
pkgdesc="the musl c library (libc) implementation" pkgdesc="the musl c library (libc) implementation"
url="http://www.musl-libc.org/" url="http://www.musl-libc.org/"
arch="x86 x86_64 arm" arch="x86 x86_64 arm armel"
license="MIT" license="MIT"
depends="" depends=""
depends_dev="" depends_dev=""
makedepends="$depends_dev" makedepends="$depends_dev"
install="" install=""
subpackages="$pkgname-dev musl-gcc:crosstool" subpackages="$pkgname-dev"
source="http://www.musl-libc.org/releases/musl-$pkgver.tar.gz" [ "${CTARGET#*musl}" = "$CTARGET" ] && subpackages="$subpackages musl-gcc:crosstool"
source="http://www.musl-libc.org/releases/musl-$pkgver.tar.gz
0001-fix-Makefile-so-make-install-works-before-include-bi.patch
0002-add-stubs-for-additional-legacy-ether.h-functions.patch
crt-arm-Scrt1.s
"
_builddir="$srcdir"/musl-$pkgver _builddir="$srcdir"/musl-$pkgver
prepare() { prepare() {
...@@ -23,11 +28,14 @@ prepare() { ...@@ -23,11 +28,14 @@ prepare() {
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
esac esac
done done
cp "$srcdir"/crt-arm-Scrt1.s crt/arm/Scrt1.s
} }
build() { build() {
local _ldflags
cd "$_builddir" cd "$_builddir"
LDFLAGS="-Wl,-soname,libc-musl-${CARCH}.so" \ [ "${CTARGET#*musl}" = "$CTARGET" ] && _ldflags="-Wl,-soname,libc-musl-${CARCH}.so"
LDFLAGS="$LDFLAGS $_ldflags" \
./configure --prefix=/usr \ ./configure --prefix=/usr \
--libdir=/lib \ --libdir=/lib \
--sysconfdir=/etc \ --sysconfdir=/etc \
...@@ -49,6 +57,15 @@ crosstool() { ...@@ -49,6 +57,15 @@ crosstool() {
mv "$pkgdir"/usr/bin/musl-gcc "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/musl-gcc "$subpkgdir"/usr/bin
} }
md5sums="8998be253b6f0880a1ce00d85dbae9c5 musl-0.9.10.tar.gz" md5sums="70b17ca5c847e74e1c77fe8284bb1fa4 musl-0.9.11.tar.gz
sha256sums="71fc00733a3ee45fab342870ccd84d33d079e64f2d6fdcfb8b463a769c3ff391 musl-0.9.10.tar.gz" 1565f77513aa6779057ff184a2f91073 0001-fix-Makefile-so-make-install-works-before-include-bi.patch
sha512sums="a31b4dc367672dd3056476b4e7a5c7affd81d33ead2427e043b94da8251167d93178af5ef43ad962354d18eb260435bb3968a3a8f2f684c89d0bc74a32304936 musl-0.9.10.tar.gz" 76e0b13d63a6665b3f9ea3d3b00fecdb 0002-add-stubs-for-additional-legacy-ether.h-functions.patch
74917fb9427ccfa696d5c4969b0148bd crt-arm-Scrt1.s"
sha256sums="8b81fd9b71becb7b674ea93fd65d82a039fab79ab738957a5e9ee47ba08a13fd musl-0.9.11.tar.gz
60e38a633d35eb44c7b12b3a2b0ea570c9462af7f966a9fcea4382fe6e6e6c6f 0001-fix-Makefile-so-make-install-works-before-include-bi.patch
6c916f34bb2dc89fc3de6786d9b7e2d2b829d9020e97097e46b97071be09405a 0002-add-stubs-for-additional-legacy-ether.h-functions.patch
f622e052c674592487b711e87c5d1fb861a5240454cccdf9f6060247bbbb0255 crt-arm-Scrt1.s"
sha512sums="7ca852eda3be7b34bfdaf1eb9e7d435987d5177f865737b211e62f4037825cc322436e1ff49c3f875b3a20679f6f21ba5ffff271d03d3d03c7a97854f4f51832 musl-0.9.11.tar.gz
80d9e3594c4f7471ea404216b40a44831bfa930f81792e566e83d7e1a158ee5d5f75129b67536c969f10fbe96aa549326ba461229fb0a08e0a3fd1bc569f95fc 0001-fix-Makefile-so-make-install-works-before-include-bi.patch
24415afa48c9e918c4c7a0c1e5a38bd150d03e92cde6bf709460c713de49a61128ea93103af601a54a6cf164bcedd304aa34933e97053e1b4ab41584ce44f768 0002-add-stubs-for-additional-legacy-ether.h-functions.patch
2c1214ebd5b053242e613e193758d22a324ab66ac773974c851603469b8c392d22e38a1a81a5fa10dfe2ba1cd2f1fb34d0b543ddae9bdbe17e7796334b809ce0 crt-arm-Scrt1.s"
.weak _init
.weak _fini
.text
.global _start
_start:
mov fp,#0
mov lr,#0
pop { a2 }
mov a3, sp
push { a3 }
push { a1 }
ldr sl, .L_GOT
adr a4, .L_GOT
add sl, sl, a4
ldr ip, .L_GOT+4
ldr ip, [sl, ip]
push { ip }
ldr a4, .L_GOT+8
ldr a4, [sl, a4]
ldr a1, .L_GOT+12
ldr a1, [sl, a1]
bl __libc_start_main(PLT)
1: b 1b
.align 2
.L_GOT:
.word _GLOBAL_OFFSET_TABLE_ - .L_GOT
.word _fini(GOT)
.word _init(GOT)
.word main(GOT)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment