dracut: detect musl's ldd error message.
This commit is contained in:
parent
cd82866a9e
commit
d36fc37bc6
2 changed files with 25 additions and 12 deletions
|
@ -3,18 +3,8 @@ Portability fixes:
|
||||||
- Use uid_t not __uid_t.
|
- Use uid_t not __uid_t.
|
||||||
- Define _GNU_SOURCE for cpu_set_t and others.
|
- Define _GNU_SOURCE for cpu_set_t and others.
|
||||||
- Include string.h for strncmp().
|
- Include string.h for strncmp().
|
||||||
|
- Detect musl's ldd error message.
|
||||||
|
|
||||||
--- install/dracut-install.c 2014-10-24 13:19:58.000000000 +0200
|
|
||||||
+++ install/dracut-install.c 2014-12-28 07:59:14.083865632 +0100
|
|
||||||
@@ -222,7 +222,7 @@ static int cp(const char *src, const cha
|
|
||||||
if (ret == 0) {
|
|
||||||
struct timeval tv[2];
|
|
||||||
if (fchown(dest_desc, sb.st_uid, sb.st_gid) != 0)
|
|
||||||
- if(fchown(dest_desc, (__uid_t) - 1, sb.st_gid) != 0)
|
|
||||||
+ if(fchown(dest_desc, (uid_t) - 1, sb.st_gid) != 0)
|
|
||||||
log_error("Failed to chown %s: %m", dst);
|
|
||||||
tv[0].tv_sec = sb.st_atime;
|
|
||||||
tv[0].tv_usec = 0;
|
|
||||||
--- install/util.h 2014-10-24 13:19:58.000000000 +0200
|
--- install/util.h 2014-10-24 13:19:58.000000000 +0200
|
||||||
+++ install/util.h 2014-12-28 07:58:51.723864634 +0100
|
+++ install/util.h 2014-12-28 07:58:51.723864634 +0100
|
||||||
@@ -20,6 +20,8 @@
|
@@ -20,6 +20,8 @@
|
||||||
|
@ -34,3 +24,26 @@ Portability fixes:
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#include <sched.h>
|
#include <sched.h>
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
|
--- install/dracut-install.c.orig 2014-10-24 13:19:58.000000000 +0200
|
||||||
|
+++ install/dracut-install.c 2014-12-30 10:16:25.850635694 +0100
|
||||||
|
@@ -222,7 +222,7 @@ static int cp(const char *src, const cha
|
||||||
|
if (ret == 0) {
|
||||||
|
struct timeval tv[2];
|
||||||
|
if (fchown(dest_desc, sb.st_uid, sb.st_gid) != 0)
|
||||||
|
- if(fchown(dest_desc, (__uid_t) - 1, sb.st_gid) != 0)
|
||||||
|
+ if(fchown(dest_desc, (uid_t) - 1, sb.st_gid) != 0)
|
||||||
|
log_error("Failed to chown %s: %m", dst);
|
||||||
|
tv[0].tv_sec = sb.st_atime;
|
||||||
|
tv[0].tv_usec = 0;
|
||||||
|
@@ -388,6 +388,11 @@ static int resolve_deps(const char *src)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ /* musl ldd */
|
||||||
|
+ if (strstr(buf, "Not a valid dynamic program"))
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ /* glibc */
|
||||||
|
if (strstr(buf, "not a dynamic executable"))
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Template file for 'dracut'
|
# Template file for 'dracut'
|
||||||
pkgname=dracut
|
pkgname=dracut
|
||||||
version=040
|
version=040
|
||||||
revision=3
|
revision=4
|
||||||
build_style=meta
|
build_style=meta
|
||||||
hostmakedepends="libxslt docbook-xsl asciidoc"
|
hostmakedepends="libxslt docbook-xsl asciidoc"
|
||||||
depends="psmisc cpio"
|
depends="psmisc cpio"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue