commit b157deb13fd2fcd8f04cfcc4027b5f3b279afd15 Author: overweight <5324761+overweight@user.noreply.gitee.com> Date: Mon Sep 30 11:17:12 2019 -0400 Package init diff --git a/slang-2.3.2.tar.bz2 b/slang-2.3.2.tar.bz2 new file mode 100644 index 0000000..d341fa8 Binary files /dev/null and b/slang-2.3.2.tar.bz2 differ diff --git a/slang-getkey-memmove.patch b/slang-getkey-memmove.patch new file mode 100644 index 0000000..5466f9c --- /dev/null +++ b/slang-getkey-memmove.patch @@ -0,0 +1,31 @@ +commit d338fd6e949ef62e7eac4eb5c024059e02158b06 +Author: Miroslav Lichvar +Date: Wed Jul 25 13:07:42 2018 +0200 + + Replaced memcpy in SLang_getkey + + memcpy() is not defined for overlapping buffers, i.e. it may copy bytes + in any direction. As SLMEMMOVE is not defined in slang, replace the + SLMEMCPY call with a for loop. + +diff --git a/src/slgetkey.c b/src/slgetkey.c +index 86e7946..d9bc678 100644 +--- a/src/slgetkey.c ++++ b/src/slgetkey.c +@@ -40,13 +40,13 @@ unsigned int SLang_getkey (void) + + if (SLang_Input_Buffer_Len) + { +- unsigned int imax; ++ unsigned int i, imax; + ch = (unsigned int) *SLang_Input_Buffer; + SLang_Input_Buffer_Len--; + imax = SLang_Input_Buffer_Len; + +- SLMEMCPY ((char *) SLang_Input_Buffer, +- (char *) (SLang_Input_Buffer + 1), imax); ++ for (i = 0; i < imax; i++) ++ SLang_Input_Buffer[i] = SLang_Input_Buffer[i + 1]; + } + else if (SLANG_GETKEY_ERROR == (ch = _pSLsys_getkey ())) return ch; + diff --git a/slang-sighuptest.patch b/slang-sighuptest.patch new file mode 100644 index 0000000..0e1ad27 --- /dev/null +++ b/slang-sighuptest.patch @@ -0,0 +1,19 @@ +diff -up slang-2.3.0/src/test/signal.sl.sighuptest slang-2.3.0/src/test/signal.sl +--- slang-2.3.0/src/test/signal.sl.sighuptest 2014-09-18 05:02:24.000000000 +0200 ++++ slang-2.3.0/src/test/signal.sl 2014-12-11 15:57:36.857955195 +0100 +@@ -9,6 +9,7 @@ private define handle_hup (sig) + Signal = sig; + } + ++#iffalse + private define test_signal (sig, func, old_func) + { + variable old; +@@ -23,6 +24,7 @@ test_signal (SIGHUP, SIG_APP, &handle_hu + test_signal (SIGHUP, SIG_DFL, SIG_DFL); + test_signal (SIGHUP, SIG_IGN, SIG_DFL); + test_signal (SIGHUP, &handle_hup, SIG_IGN); ++#endif + + private define test_signal (sig, func) + { diff --git a/slang.spec b/slang.spec new file mode 100644 index 0000000..21b64f7 --- /dev/null +++ b/slang.spec @@ -0,0 +1,88 @@ +%bcond_with oniguruma + +Name: slang +Version: 2.3.2 +Release: 6 +Summary: An interpreted language and programing library +License: GPLv2+ +URL: https://www.jedsoft.org/slang/ +Source0: https://www.jedsoft.org/releases/slang/%{name}-%{version}.tar.bz2 + +Patch6000: slang-getkey-memmove.patch +Patch6001: slang-sighuptest.patch + +BuildRequires: gcc libpng-devel pcre-devel zlib-devel + +%description +S-Lang is a multi-platform programmer's library designed to allow +a developer to create robust multi-platform software. It provides +facilities required by interactive applications such as display/ +screen management, keyboard input, keymaps, and so on. + +%package devel +Summary: Files for %{name} development +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +Files for %{name} development + +%package help +Summary: Help files for %{name} +BuildArch: noarch + +%description help +Help files for %{name} + +%prep +%autosetup -n %{name}-%{version} -p1 -Sgit + +sed -i '/^INSTALL_MODULE=/s/_DATA//' configure + +%build +%configure --with-{pcre,png,z}lib=%{_libdir} --with-{pcre,png,z}inc=%{_includedir} + +make RPATH="" install_doc_dir=%{_pkgdocdir} all + +%install +make install-all RPATH="" INSTALL="install -p" DESTDIR=%{buildroot} + +mkdir %{buildroot}%{_includedir}/slang +for h in slang.h slcurses.h; do + ln -s ../$h %{buildroot}%{_includedir}/slang/$h +done + +%check +make check + +%ldconfig_scriptlets + +%files +%exclude %{_docdir}/{slang,slsh} +%exclude %{_libdir}/libslang.a +%{!?_licensedir:%global license %%doc} +%config(noreplace) %{_sysconfdir}/slsh.rc +%license COPYING +%doc NEWS slsh/doc/html/*.html +%{_libdir}/libslang.so.2* +%{_libdir}/%{name} +%{_bindir}/slsh +%{_datadir}/slsh + +%files devel +%doc doc/text/*.txt doc/README doc/*.txt +%{_libdir}/libslang.so +%{_libdir}/pkgconfig/%{name}.pc +%{_includedir}/slang.h +%{_includedir}/slcurses.h +%{_includedir}/%{name} + +%files help +%defattr(-,root,root) +%{_mandir}/man1/slsh.1* + +%changelog +* Mon Sep 24 2019 openEuler Buildteam - 2.3.2-6 +- Remove unnecessary info in spec + +* Tue Sep 16 2019 openEuler Buildteam - 2.3.2-5 +- Package init