X-Git-Url: https://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=Ada95%2Fpackage%2FAdaCurses.spec;h=b98611cf44448361e9ac5187b406d2355f03e16d;hb=18c5cff3297b96ac5988a716c66b374734a7de90;hp=4e2354c94e1a2589034acea68be133f6699d45ae;hpb=be512fa073c00c2d52567c973d16b121414870da;p=ncurses.git diff --git a/Ada95/package/AdaCurses.spec b/Ada95/package/AdaCurses.spec index 4e2354c9..b98611cf 100644 --- a/Ada95/package/AdaCurses.spec +++ b/Ada95/package/AdaCurses.spec @@ -1,14 +1,14 @@ -Summary: AdaCurses - Ada95 binding for ncurses +Summary: Ada95 binding for ncurses %define AppProgram AdaCurses %define AppVersion MAJOR.MINOR %define AppRelease YYYYMMDD -# $Id: AdaCurses.spec,v 1.15 2015/04/26 23:55:55 tom Exp $ +# $Id: AdaCurses.spec,v 1.30 2022/11/19 21:21:16 tom Exp $ Name: %{AppProgram} Version: %{AppVersion} Release: %{AppRelease} License: MIT Group: Applications/Development -URL: ftp://invisible-island.net/%{AppProgram} +URL: ftp://ftp.invisible-island.net/%{AppProgram} Source0: %{AppProgram}-%{AppRelease}.tgz Packager: Thomas Dickey @@ -17,63 +17,115 @@ This is the Ada95 binding from the ncurses MAJOR.MINOR distribution, for patch-date YYYYMMDD. In addition to a library, this package installs sample programs in -"bin/AdaCurses" to avoid conflict with other packages. +"bin/%{AppProgram}" to avoid conflict with other packages. %prep +%global is_mandriva %(test -f /etc/mandriva-release && echo 1 || echo 0) +%global is_redhat %(test -f /etc/redhat-release && echo 1 || echo 0) +%global is_suse %(if grep -E -i '(opensuse)' /etc/issue >/dev/null; then echo 1; else echo 0; fi) + %define debug_package %{nil} +%define need_filter %(if grep -E -i '(red hat|fedora)' /etc/issue >/dev/null; then echo 1; elif test -f /etc/fedora-release; then echo 1; else echo 0; fi) + +%if %{need_filter} == 1 # http://fedoraproject.org/wiki/EPEL:Packaging_Autoprovides_and_Requires_Filtering -%filter_from_requires /libAdaCurses.so.1/d +%filter_from_requires /lib%{AppProgram}.so.1/d %filter_setup +%endif %setup -q -n %{AppProgram}-%{AppRelease} %build -%define ada_libdir %{_prefix}/lib/ada/adalib +%define ada_libdir %{_libdir}/ada/adalib +%define ada_include %{_prefix}/share/ada/adainclude + +%if %{is_mandriva} +# Mageia 8 lacks gprbuild, needed for building shared libraries. +%define ada_model --without-shared --without-ada-sharedlib --with-ada-objects=%{_libdir}/adalib +%else +# OpenSUSE actually lacks gprbuild, but there is a workable "community" package. +%define ada_model --with-shared --with-ada-sharedlib +%if %{is_redhat} +# Fedora 36 LTO does not work with gprbuild system configuration. +unset CFLAGS +unset LDFLAGS +unset LT_SYS_LIBRARY_PATH +%endif +%endif INSTALL_PROGRAM='${INSTALL}' \ - ./configure \ + ./configure %{ada_model} \ --target %{_target_platform} \ --prefix=%{_prefix} \ --bindir=%{_bindir} \ --libdir=%{_libdir} \ + --with-ada-include=%{ada_include} \ + --with-ada-objects=%{ada_libdir} \ --mandir=%{_mandir} \ --datadir=%{_datadir} \ --disable-rpath-link \ - --with-shared \ - --with-ada-sharedlib + --disable-echo \ + --verbose \ + --enable-warnings make %install [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT +make install DESTDIR=$RPM_BUILD_ROOT ( cd samples && make install.examples \ - DESTDIR=$RPM_BUILD_ROOT \ - BINDIR=$RPM_BUILD_ROOT%{_bindir}/%{AppProgram} + DESTDIR=$RPM_BUILD_ROOT \ + BINDIR=$RPM_BUILD_ROOT%{_bindir}/%{AppProgram} ) %clean -[ "$RPM_BUILD_ROOT" != "/" ] && 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}/adacurses*-config %{_bindir}/%{AppProgram}/* -%{_libdir}/libAdaCurses.* -%{ada_libdir}/libAdaCurses.* -%{ada_libdir}/terminal_interface* +%{ada_libdir}/ +%if %{need_filter} == 1 +%{_libdir}/lib%{AppProgram}.* +%endif +%if %{is_suse} +%{_libdir}/lib%{AppProgram}.* +%endif %{_mandir}/man1/adacurses*-config.1* %{_datadir}/%{AppProgram}/* -%{_datadir}/ada/adainclude/terminal_interface* +%{ada_include}/ %changelog # each patch should add its ChangeLog entries here +* Sat Nov 19 2022 Thomas Dickey +- use static libraries for Mageia. + +* Sat Nov 12 2022 Thomas Dickey +- unset environment variables to work around Fedora LTO bugs. +- build-fix for OpenSUSE with gprbuild. + +* Sat Nov 16 2019 Thomas Dickey +- modify clean-rule to work around Fedora NFS bugs. + +* Sat Sep 14 2019 Thomas Dickey +- build-fixes for Fedora29, OpenSUSE + +* Sat Sep 07 2019 Thomas Dickey +- use AppProgram to replace "AdaCurses" globally +- amend install-paths to work with Fedora30 + * Thu Mar 31 2011 Thomas Dickey - use --with-shared option for consistency with --with-ada-sharelib - ensure that MY_DATADIR is set when installing examples