Sophie

Sophie

distrib > Mandriva > 2010.2 > i586 > media > main-release-src > by-pkgid > 7ba34143dedbcd8ea0ed92be10d007c1 > files > 8

guile-1.8.7-4mdv2010.1.src.rpm

%define major		17
%define libname         %mklibname %{name} %{major}
%define develname	%mklibname %{name} -d
%define rel 4
# (Abel) making guile require guile-devel means user need to download
# more stuff, which is worse
%define _requires_exceptions devel(.*)
%define mver 1.8

Name:           guile
Version:        1.8.7
Release:        %mkrel %rel 
Summary:        GNU implementation of Scheme for application extensibility
License:        LGPLv2+
Group:          Development/Other
URL:            http://www.gnu.org/software/guile/guile.html
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root
Source0:        ftp://ftp.gnu.org/pub/gnu/guile/guile-%{version}.tar.gz
Source1:        ftp://ftp.gnu.org/pub/gnu/guile/guile-%{version}.tar.gz.sig
Patch0:         guile-1.8.3-64bit-fixes.patch
Patch1:         guile-1.6.4-amd64.patch
Patch2:		guile-1.8.5-drop-ldflags-from-pkgconfig.patch
Patch3:		guile-1.8.7-testsuite.patch
Patch4:		guile-1.8.7-testsuite2.patch
Requires(post): %{libname} = %{version}-%{release}
Requires(post): rpm-helper
Requires(preun): rpm-helper
BuildRequires:  chrpath
BuildRequires:  libgmp-devel
BuildRequires:  libltdl-devel
BuildRequires:  libncurses-devel
BuildRequires:  libreadline-devel
BuildRequires:	gettext-devel
# for srfi-19.test
BuildRequires:  timezone

%package -n %{libname}
Summary:        Libraries for Guile %{version}
Group:          System/Libraries
Requires:       %{name} = %{version}

%package -n %{develname}
Summary:        Development headers and static library for libguile
Group:          Development/C
Requires:       %{libname} = %{version}
Provides:       libguile-devel = %{version}-%{release}
Provides:       guile-devel = %{version}-%{release}
Obsoletes:      guile-devel
Obsoletes:	%{mklibname guile 17 -d}
Requires:       libgmp-devel
Requires:       libtool-devel
# (Abel) here comes the definition of "ugliness"
%ifarch x86_64 ia64 amd64 sparc64 ppc64
Requires:        devel(libcrypt(64bit))
Requires:        devel(libdl(64bit))
Requires:        devel(libm(64bit))
#i (misc) removed, no quickthread on 64 bit
%else
Requires:        devel(libcrypt)
Requires:        devel(libdl)
Requires:        devel(libm)
%endif

