Summary: shared libraries for terminal handling
Name: ncurses6
-Version: 6.0
-Release: 20170902
+Version: 6.2
+Release: 20201107
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
-# URL: http://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
+# URL: https://invisible-island.net/ncurses/
%global MY_ABI 6
%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)
+
+%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_no_undefined 1
+# libtool is not used here...
+%define _disable_libtoolize 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
-CFLAGS="%{CC_NORMAL}" \
-RPATH_LIST=../lib:%{_prefix}/lib \
-%configure \
- --target %{_target_platform} \
- --prefix=%{_prefix} \
- --includedir='${prefix}/include' \
- --with-default-terminfo-dir=%{MYDATA} \
- --with-install-prefix=$RPM_BUILD_ROOT \
- --with-terminfo-dirs=%{MYDATA}:/usr/share/terminfo \
- --disable-echo \
- --disable-getcap \
- --disable-leaks \
- --disable-macros \
- --disable-overwrite \
- --disable-termcap \
- --enable-hard-tabs \
- --enable-pc-files \
- --enable-rpath \
- --enable-warnings \
- --enable-wgetch-events \
- --enable-widec \
- --verbose \
- --program-suffix=%{MY_ABI} \
- --with-abi-version=%{MY_ABI} \
- --with-develop \
- --with-shared \
- --with-termlib \
- --with-ticlib \
- --with-trace \
- --with-cxx-shared \
- --with-extra-suffix=%{MY_ABI} \
- --with-pkg-config-libdir=%{MY_PKG} \
- --with-versioned-syms \
- --with-xterm-kbs=DEL \
- --without-ada \
- --without-debug \
+%define CFG_OPTS \\\
+ --target %{_target_platform} \\\
+ --prefix=%{_prefix} \\\
+ --bindir=%{_bindir} \\\
+ --includedir=%{_includedir} \\\
+ --libdir=%{_libdir} \\\
+ --includedir='${prefix}/include' \\\
+ --disable-echo \\\
+ --disable-getcap \\\
+ --disable-leaks \\\
+ --disable-macros \\\
+ --disable-overwrite \\\
+ %{_test_relink} \\\
+ --disable-termcap \\\
+ --enable-hard-tabs \\\
+ --enable-opaque-curses \\\
+ --enable-opaque-form \\\
+ --enable-opaque-menu \\\
+ --enable-opaque-panel \\\
+ --enable-pc-files \\\
+ --enable-rpath \\\
+ --enable-warnings \\\
+ --enable-wgetch-events \\\
+ --enable-widec \\\
+ --enable-xmc-glitch \\\
+ --program-suffix=%{MY_ABI} \\\
+ --verbose \\\
+ --with-abi-version=%{MY_ABI} \\\
+ --with-config-suffix=dev \\\
+ --with-cxx-shared \\\
+ --with-default-terminfo-dir=%{MYDATA} \\\
+ --with-develop \\\
+ --with-extra-suffix=%{MY_ABI} \\\
+ --with-install-prefix=$RPM_BUILD_ROOT \\\
+ --with-pkg-config-libdir=%{MY_PKG} \\\
+ --with-shared \\\
+ --with-terminfo-dirs=%{MYDATA}:/usr/share/terminfo \\\
+ --with-termlib \\\
+ --with-ticlib \\\
+ --with-trace \\\
+ --with-versioned-syms \\\
+ --with-xterm-kbs=DEL \\\
+ --without-ada \\\
+ --without-debug \\\
--without-normal
+%configure %{CFG_OPTS}
+
make
%install
rm -f test/ncurses
( cd test && make ncurses LOCAL_LIBDIR=%{_libdir} && mv ncurses $RPM_BUILD_ROOT/%{_bindir}/ncurses%{MY_ABI} )
+%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
+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}/*
-%{MY_PKG}/*.pc
%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
+
+* Sat May 26 2018 Thomas E. Dickey
+- use predefined configure-macro
+- separate ncurses6/ncursest6 packages
+
+* Sat Feb 10 2018 Thomas E. Dickey
+- add ncursest6 package
+- add several development features
+
+* Mon Jan 01 2018 Thomas E. Dickey
+- drop redundant files pattern for "*.pc"
+
+* Tue Dec 26 2017 Thomas E. Dickey
+- add --with-config-suffix option
+
* Sun Apr 26 2015 Thomas E. Dickey
- move package to /usr