Sophie

Sophie

distrib > Mageia > 9 > armv7hl > by-pkgid > 9b555af6cc4a60e00f05ecf17d0f8e4b > files > 5

guile2.0-2.0.14-13.mga9.src.rpm

%define major		22
%define	api		2.0
%define libname         %mklibname guile %{api} %{major}
%define develname	%mklibname guile %{api} -d

%define rlmajor		18
%define rlapi		18
%define rllibname	%mklibname guilereadline %{rlapi} %{rlmajor}

Name:		guile%{api}
Version:	2.0.14
Release:	%mkrel 13
Summary:	GNU implementation of Scheme for application extensibility
License:	LGPLv2+
Group:		Development/Other
URL:		https://www.gnu.org/software/guile/guile.html
Source0:	https://ftp.gnu.org/gnu/guile/guile-%{version}.tar.gz
Source1:	https://ftp.gnu.org/gnu/guile/guile-%{version}.tar.gz.sig
Patch1:		guile2.0.info.patch
Patch2:		guile-autoconf.patch
BuildRequires:	libgmp-devel
BuildRequires:	libltdl-devel
BuildRequires:	pkgconfig(ncurses)
BuildRequires:	pkgconfig(readline)
BuildRequires:	gettext-devel
BuildRequires:	pkgconfig(bdw-gc)
BuildRequires:	pkgconfig(libffi)
# for srfi-19.test
BuildRequires:	timezone
BuildRequires:	chrpath
BuildRequires:	texinfo
Obsoletes:	guile < 3.0
Requires(post):		update-alternatives
Requires(postun):	update-alternatives

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

%package -n %{rllibname}
Summary:	Libraries for Guile %{version}
Group:		System/Libraries

%package -n %{develname}
Summary:	Development headers and static library for libguile
Group:		Development/C
Requires:	%{name} = %{version}-%{release}
Requires:	%{libname} = %{version}-%{release}
Requires:	%{rllibname} = %{version}-%{release}
Provides:	lib%{name}-devel = %{version}-%{release}
Provides:	%{name}-devel = %{version}-%{release}
Obsoletes:	%{_lib}guile-devel < 3.0

%package runtime
Summary:        Guile runtime library
Group:          System/Libraries
Requires:	%{rllibname} = %{version}-%{release}
Obsoletes:	guile-runtime < 3.0

%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.

%description -n %{rllibname}
This package contains Guile shared object libraries.

%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

%description runtime
This package contains Scheme runtime for GUILE, including ice-9
Scheme module.

%prep
%setup -qn guile-%{version}
%autopatch -p1

#fix encodings
for i in libguile/ChangeLog*; do
	mv $i $i.old
	iconv -f ISO8859-1 -t UTF-8 $i.old -o $i
done

#drop info pages
rm -rf doc/ref/guile.info*

%build
autoreconf -vfi
%configure \
	--program-suffix="-%{api}" \
	--disable-error-on-warning \
	--disable-rpath \
	--disable-static \
	--with-threads \
	--with-pic

%make_build

%install
%make_install

#remove rpath
chrpath -d %{buildroot}%{_bindir}/guile-%{api}

#rename conflicting m4 files
mv %{buildroot}%{_datadir}/aclocal/{guile.m4,guile-%{api}.m4}

#drop conflicting info pages
rm -rf %{buildroot}%{_infodir}

#we don't want these
find %{buildroot} -name "*.la" -delete

#remove ldflags from pkg-conf .pc file private.libs
sed -i -e 's/-Wl,.*\s\+//g' %{buildroot}%{_libdir}/pkgconfig/guile-%{api}.pc

#for ghost files
touch %{buildroot}%{_datadir}/guile/%{api}/slibcat
touch %{buildroot}%{_datadir}/guile/%{api}/slib

#slib needs this
mkdir -p %{buildroot}%{_datadir}/guile/site

# Taken from Opensuse to prevent this ugly error message
# ldconfig: /lib64/libguile-2.0.so.22.7.2-gdb.scm is not an ELF file - it has the wrong magic bytes at the start.
mkdir -p %{buildroot}%{_datadir}/gdb/auto-load%{_libdir}
mv %{buildroot}%{_libdir}/libguile*-gdb.scm %{buildroot}%{_datadir}/gdb/auto-load%{_libdir}/

# Create .so symlink for guile dynload
mkdir -p %{buildroot}%{_libdir}/guile/%{api}/extensions
ln -s %{_libdir}/libguilereadline-v-%{rlapi}.so.%{rlmajor} %{buildroot}%{_libdir}/guile/%{api}/extensions/libguilereadline-v-%{rlapi}.so

