Summary: shared libraries for terminal handling
Name: ncurses6
-Version: 6.1
-Release: 20180602
+Version: 6.2
+Release: 20201107
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
# URL: https://invisible-island.net/ncurses/
-%define CC_NORMAL -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wconversion
-%define CC_STRICT %{CC_NORMAL} -W -Wbad-function-cast -Wcast-align -Wcast-qual -Wmissing-declarations -Wnested-externs -Wpointer-arith -Wwrite-strings -ansi -pedantic
-
%global MY_ABI 6
# save value before redefining
This package is used for testing ABI %{MY_ABI}.
-%package -n ncursest6
-Summary: Curses library with POSIX thread support.
-
-%description -n ncursest6
-The ncurses library routines are a terminal-independent method of
-updating character screens with reasonable optimization.
-
-This package is used for testing ABI %{MY_ABI} with POSIX threads.
-
%prep
%global is_mandriva %(test -f /etc/mandriva-release && echo 1 || echo 0)
+%global is_fedora %(test -f /usr/bin/dnf && echo 1 || echo 0)
+%global is_centos %(test -f /etc/centos-release && echo 1 || echo 0)
%global is_redhat %(test -f /etc/redhat-release && echo 1 || echo 0)
+%global is_scilinux %(test -f /etc/sl-release && echo 1 || echo 0)
%global is_suse %(test -f /etc/SuSE-release && echo 1 || echo 0)
-# nor are debug-symbols
+%if %{is_redhat}
+# generate debug/debug-source packages.
+%else
%define debug_package %{nil}
+%endif
%if %{is_mandriva}
%define _disable_ld_as_needed 1
%define _disable_ld_build_id 1
%endif
+%if %{is_fedora} || %{is_scilinux} || %{is_centos}
+# workaround for toolset breakage in Fedora 28
+%define _test_relink --enable-relink
+%else
+%define _test_relink --disable-relink
+%endif
+
%setup -q -n ncurses-%{version}-%{release}
%build
-%define my_srcdir ..
%define CFG_OPTS \\\
--target %{_target_platform} \\\
--prefix=%{_prefix} \\\
--disable-leaks \\\
--disable-macros \\\
--disable-overwrite \\\
+ %{_test_relink} \\\
--disable-termcap \\\
--enable-hard-tabs \\\
--enable-opaque-curses \\\
--without-debug \\\
--without-normal
-%global _configure ../configure
-
-mkdir BUILD-ncurses6
-pushd BUILD-ncurses6
-CFLAGS="%{CC_NORMAL}" \
-RPATH_LIST=../lib:%{_libdir} \
-CONFIGURE_TOP=%{my_srcdir} \
%configure %{CFG_OPTS}
+
make
-popd
-
-mkdir BUILD-ncursest6
-pushd BUILD-ncursest6
-CFLAGS="%{CC_NORMAL}" \
-RPATH_LIST=../lib:%{_libdir} \
-CONFIGURE_TOP=%{my_srcdir} \
-%configure %{CFG_OPTS} \
- --enable-interop \
- --enable-sp-funcs \
- --program-suffix=t%{MY_ABI} \
- --with-pthread
-make
-popd
%install
rm -rf $RPM_BUILD_ROOT
-pushd BUILD-ncurses6
make install.libs install.progs
rm -f test/ncurses
( cd test && make ncurses LOCAL_LIBDIR=%{_libdir} && mv ncurses $RPM_BUILD_ROOT/%{_bindir}/ncurses%{MY_ABI} )
-popd
-pushd BUILD-ncursest6
-make install.libs install.progs
-rm -f test/ncurses
-( cd test && make ncurses LOCAL_LIBDIR=%{_libdir} && mv ncurses $RPM_BUILD_ROOT/%{_bindir}/ncursest%{MY_ABI} )
-popd
+%if %{is_mandriva}
+# check this first because Mageia has the /etc/redhat-release file...
+%else
+%if %{is_fedora}
+%ldconfig_scriptlets libs
+%ldconfig_scriptlets c++-libs
+%endif
+%endif
%clean
-rm -rf $RPM_BUILD_ROOT
-
-%files -n ncurses6
+if rm -rf $RPM_BUILD_ROOT; then
+ echo OK
+else
+ find $RPM_BUILD_ROOT -type f | grep -F -v /.nfs && exit 1
+fi
+exit 0
+
+%files
%defattr(-,root,root,-)
%{_bindir}/*
%{_includedir}/*
%{_libdir}/*
-%exclude %{_bindir}/tict6
-%exclude %{_bindir}/toet6
-%exclude %{_bindir}/tabst6
-%exclude %{_bindir}/resett6
-%exclude %{_bindir}/???*tt6
-%exclude %{_bindir}/?????*t6
-%exclude %{_bindir}/*tw6*
-%exclude %dir %{_includedir}/*tw6*
-%exclude %{_includedir}/*tw6*/*
-%exclude %{_libdir}/*tw6*
-%exclude %{_libdir}/pkgconfig/*tw6*
-
-%files -n ncursest6
-%defattr(-,root,root,-)
-%{_bindir}/tict6
-%{_bindir}/toet6
-%{_bindir}/tabst6
-%{_bindir}/???*tt6
-%{_bindir}/?????*t6
-%{_bindir}/*tw6*
-%{_includedir}/*tw6*
-%{_libdir}/*tw6*
-%{_libdir}/pkgconfig/*tw6*
%changelog
+* Tue Dec 24 2019 Thomas Dickey
+- drop custom CC_NORMAL warning flags because setting CFLAGS interferes with
+ matching Fedora's PIE/PIC configuration. Also, generate debug/debug-source
+ packages.
+
+* Sat Nov 16 2019 Thomas Dickey
+- modify clean-rule to work around Fedora NFS bugs.
+
+* Sat Aug 25 2018 Thomas E. Dickey
+- split spec-file into ncurses6 and ncursest6 to work around toolset breakage
+ in Fedora 28
+
* Sat Jun 02 2018 Thomas E. Dickey
- build-fix for Mageia