summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchristos <christos@pkgsrc.org>2005-12-03 16:46:32 +0000
committerchristos <christos@pkgsrc.org>2005-12-03 16:46:32 +0000
commita0522391ee0238f16b44b928adbe470b1f2bf8d9 (patch)
treeb9315c210138689c3d59142347886722f3cd0b5d
parent3ae8d0daf15b56022dd1f02fcad4b95994429ba8 (diff)
downloadpkgsrc-a0522391ee0238f16b44b928adbe470b1f2bf8d9.tar.gz
Prefer sigaction instead of sigvec if it exists, and check if sigvec exists
based on the existance of the macro SV_INTERRUPT.
-rw-r--r--misc/lv/patches/patch-ab46
-rw-r--r--misc/lv/patches/patch-ac25
2 files changed, 71 insertions, 0 deletions
diff --git a/misc/lv/patches/patch-ab b/misc/lv/patches/patch-ab
new file mode 100644
index 00000000000..7bb41a154dc
--- /dev/null
+++ b/misc/lv/patches/patch-ab
@@ -0,0 +1,46 @@
+$NetBSD: patch-ab,v 1.1 2005/12/03 16:46:32 christos Exp $
+
+--- ../src/console.c.orig 2004-01-05 02:27:46.000000000 -0500
++++ ../src/console.c 2005-12-03 11:37:19.000000000 -0500
+@@ -388,7 +388,22 @@
+ signal( SIGINT, InterruptIgnoreHandler );
+ #endif /* MSDOS */
+
+-#ifdef HAVE_SIGVEC
++#ifdef HAVE_SIGACTION
++ struct sigaction sa;
++
++ sigemptyset( &sa.sa_mask );
++# ifndef SA_RESTART
++ sa.sa_flags = 0;
++# else
++ sa.sa_flags = SA_RESTART;
++# endif
++ sa.sa_handler = WindowChangeHandler;
++ (void)sigaction( SIGWINCH, &sa, NULL );
++
++ sa.sa_handler = InterruptHandler;
++ (void)sigaction( SIGINT, &sa, NULL );
++#else
++# ifdef SV_INTERRUPT
+ struct sigvec sigVec;
+
+ sigVec.sv_handler = WindowChangeHandler;
+@@ -400,12 +415,13 @@
+ sigVec.sv_mask = sigmask( SIGINT );
+ sigVec.sv_flags = SV_INTERRUPT;
+ sigvec( SIGINT, &sigVec, NULL );
+-#else
+-# ifdef SIGWINCH
++# else
++# ifdef SIGWINCH
+ signal( SIGWINCH, WindowChangeHandler );
+-# endif
++# endif
+ signal( SIGINT, InterruptHandler );
+-#endif /* HAVE_SIGVEC */
++# endif /* SV_INTERRUPT */
++#endif /* HAVE_SIGACTION */
+
+ #ifdef UNIX
+ #ifdef HAVE_TERMIOS_H
diff --git a/misc/lv/patches/patch-ac b/misc/lv/patches/patch-ac
new file mode 100644
index 00000000000..c129ec5cf85
--- /dev/null
+++ b/misc/lv/patches/patch-ac
@@ -0,0 +1,25 @@
+$NetBSD: patch-ac,v 1.1 2005/12/03 16:46:32 christos Exp $
+
+--- ../src/configure.in.orig 2004-01-05 01:35:44.000000000 -0500
++++ ../src/configure.in 2005-12-03 11:37:40.000000000 -0500
+@@ -34,7 +34,7 @@
+ dnl Checks for typedefs, structures, and compiler characteristics.
+
+ dnl Checks for library functions.
+-AC_CHECK_FUNCS(sigvec tgetnum setlocale)
++AC_CHECK_FUNCS(sigaction tgetnum setlocale)
+ AC_FUNC_GETPGRP
+ AC_PROG_GCC_TRADITIONAL
+ AC_TYPE_SIGNAL
+
+--- ../src/configure.orig 2004-01-05 01:37:17.000000000 -0500
++++ ../src/configure 2005-12-03 11:37:58.000000000 -0500
+@@ -1440,7 +1440,7 @@
+
+
+
+-for ac_func in sigvec tgetnum setlocale
++for ac_func in sigaction tgetnum setlocale
+ do
+ echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+ echo "configure:1447: checking for $ac_func" >&5