%triggerin -- slib
ln -sfT ../../slib %{_datadir}/guile/%{api}/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%{api} -c "$pre
        (set! implementation-vicinity (lambda () \"%{_datadir}/guile/%{api}/\"))
        (require 'new-catalog)" &> /dev/null && break
    rm -f %{_datadir}/guile/%{api}/slibcat
done
:

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

%triggerpostun -- guile < 2.0.14-8
if [ -e %{_bindir}/guile -a ! -L %{_bindir}/guile ]; then
  rm -rf %{_bindir}/{guile,guile-tools,guild}
fi

%triggerpostun -n %{develname} -- %{_lib}guile-devel < 2.0.14-8, %{_lib}guile2.0-devel < 2.0.14-9
if [ -e %{_bindir}/guile-config -a ! -L %{_bindir}/guile-config ]; then
  rm -rf %{_bindir}/guile-{config,snarf}
fi

%posttrans
if [ "$1" -eq 1 ]; then
  update-alternatives \
    --install %{_bindir}/guile guile %{_bindir}/guile-%{api} 20 \
    --slave %{_bindir}/guile-tools guile-tools %{_bindir}/guile-tools-%{api} \
    --slave %{_bindir}/guild guild %{_bindir}/guild-%{api}
fi

%posttrans -n %{develname}
if [ "$1" -eq 1 ]; then
  update-alternatives \
    --install %{_bindir}/guile-config guile-config %{_bindir}/guile-config-%{api} 20 \
    --slave %{_bindir}/guile-snarf guile-snarf %{_bindir}/guile-snarf-%{api}
fi

%postun
if [ "$1" -eq 0 ]; then
  update-alternatives --remove guile %{_bindir}/guile-%{api}
fi

%postun -n %{develname}
if [ "$1" -eq 0 ]; then
  update-alternatives --remove guile-config %{_bindir}/guile-config-%{api}
fi

%files
%doc AUTHORS ChangeLog GUILE-VERSION LICENSE README THANKS
%ghost %{_bindir}/guile
%ghost %{_bindir}/guile-tools
%ghost %{_bindir}/guild
%{_bindir}/guile-%{api}
%{_bindir}/guile-tools-%{api}
%{_bindir}/guild-%{api}
%{_libdir}/guile/
%exclude %{_libdir}/guile/%{api}/
%{_datadir}/guile/
%exclude %{_datadir}/guile/%{api}/
%{_mandir}/man1/guile-%{api}.1*

%files -n %{libname}
%{_libdir}/libguile-%{api}.so.%{major}{,.*}

%files -n %{rllibname}
%{_libdir}/libguilereadline-v-%{rlapi}.so.%{rlmajor}{,.*}

%files -n %{develname}
%doc HACKING NEWS libguile/ChangeLog*
%ghost %{_bindir}/guile-config
%ghost %{_bindir}/guile-snarf
%{_bindir}/guile-config-%{api}
%{_bindir}/guile-snarf-%{api}
%{_datadir}/aclocal/guile-%{api}.m4
%{_includedir}/guile/
%{_libdir}/libguile-%{api}.so
%{_libdir}/libguilereadline-v-%{rlapi}.so
%{_libdir}/pkgconfig/guile-%{api}.pc
%{_datadir}/gdb/auto-load/%{_libdir}/libguile*-gdb.scm

%files runtime
%{_libdir}/guile/%{api}/
%{_datadir}/guile/%{api}/
# ugly workaround to not list files twice
%exclude %{_datadir}/guile/%{api}/slibcat
%exclude %{_datadir}/guile/%{api}/slib
%ghost %{_datadir}/guile/%{api}/slibcat
%ghost %{_datadir}/guile/%{api}/slib


%changelog
* Fri Mar 17 2023 daviddavid <daviddavid> 2.0.14-13.mga9
+ Revision: 1949592
- fix dangling links shipping symlink only in one pkg and in the runtime one's
  * /usr/lib64/guile/2.0/extensions/libguilereadline-v-18.so -> /usr/lib64/libguilereadline-v-18.so.18

* Thu Jan 12 2023 daviddavid <daviddavid> 2.0.14-12.mga9
+ Revision: 1932554
- rebuild for new libunistring 1.1

* Sat Mar 26 2022 umeabot <umeabot> 2.0.14-11.mga9
+ Revision: 1827763
- Mageia 9 Mass Rebuild

* Thu Aug 05 2021 luigiwalser <luigiwalser> 2.0.14-10.mga9
+ Revision: 1739644
- rebuild for libffi

* Sat Nov 14 2020 wally <wally> 2.0.14-9.mga8
+ Revision: 1645280
- remove also devel package binaries without api in file name before trying to use update-alternatives

* Sat Nov 07 2020 wally <wally> 2.0.14-8.mga8
+ Revision: 1643444
- add post and postun requires for update-alternatives
- remove binaries without api in file name before trying to use update-alternatives
- remove ldflags from pkg-conf .pc file private.libs
- drop conflicting info pages
- fork as guile2.0
- fix build with autoconf 2.69d
- make pkg parallel installable with other guile versions

* Wed Aug 19 2020 ovitters <ovitters> 2.0.14-7.mga8
+ Revision: 1615975
- remove install-info scriptlets, rely on filetrigger instead (mga#27107)

* Tue Jun 16 2020 ovitters <ovitters> 2.0.14-6.mga8
+ Revision: 1593500
- rebuild for new ffi

* Tue Feb 18 2020 umeabot <umeabot> 2.0.14-5.mga8
+ Revision: 1542180
- Mageia 8 Mass Rebuild
+ wally <wally>
- replace deprecated %%configure2_5x

* Sat Jan 04 2020 luigiwalser <luigiwalser> 2.0.14-4.mga8
+ Revision: 1476156
- BR libffi-devel
- rebuild for readline

* Thu Oct 04 2018 umeabot <umeabot> 2.0.14-3.mga7
+ Revision: 1317697
- Mageia 7 Mass Rebuild

* Tue Jan 02 2018 wally <wally> 2.0.14-2.mga7
+ Revision: 1189439
- rebuild for new readline

* Fri Oct 06 2017 mrambo3501 <mrambo3501> 2.0.14-1.mga7
+ Revision: 1169665
- version 2.0.14

* Thu Oct 27 2016 luigiwalser <luigiwalser> 2.0.13-2.mga6
+ Revision: 1063710
- rebuild to bump release tag

* Thu Oct 13 2016 luigiwalser <luigiwalser> 2.0.13-1.mga6
+ Revision: 1060665
- 2.0.13 (fixes CVE-2016-8605 and CVE-2016-8606)

* Thu Apr 14 2016 tv <tv> 2.0.11-4.mga6
+ Revision: 1001332
- make devel pkg requires guile

* Thu Feb 11 2016 umeabot <umeabot> 2.0.11-3.mga6
+ Revision: 954279
- Mageia 6 Mass Rebuild

* Tue Jul 14 2015 spuhler <spuhler> 2.0.11-2.mga6
+ Revision: 853731
- fixed ldconf non ELF file error message

* Sun Jul 12 2015 spuhler <spuhler> 2.0.11-1.mga6
+ Revision: 853460
-upgrade to vers 2.0.11 (from 2.0.9)

* Wed Oct 15 2014 umeabot <umeabot> 2.0.9-5.mga5
+ Revision: 748926
- Second Mageia 5 Mass Rebuild

* Tue Sep 16 2014 umeabot <umeabot> 2.0.9-4.mga5
+ Revision: 680044
- Mageia 5 Mass Rebuild

* Wed Sep 03 2014 luigiwalser <luigiwalser> 2.0.9-3.mga5
+ Revision: 671688
- rebuild for libunistring

* Sat Oct 19 2013 umeabot <umeabot> 2.0.9-2.mga4
+ Revision: 536214
- Mageia 4 Mass Rebuild

* Sun Sep 22 2013 fwang <fwang> 2.0.9-1.mga4
+ Revision: 483288
- new version 2.0.9

* Sat Jan 12 2013 umeabot <umeabot> 2.0.6-3.mga3
+ Revision: 352954
- Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Sat Jan 05 2013 cjw <cjw> 2.0.6-2.mga3
+ Revision: 339106
- add BuildRequires: texinfo

* Mon Aug 20 2012 spuhler <spuhler> 2.0.6-1.mga3
+ Revision: 282473
- upgrade to version 2.0.6
  Removed patches for older versions
+ luigiwalser <luigiwalser>
- rebuild for libffi

* Tue Apr 03 2012 mitya <mitya> 2.0.5-4.mga2
+ Revision: 228040
+ rebuild (emptylog)

* Tue Apr 03 2012 mitya <mitya> 2.0.5-3.mga2
+ Revision: 228037
+ rebuild (emptylog)

* Mon Apr 02 2012 mitya <mitya> 2.0.5-2.mga2
+ Revision: 227981
- Split Guile runtime off the main package to make Guile 1.8/2.0 parallel installable

* Sun Feb 05 2012 wally <wally> 2.0.5-1.mga2
+ Revision: 204830
- new version 2.0.5
- rediff P10

* Wed Dec 28 2011 wally <wally> 2.0.3-2.mga2
+ Revision: 188446
- add triggerin and triggerun scripts back

* Wed Dec 28 2011 wally <wally> 2.0.3-1.mga2
+ Revision: 188386
- new version 2.0.3
- new major and api versions
- rediff P0 and P2
- sync patches with OpenSuse
- for now conflict with older guile1.8
- clean .spec

* Sun Nov 20 2011 dmorgan <dmorgan> 1.8.8-6.mga2
+ Revision: 170152
- Remove .la files

* Thu Jul 07 2011 ahmad <ahmad> 1.8.8-5.mga2
+ Revision: 119732
- Update to 1.8.8
- We don't have sparc or ppc ports
- Drop patch4 (testsuite2), fixed upstream

* Mon Apr 18 2011 rtp <rtp> 1.8.7-5.mga1
+ Revision: 87633
- backport fix for the build of the documentation
+ dmorgan <dmorgan>
- Remove mdv macros
- imported package guile


* 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