X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=package%2Fncurses.spec;h=b15fc84b33b7b6e1b6420741e0e9dfbe048d217c;hp=9bca6e347f4257eada3f1b59643d20dd2271b34a;hb=fbd79f88d0de057053bd9658499f4e87c10ff2f4;hpb=0485620c03e69b1b58a6b12e5e45c98415fc7575 diff --git a/package/ncurses.spec b/package/ncurses.spec index 9bca6e34..b15fc84b 100644 --- a/package/ncurses.spec +++ b/package/ncurses.spec @@ -1,14 +1,11 @@ Summary: shared libraries for terminal handling Name: ncurses6 -Version: 6.0 -Release: 20170819 +Version: 6.2 +Release: 20200822 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 @@ -29,48 +26,85 @@ This package is used for testing ABI %{MY_ABI}. %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 @@ -80,18 +114,60 @@ 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} ) +%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