summaryrefslogtreecommitdiff
path: root/sysutils
diff options
context:
space:
mode:
authorjoerg <joerg@pkgsrc.org>2015-10-19 16:40:41 +0000
committerjoerg <joerg@pkgsrc.org>2015-10-19 16:40:41 +0000
commit625ea3857d18fd2a30569e403e49f43b0af52d9e (patch)
tree4ad94943533bbcdbeda01a38699ad5c7259910e5 /sysutils
parent098300303d9e462c38e8506c7b92c0596be43e6f (diff)
downloadpkgsrc-625ea3857d18fd2a30569e403e49f43b0af52d9e.tar.gz
Don't depend on the compiler to optimize ffsll away, explicitly use the
builtin. Fix obvious logic error in libxl. Disable the use of global register variables for clang. Lesser evil, HVM users should use newer xentools or GCC.
Diffstat (limited to 'sysutils')
-rw-r--r--sysutils/xentools42/Makefile4
-rw-r--r--sysutils/xentools42/distinfo8
-rw-r--r--sysutils/xentools42/patches/patch-libxl_libxl__save__helper.c14
-rw-r--r--sysutils/xentools42/patches/patch-libxl_xl.c15
-rw-r--r--sysutils/xentools42/patches/patch-qemu-xen_dyngen-exec.h20
-rw-r--r--sysutils/xentools42/patches/patch-qemu-xen_pc-bios_optionrom_Makefile13
-rw-r--r--sysutils/xentools42/patches/patch-qemu-xen_target-i386_op__helper.c15
-rw-r--r--sysutils/xentools42/patches/patch-qemu-xen_xen-all.c15
8 files changed, 101 insertions, 3 deletions
diff --git a/sysutils/xentools42/Makefile b/sysutils/xentools42/Makefile
index 72354629207..09ea1d9acab 100644
--- a/sysutils/xentools42/Makefile
+++ b/sysutils/xentools42/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.36 2015/10/03 00:56:02 jnemeth Exp $
+# $NetBSD: Makefile,v 1.37 2015/10/19 16:40:41 joerg Exp $
VERSION= 4.2.5
VERSION_IPXE= 1.0.0
@@ -248,7 +248,7 @@ EXTRA_CFLAGS+= -Wno-error=ignored-attributes -no-integrated-as \
-Wno-error=unused-function -Wno-error=format \
-Wno-error=unused-const-variable \
-Wno-error=gnu-designator -Wno-error=uninitialized \
- -Wno-error=parentheses-equality
+ -Wno-error=parentheses-equality -Wno-error=enum-conversion
BUILDLINK_TRANSFORM+= rm:-falign-jumps=1 rm:-falign-loops=1 \
rm:-mpreferred-stack-boundary=2
.endif
diff --git a/sysutils/xentools42/distinfo b/sysutils/xentools42/distinfo
index 9d32a2bddcc..54a7832467a 100644
--- a/sysutils/xentools42/distinfo
+++ b/sysutils/xentools42/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.19 2015/08/23 16:17:12 spz Exp $
+$NetBSD: distinfo,v 1.20 2015/10/19 16:40:41 joerg Exp $
SHA1 (ipxe-git-v1.0.0.tar.gz) = da052c8de5f3485fe0253c19cf52ed6d72528485
RMD160 (ipxe-git-v1.0.0.tar.gz) = dcd9b6eaafa1ce05c1ebf2a15f2f73ad7a8c5547
@@ -53,6 +53,8 @@ SHA1 (patch-libfsimage_ufs_ufs.h) = 598d2c9d8e563c9ed6eb32e0877a5ea8d865e2ca
SHA1 (patch-libxc_xc__netbsd.c) = 1ed0804174badf9e0c788a8ff0b1797459663d68
SHA1 (patch-libxl_libxl__create.c) = 1706f782bcd3bea19b8127e9aefe8bda4a4061de
SHA1 (patch-libxl_libxl__internal.h) = bc2865f5c14b1fb9df1f9ad77d3be4a1494068c6
+SHA1 (patch-libxl_libxl__save__helper.c) = 1592f07e30db119905ae1efa9bd272fa75f60651
+SHA1 (patch-libxl_xl.c) = f7ca33eac8ce6c2383d985c82bf8cb406588e2c9
SHA1 (patch-ocaml_common.make) = a809e3bed475cdffea3cb7ae480c8fe7af6aa798
SHA1 (patch-ocaml_xenstored_Makefile) = a0e91b946307a610490a492d4d56dfe426bddb63
SHA1 (patch-ocaml_xenstored_define.ml) = c0772dff8e59f495a0ebe17a905aed04a29f2469
@@ -75,8 +77,12 @@ SHA1 (patch-qemu-xen-traditional_hw_pt-msi.h) = 8c9f2c39ddab9b5efc7e9a1a10aad4d7
SHA1 (patch-qemu-xen-traditional_i386-dm_hookstarget.mak) = dbefbb3c32fd9d1af4b5d32ef269233d641a0bd4
SHA1 (patch-qemu-xen-traditional_xen-hooks.mak) = 07426cfb7a552032b56aad7fc679e74a7bdd67fe
SHA1 (patch-qemu-xen_audio_audio.c) = 996bbabfc195e4809d9343da31dc924e2fb3b22f
+SHA1 (patch-qemu-xen_dyngen-exec.h) = fad93fe2f570c27edcba961b0dc4507e56258a1a
SHA1 (patch-qemu-xen_fpu_softfloat-specialize.h) = 25aada20285cc2f9f4e91811a42c2f55da63758f
SHA1 (patch-qemu-xen_ioport.c) = b88f7b3f8ea9ea64aefe6048ffd950c6a452c9cf
SHA1 (patch-qemu-xen_memory.c) = 8c5440055111a5c2b350346b8db06ec15912bc4c
+SHA1 (patch-qemu-xen_pc-bios_optionrom_Makefile) = c3f35cb5f9ab46834351efe683562ddf8f28b9cf
SHA1 (patch-qemu-xen_qemu-doc.texi) = 843adbe6a37fe5d600b0cf61d6bd78bf527aa4a6
+SHA1 (patch-qemu-xen_target-i386_op__helper.c) = a3fd45a03dc739234712bc9f2dba4fb414cced96
+SHA1 (patch-qemu-xen_xen-all.c) = 4c8c8ae1cffc88db7cfa5a56dfef9e0ee35047db
SHA1 (patch-xentrace_Makefile) = 751b59769254509c5da199c5498d428f9788b7e5
diff --git a/sysutils/xentools42/patches/patch-libxl_libxl__save__helper.c b/sysutils/xentools42/patches/patch-libxl_libxl__save__helper.c
new file mode 100644
index 00000000000..a1e0e910d9f
--- /dev/null
+++ b/sysutils/xentools42/patches/patch-libxl_libxl__save__helper.c
@@ -0,0 +1,14 @@
+$NetBSD: patch-libxl_libxl__save__helper.c,v 1.1 2015/10/19 16:40:41 joerg Exp $
+
+Avoid format string warnings.
+
+--- libxl/libxl_save_helper.c.orig 2015-10-09 22:56:13.000000000 +0000
++++ libxl/libxl_save_helper.c
+@@ -92,6 +92,7 @@ typedef struct {
+ xentoollog_logger vtable;
+ } xentoollog_logger_tellparent;
+
++__attribute__((__format__(__printf__, 5, 0)))
+ static void tellparent_vmessage(xentoollog_logger *logger_in,
+ xentoollog_level level,
+ int errnoval,
diff --git a/sysutils/xentools42/patches/patch-libxl_xl.c b/sysutils/xentools42/patches/patch-libxl_xl.c
new file mode 100644
index 00000000000..23e94f2c8a1
--- /dev/null
+++ b/sysutils/xentools42/patches/patch-libxl_xl.c
@@ -0,0 +1,15 @@
+$NetBSD: patch-libxl_xl.c,v 1.1 2015/10/19 16:40:41 joerg Exp $
+
+Fix obviously incorrect logic.
+
+--- libxl/xl.c.orig 2015-10-09 22:54:31.000000000 +0000
++++ libxl/xl.c
+@@ -80,7 +80,7 @@ static void parse_global_config(const ch
+ lockfile = strdup(XL_LOCK_FILE);
+ }
+
+- if (!lockfile < 0) {
++ if (lockfile == 0) {
+ fprintf(stderr, "failed to allocate lockdir \n");
+ exit(1);
+ }
diff --git a/sysutils/xentools42/patches/patch-qemu-xen_dyngen-exec.h b/sysutils/xentools42/patches/patch-qemu-xen_dyngen-exec.h
new file mode 100644
index 00000000000..7c537bfc61d
--- /dev/null
+++ b/sysutils/xentools42/patches/patch-qemu-xen_dyngen-exec.h
@@ -0,0 +1,20 @@
+$NetBSD: patch-qemu-xen_dyngen-exec.h,v 1.1 2015/10/19 16:40:41 joerg Exp $
+
+--- qemu-xen/dyngen-exec.h.orig 2015-10-09 22:41:38.000000000 +0000
++++ qemu-xen/dyngen-exec.h
+@@ -19,6 +19,7 @@
+ #if !defined(__DYNGEN_EXEC_H__)
+ #define __DYNGEN_EXEC_H__
+
++#if !defined(__clang__)
+ #if defined(CONFIG_TCG_INTERPRETER)
+ /* The TCG interpreter does not need a special register AREG0,
+ * but it is possible to use one by defining AREG0.
+@@ -59,6 +60,7 @@
+ #else
+ #error unsupported CPU
+ #endif
++#endif
+
+ #if defined(AREG0)
+ register CPUState *env asm(AREG0);
diff --git a/sysutils/xentools42/patches/patch-qemu-xen_pc-bios_optionrom_Makefile b/sysutils/xentools42/patches/patch-qemu-xen_pc-bios_optionrom_Makefile
new file mode 100644
index 00000000000..bd44fba8cd8
--- /dev/null
+++ b/sysutils/xentools42/patches/patch-qemu-xen_pc-bios_optionrom_Makefile
@@ -0,0 +1,13 @@
+$NetBSD: patch-qemu-xen_pc-bios_optionrom_Makefile,v 1.1 2015/10/19 16:40:41 joerg Exp $
+
+--- qemu-xen/pc-bios/optionrom/Makefile.orig 2015-10-09 22:32:24.000000000 +0000
++++ qemu-xen/pc-bios/optionrom/Makefile
+@@ -11,7 +11,7 @@ $(call set-vpath, $(SRC_PATH)/pc-bios/op
+
+ CFLAGS := -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
+ CFLAGS += -I$(SRC_PATH)
+-CFLAGS += $(call cc-option, $(CFLAGS), -fno-stack-protector)
++CFLAGS += $(call cc-option, $(CFLAGS), -fno-stack-protector) ${EXTRA_CFLAGS}
+ QEMU_CFLAGS = $(CFLAGS)
+
+ build-all: multiboot.bin linuxboot.bin
diff --git a/sysutils/xentools42/patches/patch-qemu-xen_target-i386_op__helper.c b/sysutils/xentools42/patches/patch-qemu-xen_target-i386_op__helper.c
new file mode 100644
index 00000000000..1b6a73f9d48
--- /dev/null
+++ b/sysutils/xentools42/patches/patch-qemu-xen_target-i386_op__helper.c
@@ -0,0 +1,15 @@
+$NetBSD: patch-qemu-xen_target-i386_op__helper.c,v 1.1 2015/10/19 16:40:41 joerg Exp $
+
+--- qemu-xen/target-i386/op_helper.c.orig 2015-10-09 23:00:48.000000000 +0000
++++ qemu-xen/target-i386/op_helper.c
+@@ -68,6 +68,10 @@ static inline target_long lshift(target_
+ #define MANTD(fp) (fp.l.lower)
+ #define BIASEXPONENT(fp) fp.l.upper = (fp.l.upper & ~(0x7fff)) | EXPBIAS
+
++#if !defined(AREG0)
++CPUState *env;
++#endif
++
+ static inline void fpush(void)
+ {
+ env->fpstt = (env->fpstt - 1) & 7;
diff --git a/sysutils/xentools42/patches/patch-qemu-xen_xen-all.c b/sysutils/xentools42/patches/patch-qemu-xen_xen-all.c
new file mode 100644
index 00000000000..60835a17a69
--- /dev/null
+++ b/sysutils/xentools42/patches/patch-qemu-xen_xen-all.c
@@ -0,0 +1,15 @@
+$NetBSD: patch-qemu-xen_xen-all.c,v 1.1 2015/10/19 16:40:41 joerg Exp $
+
+ffsl doesn't exist on NetBSD, so just force the compiler builtin.
+
+--- qemu-xen/xen-all.c.orig 2015-10-09 22:51:02.000000000 +0000
++++ qemu-xen/xen-all.c
+@@ -490,7 +490,7 @@ static int xen_sync_dirty_bitmap(XenIOSt
+ for (i = 0; i < ARRAY_SIZE(bitmap); i++) {
+ unsigned long map = bitmap[i];
+ while (map != 0) {
+- j = ffsl(map) - 1;
++ j = __builtin_ffsl(map) - 1;
+ map &= ~(1ul << j);
+ target_phys_addr_t todirty = vram_offset + (i * width + j) * TARGET_PAGE_SIZE;
+ xen_modified_memory(todirty, TARGET_PAGE_SIZE);