From 7510dcf46bcf98ff94bef7c14cd3b45064102ed2 Mon Sep 17 00:00:00 2001 From: Akira TAGOH Date: Wed, 15 Oct 2014 16:11:04 +0900 Subject: [PATCH] Drop obsolete sigvec support (#1151982) --- lv-no-sigvec.patch | 74 ++++++++++++++++++++++++++++++++++++++++++++++ lv.spec | 7 ++++- 2 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 lv-no-sigvec.patch diff --git a/lv-no-sigvec.patch b/lv-no-sigvec.patch new file mode 100644 index 0000000..489d93a --- /dev/null +++ b/lv-no-sigvec.patch @@ -0,0 +1,74 @@ +--- ./src/configure.in 2004-01-04 22:35:44.000000000 -0800 ++++ ./src/configure.in 2014-10-09 11:14:47.782210631 -0700 +@@ -34,7 +34,7 @@ AC_CHECK_HEADERS(fcntl.h sys/ioctl.h sys + 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/console.c 2004-01-04 23:27:46.000000000 -0800 ++++ ./src/console.c 2014-10-09 11:16:59.627943378 -0700 +@@ -158,9 +158,9 @@ private RETSIGTYPE InterruptHandler( int + { + kb_interrupted = TRUE; + +-#ifndef HAVE_SIGVEC ++#ifndef HAVE_SIGACTION + signal( SIGINT, InterruptHandler ); +-#endif /* HAVE_SIGVEC */ ++#endif /* HAVE_SIGACTION */ + } + + public void ConsoleEnableInterrupt() +@@ -235,9 +235,9 @@ private RETSIGTYPE WindowChangeHandler( + + ConsoleGetWindowSize(); + +-#ifndef HAVE_SIGVEC ++#ifndef HAVE_SIGACTION + signal( SIGWINCH, WindowChangeHandler ); +-#endif /* HAVE_SIGVEC */ ++#endif /* HAVE_SIGACTION */ + } + #endif /* UNIX */ + +@@ -388,24 +388,24 @@ public void ConsoleSetUp() + signal( SIGINT, InterruptIgnoreHandler ); + #endif /* MSDOS */ + +-#ifdef HAVE_SIGVEC +- struct sigvec sigVec; ++#ifdef HAVE_SIGACTION ++ struct sigaction sa; + +- sigVec.sv_handler = WindowChangeHandler; +- sigVec.sv_mask = sigmask( SIGWINCH ); +- sigVec.sv_flags = SV_INTERRUPT; +- sigvec( SIGWINCH, &sigVec, NULL ); +- +- sigVec.sv_handler = InterruptHandler; +- sigVec.sv_mask = sigmask( SIGINT ); +- sigVec.sv_flags = SV_INTERRUPT; +- sigvec( SIGINT, &sigVec, NULL ); ++ sa.sa_handler = WindowChangeHandler; ++ sigemptyset( &sa.sa_mask ); ++ sa.sa_flags = 0; /* No SA_RESTART means interrupt syscalls. */ ++ sigaction( SIGWINCH, &sa, NULL ); ++ ++ sa.sa_handler = InterruptHandler; ++ sigemptyset( &sa.sa_mask ); ++ sa.sa_flags = 0; /* No SA_RESTART means interrupt syscalls. */ ++ sigaction( SIGINT, &sa, NULL ); + #else + # ifdef SIGWINCH + signal( SIGWINCH, WindowChangeHandler ); + # endif + signal( SIGINT, InterruptHandler ); +-#endif /* HAVE_SIGVEC */ ++#endif /* HAVE_SIGACTION */ + + #ifdef UNIX + #ifdef HAVE_TERMIOS_H diff --git a/lv.spec b/lv.spec index 84a9b8f..a6d1f31 100644 --- a/lv.spec +++ b/lv.spec @@ -2,7 +2,7 @@ Name: lv Version: 4.51 -Release: 24%{?dist} +Release: 25%{?dist} License: GPLv2+ URL: http://www.ff.iij4u.or.jp/~nrt/lv/ BuildRequires: ncurses-devel autoconf @@ -14,6 +14,7 @@ Patch3: lv-+num-option.patch Patch4: lv-fastio.patch Patch5: lv-lfs.patch Patch6: %{name}-aarch64.patch +Patch7: %{name}-no-sigvec.patch Summary: A Powerful Multilingual File Viewer Group: Applications/Text @@ -35,6 +36,7 @@ for text decoration. %patch4 -p1 -b .fastio %patch5 -p1 -b .lfs %patch6 -p1 -b .6-aarch64 +%patch7 -p1 -b .7-sigvec %build cd src @@ -58,6 +60,9 @@ make install bindir=$RPM_BUILD_ROOT%{_bindir} libdir=$RPM_BUILD_ROOT%{_libdir} m %changelog +* Wed Oct 15 2014 Akira TAGOH - 4.51-25 +- Drop obsolete sigvec support (#1151982) + * Sun Aug 17 2014 Fedora Release Engineering - 4.51-24 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild