summaryrefslogtreecommitdiff
path: root/lang/ocaml
diff options
context:
space:
mode:
authorjaapb <jaapb@pkgsrc.org>2015-04-17 09:12:12 +0000
committerjaapb <jaapb@pkgsrc.org>2015-04-17 09:12:12 +0000
commit21a0b7bca4bd3a20faa8d02f2b624456b4e6a08b (patch)
tree9f1536ee825a502e792863af9aa4cc2678c2a61b /lang/ocaml
parentb4fb54a8493b9886d086857d95fb574ffde2f21a (diff)
downloadpkgsrc-21a0b7bca4bd3a20faa8d02f2b624456b4e6a08b.tar.gz
Extended gdt's i386 ucontext signal handler patch to amd64. This shouldn't
affect anything that isn't NetBSD/amd64.
Diffstat (limited to 'lang/ocaml')
-rw-r--r--lang/ocaml/Makefile4
-rw-r--r--lang/ocaml/distinfo4
-rw-r--r--lang/ocaml/patches/patch-asmrun_signals_osdep.h30
3 files changed, 31 insertions, 7 deletions
diff --git a/lang/ocaml/Makefile b/lang/ocaml/Makefile
index c876ef2961d..feea6d4070b 100644
--- a/lang/ocaml/Makefile
+++ b/lang/ocaml/Makefile
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.95 2015/04/02 22:40:09 tnn Exp $
+# $NetBSD: Makefile,v 1.96 2015/04/17 09:12:12 jaapb Exp $
.include "Makefile.common"
-PKGREVISION= 1
+PKGREVISION= 2
#CONFIGURE_ARGS+= -no-tk
CONFIGURE_ARGS+= -cc ${CC}
diff --git a/lang/ocaml/distinfo b/lang/ocaml/distinfo
index d95619ae7e6..2cc9be9d650 100644
--- a/lang/ocaml/distinfo
+++ b/lang/ocaml/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.83 2015/04/02 22:40:09 tnn Exp $
+$NetBSD: distinfo,v 1.84 2015/04/17 09:12:12 jaapb Exp $
SHA1 (ocaml-4.02.1.tar.gz) = 6af8c67f2badece81d8e1d1ce70568a16e42313e
RMD160 (ocaml-4.02.1.tar.gz) = fcb30200e9675d92e402b4b7101a032f918f80c1
@@ -9,7 +9,7 @@ SHA1 (patch-asmcomp_power_emit.mlp) = 726e09e4902b96f4790c7a8093eb245dd7028bf4
SHA1 (patch-asmrun_Makefile) = b6301628b71e3fe3553f32342805ae90159cc773
SHA1 (patch-asmrun_arm.S) = af62872815fd9cb996f3ce6a1fbaec5b568b70d1
SHA1 (patch-asmrun_power-bsd.S) = 5428a486835a0254a1768b3157b6b1fdf5ae8dd3
-SHA1 (patch-asmrun_signals_osdep.h) = 0ff83333dd75ecfe8f262b7523231832169986a7
+SHA1 (patch-asmrun_signals_osdep.h) = 1012c7ef67463d2399c3c0fc0ded495b56018d80
SHA1 (patch-byterun_Makefile) = 2b88b35e5ffcccc315542cb814b9e826126acb54
SHA1 (patch-config_auto__aux_gethostbyaddr.c) = ce724831e93081d3e51a122fef14b17543c3221c
SHA1 (patch-config_auto__aux_gethostbyname.c) = f05a6026a18ca7557558383103c6a2fc08caee28
diff --git a/lang/ocaml/patches/patch-asmrun_signals_osdep.h b/lang/ocaml/patches/patch-asmrun_signals_osdep.h
index 68ececdf664..22624a88a7a 100644
--- a/lang/ocaml/patches/patch-asmrun_signals_osdep.h
+++ b/lang/ocaml/patches/patch-asmrun_signals_osdep.h
@@ -1,4 +1,4 @@
-$NetBSD: patch-asmrun_signals_osdep.h,v 1.4 2015/03/14 15:17:15 gdt Exp $
+$NetBSD: patch-asmrun_signals_osdep.h,v 1.5 2015/04/17 09:12:12 jaapb Exp $
Use correct data structures for power architecture; also do signal
handling correctly for i386/NetBSD.
@@ -8,7 +8,31 @@ First hunk taken from upstream tracker at:
--- asmrun/signals_osdep.h.orig 2014-09-28 19:46:24.000000000 +0000
+++ asmrun/signals_osdep.h
-@@ -163,14 +163,24 @@
+@@ -146,6 +146,23 @@
+ #define CONTEXT_YOUNG_PTR (context->sc_r15)
+ #define CONTEXT_FAULTING_ADDRESS ((char *) info->si_addr)
+
++/****************** AMD64, NetBSD */
++
++#elif defined(TARGET_amd64) && defined (SYS_netbsd)
++
++ #include <ucontext.h>
++ #define DECLARE_SIGNAL_HANDLER(name) \
++ static void name(int sig, siginfo_t * info, ucontext_t * context)
++
++ #define SET_SIGACT(sigact,name) \
++ sigact.sa_sigaction = (void (*)(int,siginfo_t *,void *)) (name); \
++ sigact.sa_flags = SA_SIGINFO
++
++ #define CONTEXT_PC (_UC_MACHINE_PC(context))
++ #define CONTEXT_EXCEPTION_POINTER (context->uc_mcontext.gregs[REG_R14])
++ #define CONTEXT_YOUNG_PTR (context->uc_mcontext.gregs[REG_R15])
++ #define CONTEXT_FAULTING_ADDRESS ((char *) info->si_addr)
++
+ /****************** I386, Linux */
+
+ #elif defined(TARGET_i386) && defined(SYS_linux_elf)
+@@ -163,14 +180,24 @@
#elif defined(TARGET_i386) && defined(SYS_bsd_elf)
@@ -36,7 +60,7 @@ First hunk taken from upstream tracker at:
#define CONTEXT_FAULTING_ADDRESS ((char *) info->si_addr)
/****************** I386, BSD */
-@@ -278,12 +294,21 @@
+@@ -278,12 +305,21 @@
sigact.sa_handler = (void (*)(int)) (name); \
sigact.sa_flags = 0