In Message <55fe7db6-26f0-4f16-48db-9096f7c4cb35%marples.name@localhost>,
Roy Marples <roy%marples.name@localhost>wrote:
=>On 17/07/2017 09:07, coypu%sdf.org@localhost wrote:
=>> On Mon, Jul 17, 2017 at 08:58:27AM +0100, Roy Marples wrote:
=>>> This is a lot better, but seems to fail at the last for me, could be a
=>>> clang specific issue.
=>>>
=>>> prelink.o: In function `xsm_default_action':
=>>> /usr/obj/pkgsrc/sysutils/xenkernel48/work/xen-4.8.0/xen/include/xsm/dummy.h:80:
=>>> undefined reference to `__xsm_action_mismatch_detected'
=>>> /usr/obj/pkgsrc/sysutils/xenkernel48/work/xen-4.8.0/xen/include/xsm/dummy.h:80:(.text+0xbce6d):
=>>> relocation truncated to fit: R_X86_64_PC32 against undefined symbol
=>>> `__xsm_action_mismatch_detected'
=>>> ld: /usr/obj/pkgsrc/sysutils/xenkernel48/work/xen-4.8.0/xen/.xen-syms.0:
=>>> hidden symbol `__xsm_action_mismatch_detected' isn't defined
=>>> ld: final link failed: Bad value
=>>
=>> https://bugs.llvm.org/show_bug.cgi?id=32003
=>> https://github.com/freebsd/freebsd-ports/blob/master/emulators/xen-kernel/files/0002-build-clang-fix-XSM-dummy-policy-when-using-clang-4..patch
=>> https://patchwork.kernel.org/patch/9605951/
=>>
=>
=>Thanks.
=>I already found the upstream commit and have a build in progress.
=>I then have the challenge of getting tools48 to build as well before I
=>commit and test as last time I looked that was broken too.
The patch I used to get xentools46 working is included below.
I suspect similar changes would work for xentools48.
Gary Duzan
Index: Makefile
===================================================================
RCS file: /usr/netbsd-cvs/pkgsrc/sysutils/xentools46/Makefile,v
retrieving revision 1.17
diff -b -u -p -r1.17 Makefile
--- Makefile 11 Jul 2017 14:19:21 -0000 1.17
+++ Makefile 17 Jul 2017 11:54:34 -0000
@@ -61,6 +61,8 @@ MAKE_ENV+= NO_WERROR=1
#MAKE_ENV+= INSTALL_DATA=${BSD_INSTALL_DATA}
#MAKE_ENV+= INSTALL_PROG=${BSD_INSTALL_PROGRAM}
+PKGSRC_USE_SSP= no
+
PYTHON_VERSIONS_INCOMPATIBLE= 34 35 36
PY_PATCHPLIST= yes
Index: distinfo
===================================================================
RCS file: /usr/netbsd-cvs/pkgsrc/sysutils/xentools46/distinfo,v
retrieving revision 1.7
diff -b -u -p -r1.7 distinfo
--- distinfo 21 Mar 2017 22:52:52 -0000 1.7
+++ distinfo 17 Jul 2017 11:54:34 -0000
@@ -45,7 +45,7 @@ SHA1 (patch-libxl_libxl_internal.h) = 73
SHA1 (patch-libxl_libxl_uuid.c) = d14286be8ccdbcb5fae544a1968e7b681b63e884
SHA1 (patch-libxl_xl__cmdtable.c) = d149603cac13c996d7800cee94a9df3aaadf9625
SHA1 (patch-libxl_xl_cmdimpl.c) = 7aea48a9761b39cf620dcad2295a257c5fc53c8c
-SHA1 (patch-ocaml_common.make) = 4d4bddca7b5d93489a3f6620af51d95bbe265abb
+SHA1 (patch-ocaml_common.make) = 3e0128846f89fb7b62d06b5eebcd01181c739c73
SHA1 (patch-ocaml_xenstored_Makefile) = 237e26d3ec25d706e16b415f90e0fcc4913e02e5
SHA1 (patch-ocaml_xenstored_define.ml) = 18d6878ae536554e8831f3732d2a8ea1b13a9b63
SHA1 (patch-ocaml_xenstored_utils.ml) = 04997cb9189a3331522c344aa1957e61febfd4d2
Index: patches/patch-ocaml_common.make
===================================================================
RCS file: /usr/netbsd-cvs/pkgsrc/sysutils/xentools46/patches/patch-ocaml_common.make,v
retrieving revision 1.1.1.1
diff -b -u -p -r1.1.1.1 patch-ocaml_common.make
--- patches/patch-ocaml_common.make 4 Jul 2016 07:30:52 -0000 1.1.1.1
+++ patches/patch-ocaml_common.make 17 Jul 2017 11:54:34 -0000
@@ -1,8 +1,8 @@
$NetBSD: patch-ocaml_common.make,v 1.1.1.1 2016/07/04 07:30:52 jnemeth Exp $
---- ocaml/common.make.orig 2015-01-12 17:53:24.000000000 +0100
-+++ ocaml/common.make 2015-01-19 13:16:38.000000000 +0100
-@@ -3,7 +3,7 @@
+--- ocaml/common.make.orig 2017-03-07 16:19:05.000000000 +0000
++++ ocaml/common.make
+@@ -3,7 +3,7 @@ include $(XEN_ROOT)/tools/Rules.mk
CC ?= gcc
OCAMLOPT ?= ocamlopt
OCAMLC ?= ocamlc
@@ -11,3 +11,11 @@ $NetBSD: patch-ocaml_common.make,v 1.1.1
OCAMLDEP ?= ocamldep
OCAMLLEX ?= ocamllex
OCAMLYACC ?= ocamlyacc
+@@ -17,6 +17,6 @@ OCAMLCFLAGS += -g $(OCAMLINCLUDE) -w F -
+
+ VERSION := 4.1
+
+-OCAMLDESTDIR ?= $(DESTDIR)$(shell $(OCAMLFIND) printconf destdir)
++OCAMLDESTDIR ?= $(shell $(OCAMLFIND) printconf destdir)
+
+ o= >$@.new && mv -f $@.new $@