diff options
Diffstat (limited to 'lang/ocaml')
-rw-r--r-- | lang/ocaml/distinfo | 4 | ||||
-rw-r--r-- | lang/ocaml/patches/patch-asmrun_signals_osdep.h | 41 |
2 files changed, 34 insertions, 11 deletions
diff --git a/lang/ocaml/distinfo b/lang/ocaml/distinfo index 2397a6de4b9..a2afc1953df 100644 --- a/lang/ocaml/distinfo +++ b/lang/ocaml/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.80 2015/01/26 14:46:51 jaapb Exp $ +$NetBSD: distinfo,v 1.81 2015/03/14 15:17:14 gdt 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) = aff4c999cb21240b7d99f34cb482fe32efcd356e +SHA1 (patch-asmrun_signals_osdep.h) = 0ff83333dd75ecfe8f262b7523231832169986a7 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 33c887d7e7b..68ececdf664 100644 --- a/lang/ocaml/patches/patch-asmrun_signals_osdep.h +++ b/lang/ocaml/patches/patch-asmrun_signals_osdep.h @@ -1,19 +1,42 @@ -$NetBSD: patch-asmrun_signals_osdep.h,v 1.3 2015/01/26 14:46:51 jaapb Exp $ +$NetBSD: patch-asmrun_signals_osdep.h,v 1.4 2015/03/14 15:17:15 gdt Exp $ Use correct data structures for power architecture; also do signal -handling correctly for i386 +handling correctly for i386/NetBSD. + +First hunk taken from upstream tracker at: + http://caml.inria.fr/mantis/view.php?id=6772 + --- asmrun/signals_osdep.h.orig 2014-09-28 19:46:24.000000000 +0000 +++ asmrun/signals_osdep.h -@@ -161,7 +161,7 @@ +@@ -163,14 +163,24 @@ + + #elif defined(TARGET_i386) && defined(SYS_bsd_elf) + +- #define DECLARE_SIGNAL_HANDLER(name) \ +- static void name(int sig, siginfo_t * info, struct sigcontext * context) ++ #if defined (__NetBSD__) ++ #include <ucontext.h> ++ #define DECLARE_SIGNAL_HANDLER(name) \ ++ static void name(int sig, siginfo_t * info, ucontext_t * context) ++ #else ++ #define DECLARE_SIGNAL_HANDLER(name) \ ++ static void name(int sig, siginfo_t * info, struct sigcontext * context) ++ #endif - /****************** I386, BSD_ELF */ + #define SET_SIGACT(sigact,name) \ + sigact.sa_sigaction = (void (*)(int,siginfo_t *,void *)) (name); \ + sigact.sa_flags = SA_SIGINFO --#elif defined(TARGET_i386) && defined(SYS_bsd_elf) -+#elif defined(TARGET_i386) && defined(SYS_bsd_elf) && !defined(__NetBSD__) +- #define CONTEXT_PC (context->sc_eip) ++ #if defined (__NetBSD__) ++ #define CONTEXT_PC (_UC_MACHINE_PC(context)) ++ #else ++ #define CONTEXT_PC (context->sc_eip) ++ #endif + #define CONTEXT_FAULTING_ADDRESS ((char *) info->si_addr) - #define DECLARE_SIGNAL_HANDLER(name) \ - static void name(int sig, siginfo_t * info, struct sigcontext * context) -@@ -278,12 +278,21 @@ + /****************** I386, BSD */ +@@ -278,12 +294,21 @@ sigact.sa_handler = (void (*)(int)) (name); \ sigact.sa_flags = 0 |