diff options
author | christos <christos@pkgsrc.org> | 2005-12-03 16:46:32 +0000 |
---|---|---|
committer | christos <christos@pkgsrc.org> | 2005-12-03 16:46:32 +0000 |
commit | a0522391ee0238f16b44b928adbe470b1f2bf8d9 (patch) | |
tree | b9315c210138689c3d59142347886722f3cd0b5d | |
parent | 3ae8d0daf15b56022dd1f02fcad4b95994429ba8 (diff) | |
download | pkgsrc-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-ab | 46 | ||||
-rw-r--r-- | misc/lv/patches/patch-ac | 25 |
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 |