From 83b74e3ea9e72f644c001383b9632844b434d6ca Mon Sep 17 00:00:00 2001 From: Juan RP Date: Thu, 15 Jan 2015 12:11:35 +0100 Subject: [PATCH] musl{,-bootstrap}: update to 1.1.6. --- srcpkgs/musl-bootstrap/template | 4 +- ...nker-for-new-binutils-versions-that-.patch | 31 --- srcpkgs/musl/patches/getopt.patch | 233 ------------------ srcpkgs/musl/template | 6 +- 4 files changed, 5 insertions(+), 269 deletions(-) delete mode 100644 srcpkgs/musl/patches/0010-adapt-dynamic-linker-for-new-binutils-versions-that-.patch delete mode 100644 srcpkgs/musl/patches/getopt.patch diff --git a/srcpkgs/musl-bootstrap/template b/srcpkgs/musl-bootstrap/template index c74d709930b..25b6066862b 100644 --- a/srcpkgs/musl-bootstrap/template +++ b/srcpkgs/musl-bootstrap/template @@ -1,6 +1,6 @@ # Template file for 'musl-bootstrap'. pkgname=musl-bootstrap -version=1.1.5 +version=1.1.6 revision=1 lib32disabled=yes wrksrc="musl-${version}" @@ -11,7 +11,7 @@ maintainer="Juan RP " license="MIT" homepage="http://www.musl-libc.org/" distfiles="http://www.musl-libc.org/releases/musl-${version}.tar.gz" -checksum=352362b1724cc9740f4c3ce0fe02aae45e4de9809ea4ac961f31aedc11b87393 +checksum=5a0160c55c540d5b90158617a57647f1b03209f58d9ee70dbce19d1115b4f1b4 CFLAGS="-fno-toplevel-reorder -fno-stack-protector" diff --git a/srcpkgs/musl/patches/0010-adapt-dynamic-linker-for-new-binutils-versions-that-.patch b/srcpkgs/musl/patches/0010-adapt-dynamic-linker-for-new-binutils-versions-that-.patch deleted file mode 100644 index fd46c58b04b..00000000000 --- a/srcpkgs/musl/patches/0010-adapt-dynamic-linker-for-new-binutils-versions-that-.patch +++ /dev/null @@ -1,31 +0,0 @@ -From d8dc2b7c0289b12eeef4feff65e3c918111b0f55 Mon Sep 17 00:00:00 2001 -From: Rich Felker -Date: Sun, 23 Nov 2014 16:17:57 -0500 -Subject: [PATCH] adapt dynamic linker for new binutils versions that omit - DT_RPATH - -the new DT_RUNPATH semantics for search order are always used, and -since binutils had always set both DT_RPATH and DT_RUNPATH when the -latter was used, processing only DT_RPATH worked fine. however, recent -binutils has stopped generating DT_RPATH when DT_RUNPATH is used, -which broke support for this feature completely. ---- - src/ldso/dynlink.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/ldso/dynlink.c b/src/ldso/dynlink.c -index 1de430c..00af886 100644 ---- src/ldso/dynlink.c -+++ src/ldso/dynlink.c -@@ -645,6 +645,8 @@ static void decode_dyn(struct dso *p) - p->hashtab = (void *)(p->base + dyn[DT_HASH]); - if (dyn[0]&(1<rpath_orig = (void *)(p->strings + dyn[DT_RPATH]); -+ if (dyn[0]&(1<rpath_orig = (void *)(p->strings + dyn[DT_RUNPATH]); - if (search_vec(p->dynv, dyn, DT_GNU_HASH)) - p->ghashtab = (void *)(p->base + *dyn); - if (search_vec(p->dynv, dyn, DT_VERSYM)) --- -2.2.0 - diff --git a/srcpkgs/musl/patches/getopt.patch b/srcpkgs/musl/patches/getopt.patch deleted file mode 100644 index f6f9c01b1f9..00000000000 --- a/srcpkgs/musl/patches/getopt.patch +++ /dev/null @@ -1,233 +0,0 @@ ---- src/misc/getopt.c 2014-10-14 19:32:42.000000000 +0200 -+++ src/misc/getopt.c 2014-12-28 12:26:01.385579878 +0100 -@@ -4,6 +4,7 @@ - #include - #include - #include "libc.h" -+#include "locale_impl.h" - - char *optarg; - int optind=1, opterr=1, optopt, __optpos, __optreset=0; -@@ -11,6 +12,18 @@ int optind=1, opterr=1, optopt, __optpos - #define optpos __optpos - weak_alias(__optreset, optreset); - -+void __getopt_msg(const char *a, const char *b, const char *c, size_t l) -+{ -+ FILE *f = stderr; -+ b = __lctrans_cur(b); -+ flockfile(f); -+ fwrite(a, strlen(a), 1, f) -+ && fwrite(b, strlen(b), 1, f) -+ && fwrite(c, l, 1, f) -+ && putc('\n', f); -+ funlockfile(f); -+} -+ - int getopt(int argc, char * const argv[], const char *optstring) - { - int i; -@@ -24,8 +37,20 @@ int getopt(int argc, char * const argv[] - optind = 1; - } - -- if (optind >= argc || !argv[optind] || argv[optind][0] != '-' || !argv[optind][1]) -+ if (optind >= argc || !argv[optind]) -+ return -1; -+ -+ if (argv[optind][0] != '-') { -+ if (optstring[0] == '-') { -+ optarg = argv[optind++]; -+ return 1; -+ } - return -1; -+ } -+ -+ if (!argv[optind][1]) -+ return -1; -+ - if (argv[optind][1] == '-' && !argv[optind][2]) - return optind++, -1; - -@@ -43,30 +68,31 @@ int getopt(int argc, char * const argv[] - optpos = 0; - } - -- for (i=0; (l = mbtowc(&d, optstring+i, MB_LEN_MAX)) && d!=c; i+=l>0?l:1); -+ if (optstring[0] == '-' || optstring[0] == '+') -+ optstring++; -+ -+ i = 0; -+ d = 0; -+ do { -+ l = mbtowc(&d, optstring+i, MB_LEN_MAX); -+ if (l>0) i+=l; else i++; -+ } while (l && d != c); - - if (d != c) { -- if (optstring[0] != ':' && opterr) { -- write(2, argv[0], strlen(argv[0])); -- write(2, ": illegal option: ", 18); -- write(2, optchar, k); -- write(2, "\n", 1); -- } -+ if (optstring[0] != ':' && opterr) -+ __getopt_msg(argv[0], ": unrecognized option: ", optchar, k); - return '?'; - } -- if (optstring[i+1] == ':') { -- if (optind >= argc) { -+ if (optstring[i] == ':') { -+ if (optstring[i+1] == ':') optarg = 0; -+ else if (optind >= argc) { - if (optstring[0] == ':') return ':'; -- if (opterr) { -- write(2, argv[0], strlen(argv[0])); -- write(2, ": option requires an argument: ", 31); -- write(2, optchar, k); -- write(2, "\n", 1); -- } -+ if (opterr) __getopt_msg(argv[0], -+ ": option requires an argument: ", -+ optchar, k); - return '?'; - } -- if (optstring[i+2] == ':') optarg = 0; -- if (optstring[i+2] != ':' || optpos) { -+ if (optstring[i+1] != ':' || optpos) { - optarg = argv[optind++] + optpos; - optpos = 0; - } ---- src/misc/getopt_long.c 2014-10-14 19:32:42.000000000 +0200 -+++ src/misc/getopt_long.c 2014-12-28 12:26:01.385579878 +0100 -@@ -2,37 +2,106 @@ - #include - #include - #include -+#include - - extern int __optpos, __optreset; - -+static void permute(char *const *argv, int dest, int src) -+{ -+ char **av = (char **)argv; -+ char *tmp = av[src]; -+ int i; -+ for (i=src; i>dest; i--) -+ av[i] = av[i-1]; -+ av[dest] = tmp; -+} -+ -+void __getopt_msg(const char *, const char *, const char *, size_t); -+ -+static int __getopt_long_core(int argc, char *const *argv, const char *optstring, const struct option *longopts, int *idx, int longonly); -+ - static int __getopt_long(int argc, char *const *argv, const char *optstring, const struct option *longopts, int *idx, int longonly) - { -+ int ret, skipped, resumed; -+ const char *optstring2 = optstring + 1; - if (!optind || __optreset) { - __optreset = 0; - __optpos = 0; - optind = 1; - } -- if (optind >= argc || !argv[optind] || argv[optind][0] != '-') return -1; -- if ((longonly && argv[optind][1]) || -- (argv[optind][1] == '-' && argv[optind][2])) -- { -+ if (optind >= argc || !argv[optind]) return -1; -+ skipped = optind; -+ if (optstring[0] != '+' && optstring[0] != '-') { - int i; -- for (i=0; longopts[i].name; i++) { -+ for (i=optind; ; i++) { -+ if (i >= argc || !argv[i]) return -1; -+ if (argv[i][0] == '-' && argv[i][1]) break; -+ } -+ optind = i; -+ optstring2 = optstring; -+ } -+ resumed = optind; -+ ret = __getopt_long_core(argc, argv, optstring2, longopts, idx, longonly); -+ if (resumed > skipped) { -+ int i, cnt = optind-resumed; -+ for (i=0; i