From f8df3862252ef63ea3d78dc494c49c7fd49f3e82 Mon Sep 17 00:00:00 2001 From: William Pitcock Date: Mon, 24 Mar 2014 02:35:34 +0000 Subject: main/xen: further work on musl --- main/xen/APKBUILD | 8 +++++++ main/xen/musl-support.patch | 54 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 main/xen/musl-support.patch (limited to 'main') diff --git a/main/xen/APKBUILD b/main/xen/APKBUILD index fadd551e7..068c1ba91 100644 --- a/main/xen/APKBUILD +++ b/main/xen/APKBUILD @@ -41,6 +41,8 @@ source="http://bits.xensource.com/oss-xen/release/$pkgver/$pkgname-$pkgver.tar.g init-xenstore-domain.patch + musl-support.patch + xenstored.initd xenstored.confd xenconsoled.initd @@ -75,6 +77,9 @@ prepare() { msg "Updating config.sub..." update_config_sub || return 1 + msg "Autoreconf..." + autoreconf || return 1 + unset CFLAGS unset LDFLAGS } @@ -211,6 +216,7 @@ f8ea5786b0a6157b9cb3e67e323b592c qemu-xen-websocket-plain-hack.patch e449bb3359b490804ffc7b0ae08d62a0 hotplug-vif-vtrill.patch 229539a822e14a6a62babffd71ecfbf3 0001-ipxe-dont-clobber-ebp.patch 08a30d56902b660f5102a5c208e545c9 init-xenstore-domain.patch +e564960a1a07c6ccb992445f9072628f musl-support.patch 3178b2ccd06c608b17444231831d4245 xenstored.initd d86504e12f05deca6b3eeeb90157160e xenstored.confd ed262f15fb880badb53575539468646c xenconsoled.initd @@ -240,6 +246,7 @@ f34590761b627d69d2033c1350f2403e9d572b2172e852e3b30e7630bc009a9f qemu-xen-vnc-r dd1e784bc455eb62cb85b3fa24bfc34f575ceaab9597ef6a2f1ee7ff7b3cae0a hotplug-vif-vtrill.patch 751ef06569de66578b8713dc170976832b0671ac2696f32eb9ad69d60332d594 0001-ipxe-dont-clobber-ebp.patch 0204d69804e83864cd6b2122f51b9c1940588158a35c159a7ef0c3b8fb0af4cb init-xenstore-domain.patch +1c8f5a7347b8bf999fcce46bcc4e405db4446538f4fcef2198216dbf8c7866da musl-support.patch 6ba1fb78d28c6acd47348b79f14620dc6fdd3308580e6a1e82a5e7fb06ff6de0 xenstored.initd 991bb7c9da02941556e29714bd96b26e39e57e0a5b514eadd78d9bfa3fa5a9dc xenstored.confd 93bea2eb90ea1b4628854c8141dd351bbd1fbc5959b12795447ea933ad025f01 xenconsoled.initd @@ -269,6 +276,7 @@ a52aa303dd3d9abae3ddb3af788b1f1f7a6bd9eb0c13f67f0995190238f7638f7909ea7d7bf7d778 f095ea373f36381491ad36f0662fb4f53665031973721256b23166e596318581da7cbb0146d0beb2446729adfdb321e01468e377793f6563a67d68b8b0f7ffe3 hotplug-vif-vtrill.patch c3a1b270347a99c8ce21118010ad8d817b4462a31cc5c75352faa7086969ef0646f3f4d0922d85c2e504cff091ce7e9fe79c92f983c2ba4af2fae85c52c3835a 0001-ipxe-dont-clobber-ebp.patch 475eb800660dc928914b8c15562f18f24d6e7a76f4cc7bed9249ce52d444c29aec1aef843eb37ade0c7c9616195bbbc1606a3195e25b2bd4b6a1d1af5f69256e init-xenstore-domain.patch +8603b61cdba9f6a42638d2c1b97c52fd3f67058c08e639d13701e006751fc40f8c18d004f0c1d7f14a6130a8bc2868287d0f18dddf8e9a3d6595119db06e4ace musl-support.patch 0329596bde7227a9f2b5a8f50c0bc404b45765384b6bade164ec3549fde5a667972f9f5659fecc04db97539e3acc5147f16e1da430c418a2a1bff18148044900 xenstored.initd 093f7fbd43faf0a16a226486a0776bade5dc1681d281c5946a3191c32d74f9699c6bf5d0ab8de9d1195a2461165d1660788e92a3156c9b3c7054d7b2d52d7ff0 xenstored.confd 12f981b2459c65d66e67ec0b32d0d19b95a029bc54c2a79138cfe488d3524a22e51860f755abfe25ddcdaf1b27f2ded59b6e350b9d5f8791193d00e2d3673137 xenconsoled.initd diff --git a/main/xen/musl-support.patch b/main/xen/musl-support.patch new file mode 100644 index 000000000..8236a927d --- /dev/null +++ b/main/xen/musl-support.patch @@ -0,0 +1,54 @@ +--- xen-4.3.1.orig/m4/ptyfuncs.m4 ++++ xen-4.3.1/m4/ptyfuncs.m4 +@@ -10,7 +10,7 @@ + ]) + AX_SAVEVAR_RESTORE(CPPFLAGS) + AC_CACHE_CHECK([for openpty et al], [ax_cv_ptyfuncs_libs], [ +- for ax_cv_ptyfuncs_libs in -lutil "" NOT_FOUND; do ++ for ax_cv_ptyfuncs_libs in -lc -lutil "" NOT_FOUND; do + if test "x$ax_cv_ptyfuncs_libs" = "xNOT_FOUND"; then + AC_MSG_FAILURE([Unable to find library for openpty and login_tty]) + fi +--- xen-4.3.1.orig/m4/ptyfuncs.m4 ++++ xen-4.3.1/m4/ptyfuncs.m4 +@@ -22,7 +22,6 @@ + #endif + int main(void) { + openpty(0,0,0,0,0); +- login_tty(0); + } + ])],[ + break +--- xen-4.3.1.orig/tools/libxl/libxl_bootloader.c ++++ xen-4.3.1/tools/libxl/libxl_bootloader.c +@@ -85,6 +85,21 @@ + + /*----- synchronous subroutines -----*/ + ++static int setup_console_tty(int fd) ++{ ++ (void) setsid(); ++#ifdef TIOCSCTTY ++ if (ioctl(fd, TIOCSCTTY, (char *)NULL) == -1) ++ return (-1); ++#endif ++ (void) dup2(fd, 0); ++ (void) dup2(fd, 1); ++ (void) dup2(fd, 2); ++ if (fd > 2) ++ (void) close(fd); ++ return (0); ++} ++ + static int setup_xenconsoled_pty(libxl__egc *egc, libxl__bootloader_state *bl, + char *slave_path, size_t slave_path_len) + { +@@ -548,7 +563,7 @@ + + if (!pid) { + /* child */ +- r = login_tty(libxl__carefd_fd(bl->ptys[0].slave)); ++ r = setup_console_tty(libxl__carefd_fd(bl->ptys[0].slave)); + if (r) { LOGE(ERROR, "login_tty failed"); exit(-1); } + libxl__exec(gc, -1, -1, -1, bl->args[0], (char **) bl->args, env); + exit(-1); -- cgit v1.2.3