%description
GUILE (GNU's Ubiquitous Intelligent Language for Extension) is a
library implementation of the Scheme programming language, written in
C. GUILE provides a machine-independent execution platform that can
be linked in as a library during the building of extensible programs.

Install the guile package if you'd like to add extensibility to
programs that you are developing. You'll also need to install the
guile-devel package.

%description -n %{libname}
This package contains Guile shared object libraries and the ice-9
scheme module. Guile is the GNU Ubiquitous Intelligent Language for
Extension.

%description -n %{develname}
This package contains the development headers and the static library
for libguile. C headers, aclocal macros, the `guile1.4-snarf' and
`guile-config' utilities, and static `libguile' library for Guile, the
GNU Ubiquitous Intelligent Language for Extension

%prep
%setup -q
%patch0 -p1 -b .64bit-fixes
%patch1 -p1 -b .amd64
%patch2 -p0 -b .pkgconfig
%patch3 -p1 -b .testsuite
%patch4 -p1 -b .testsuite2

autoreconf -fi
%build

%{configure2_5x} \
    --disable-error-on-warning \
    --disable-rpath \
    --enable-dynamic-linking \
    --with-threads
%{make}

%check
%ifarch ia64
# FAIL: r4rs.test: (6 9): (#<procedure leaf-eq? (x y)> (a (b (c))) ((a) b c))
%{__make} check -k || :
%else
# all tests must pass
%{__make} check
%endif

%install
%{__rm} -rf %{buildroot}
%{makeinstall_std}

%{__mkdir_p} %{buildroot}%{_datadir}/%{name}/site

%multiarch_includes %{buildroot}%{_includedir}/lib%{name}/scmconfig.h

%{_bindir}/chrpath -d %{buildroot}{%{_bindir}/%{name},%{_libdir}/*.so.*.*.*}

# create ghost file for packaging
touch %{buildroot}%{_datadir}/%{name}/%{mver}/slib %{buildroot}%{_datadir}/%{name}/%{mver}/slibcat

%clean
%{__rm} -rf %{buildroot}

%post
%_install_info %{name}-tut.info
%_install_info %{name}.info
%_install_info r5rs.info
%_install_info goops.info

%preun
%_remove_install_info %{name}-tut.info
%_remove_install_info %{name}.info
%_remove_install_info r5rs.info
%_remove_install_info goops.info

%if %mdkversion < 200900
%post -n %{libname} -p /sbin/ldconfig
%endif
%if %mdkversion < 200900
%postun -n %{libname} -p /sbin/ldconfig
%endif

%triggerin -- slib
# Remove files created in guile < 1.8.7-4mdv
ln -sfT ../../slib %{_datadir}/guile/%{mver}/slib

rm -f %{_datadir}/guile/%{mver}/slibcat
export SCHEME_LIBRARY_PATH=%{_datadir}/slib/

# Build SLIB catalog
for pre in \
    "(use-modules (ice-9 slib))" \
    "(load \"%{_datadir}/slib/guile.init\")"
do
    %{_bindir}/guile -c "$pre
        (set! implementation-vicinity (lambda () \"%{_datadir}/guile/%{mver}/\"))
        (require 'new-catalog)" &> /dev/null && break
    rm -f %{_datadir}/guile/%{mver}/slibcat
done
:

%triggerun -- slib
if [ "$1" = 0 -o "$2" = 0 ]; then
    rm -f %{_datadir}/guile/%{mver}/slib{,cat}
fi


%files
%defattr(-,root,root)
%doc AUTHORS ChangeLog GUILE-VERSION LICENSE README THANKS
%{_bindir}/%{name}
%{_bindir}/%{name}-tools
%{_datadir}/%{name}
%ghost %{_datadir}/%{name}/%{mver}/slibcat
%ghost %{_datadir}/%{name}/%{mver}/slib
%{_mandir}/man1/guile.1.*
%{_infodir}/*
%{_libdir}/lib%{name}-srfi-srfi-13-14-v-3.so
%{_libdir}/lib%{name}-srfi-srfi-4-v-3.so
%{_libdir}/lib%{name}-srfi-srfi-1-v-3.so
%{_libdir}/lib%{name}-srfi-srfi-60-v-2.so
%{_libdir}/lib%{name}readline-v-%{major}.so

%files -n %{libname}
%defattr(-,root,root)
%{_libdir}/lib*.so.%{major}*
%{_libdir}/lib%{name}-srfi-srfi-13-14-v-3.so.3*
%{_libdir}/lib%{name}-srfi-srfi-4-v-3.so.3*
%{_libdir}/lib%{name}-srfi-srfi-1-v-3.so.3*
%{_libdir}/lib%{name}-srfi-srfi-60-v-2.so.2*

%files -n %{develname}
%defattr(-,root,root)
%doc ABOUT-NLS HACKING NEWS INSTALL libguile/ChangeLog*
%multiarch %{multiarch_includedir}/lib%{name}/scmconfig.h
%{_bindir}/%{name}-config
%{_bindir}/%{name}-snarf
%{_datadir}/aclocal/*
%{_includedir}/lib%{name}*
%{_includedir}/%{name}*
%{_libdir}/lib*.*a
%{_libdir}/lib%{name}.so
%{_libdir}/pkgconfig/%{name}*.pc



%changelog
* Thu Feb 18 2010 Frederic Crozat <fcrozat@mandriva.com> 1.8.7-4mdv2010.1
+ Revision: 507813
- Move slib registration to versioned directory (sync with Fedora)
- run autoreconf at setup time, not build time

* Tue Feb 09 2010 Funda Wang <fwang@mandriva.org> 1.8.7-3mdv2010.1
+ Revision: 502947
- add fedora testsuite2 patch
- rebuild for new gmp

* Sun Nov 15 2009 Funda Wang <fwang@mandriva.org> 1.8.7-2mdv2010.1
+ Revision: 466127
- fix testsuite
- new version 1.8.7

* Wed Oct 07 2009 Thierry Vignaud <tvignaud@mandriva.com> 1.8.6-4mdv2010.0
+ Revision: 455514
- move huge NEWS in devel package

* Wed Feb 25 2009 Thierry Vignaud <tvignaud@mandriva.com> 1.8.6-3mdv2009.1
+ Revision: 344659
- rebuild for new libreadline

* Tue Jan 27 2009 Funda Wang <fwang@mandriva.org> 1.8.6-2mdv2009.1
+ Revision: 334494
- rebuild for new libtool

* Fri Dec 26 2008 Funda Wang <fwang@mandriva.org> 1.8.6-1mdv2009.1
+ Revision: 319293
- New version 1.8.6

* Sun Dec 21 2008 Funda Wang <fwang@mandriva.org> 1.8.5-2mdv2009.1
+ Revision: 317103
- drop LDFLAGS from pkgconfig file

* Fri Sep 05 2008 Emmanuel Andry <eandry@mandriva.org> 1.8.5-1mdv2009.0
+ Revision: 281322
- fix file list
- New version
- check major
- update file list

* Mon Jun 09 2008 Pixel <pixel@mandriva.com> 1.8.3-2mdv2009.0
+ Revision: 217186
- do not call ldconfig in %%post/%%postun, it is now handled by filetriggers

  + Olivier Blin <oblin@mandriva.com>
    - restore BuildRoot

  + Thierry Vignaud <tvignaud@mandriva.com>
    - kill re-definition of %%buildroot on Pixel's request

* Wed Nov 28 2007 Frederic Crozat <fcrozat@mandriva.com> 1.8.3-2mdv2008.1
+ Revision: 113733
- Remove patch2 and dependency on umb-scheme (deprecated)
- add triggers for slib support (fedora)

* Wed Nov 07 2007 Adam Williamson <awilliamson@mandriva.org> 1.8.3-1mdv2008.1
+ Revision: 106629
- BUGS doesn't exist any more...
- rediff 64bit-fixes.patch and slib.patch
- drop srfi-14-test.patch and rational.patch (merged upstream)
- move docs out of lib package (per lib policy)
- new devel policy
- new license policy
- new version 1.8.3


* Mon Jan 08 2007 Götz Waschk <waschk@mandriva.org> 1.8.1-7mdv2007.0
+ Revision: 105967
- bot rebuild

  + Michael Scherer <misc@mandriva.org>
    - rebuild
    - use %%rel scheme for %%mkrel
    - use fedora patch, to fix a gnucash crash, reported by goetz
      <unnamed port>: In expression (user-vicinity):
      <unnamed port>: Unbound variable: user-vicinity
      I do not really understand why the previous patch was wrong, but i am not
      a lisp master. This one comes from fedora packages, and work well with
      gnucash.

* Sun Jan 07 2007 David Walluck <walluck@mandriva.org> 1.8.1-5mdv2007.1
+ Revision: 105149
- devel package Requires: libgmp-devel

* Sun Jan 07 2007 David Walluck <walluck@mandriva.org> 1.8.1-4mdv2007.1
+ Revision: 105126
- remove references to libqthreads
- BuildRequires: libgmp-devel
  add rational patch for lilypond
- add slib patch
- 1.8.1

  + Bruno Cornec <Bruno.Cornec@mandriva.org>
    - import guile-1.6.8-3mdv2007.0

* Wed Aug 09 2006 Götz Waschk <waschk@mandriva.org> 1.6.8-3mdv2007.0
- add slib symlink
- bump umb-scheme dep

* Tue Aug 08 2006 Götz Waschk <waschk@mandriva.org> 1.6.8-2mdv2007.0
- fix post installation script

* Tue Aug 08 2006 Götz Waschk <waschk@mandriva.org> 1.6.8-1mdv2007.0
- New release 1.6.8

* Wed Mar 08 2006 Michael Scherer <misc@mandriva.org> 1.6.7-9mdk
- fix requires on x86_64 ( no quick thread )
- do use file based requires

* Wed Jan 18 2006 Christiaan Welvaart <cjw@daneel.dyndns.org> 1.6.7-8mdk
- fix build for x86-64 - no qthreads

* Wed Oct 12 2005 Christiaan Welvaart <cjw@daneel.dyndns.org> 1.6.7-7mdk
- fix file list and deps for ppc - no quickthreads

* Fri Aug 26 2005 Abel Cheung <deaddog@mandriva.org> 1.6.7-6mdk
- Move some .so symlinks to main package as they are dynamically loaded
  by *.scm files (#13837)
- Prereq -> Requires (#17444)

* Sun Aug 21 2005 Christiaan Welvaart <cjw@daneel.dyndns.org> 1.6.7-5mdk
- add BuildRequires: libltdl-devel

* Sat Aug 20 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.6.7-4mdk
- gcc4 fixes

* Thu Feb 03 2005 Abel Cheung <deaddog@mandrake.org> 1.6.7-3mdk
- multiarch
- Fix info-install requirement

* Fri Jan 21 2005 Götz Waschk <waschk@linux-mandrake.com> 1.6.7-2mdk
- rebuild for new readline

* Sun Dec 26 2004 Abel Cheung <deaddog@mandrake.org> 1.6.7-1mdk
- New release
- Use tar.gz (with signature)
- Move shared files out of lib package, allowing multilib