[Coin2] - Reflect upstream having changed URL. - Introduce alternative coin-config to allow parallel install

corsepiu corsepiu at fedoraproject.org
Wed Sep 29 13:53:08 UTC 2010


commit 670a2fe439ec4dcb829e9771ffa61602f1f46cb3
Author: Ralf Corsépius <corsepiu at fedoraproject.org>
Date:   Wed Sep 29 15:53:05 2010 +0200

    - Reflect upstream having changed URL.
    - Introduce alternative coin-config to allow parallel installation of
      other Coin*-devel packages.
    - Further minor *.spec cleanups.

 Coin2.spec |   62 +++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 47 insertions(+), 15 deletions(-)
---
diff --git a/Coin2.spec b/Coin2.spec
index 8f4236d..0f9e313 100644
--- a/Coin2.spec
+++ b/Coin2.spec
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2004, 2005, 2006, 2007, 2008, 2009 Ralf Corsepius, Ulm, Germany.
+# Copyright (c) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Ralf Corsepius, Ulm, Germany.
 # This file and all modifications and additions to the pristine
 # package are under the same license as the package itself.
 #
@@ -7,23 +7,19 @@
 %define coin_includedir %{_includedir}/Coin2
 %define coin_htmldir %{_datadir}/Coin2
 
-%if 0%{fedora} < 12
-%define libopenal_SONAME libopenal.so.0
-%else
 %define libopenal_SONAME libopenal.so.1
-%endif
 %define libsimage_SONAME libsimage.so.20
 
 Summary: High-level 3D visualization library
 Name: Coin2
 Version: 2.5.0
-Release: 8%{?dist}
+Release: 9%{?dist}
 
 License: GPLv2+
 Group: System Environment/Libraries
 URL: http://www.coin3d.org
 
-Source: ftp://ftp.coin3d.org/pub/coin/src/Coin-%{version}.tar.gz
+Source0: ftp://ftp.coin3d.org/pub/coin/src/all/Coin-%{version}.tar.gz
 
 Patch0: Coin-2.4.6-simage-soname.diff
 Patch1: Coin-2.4.6-openal-soname.diff
@@ -56,9 +52,12 @@ Requires: fontconfig-devel
 Requires: freetype-devel
 Requires: libGLU-devel
 Requires: pkgconfig
+Requires(post): /usr/sbin/alternatives
+Requires(preun): /usr/sbin/alternatives
+Provides: pkgconfig(Coin)
 
 %description devel
-Development package for Coin
+Development package for Coin2
 
 %prep
 %setup -q -n Coin-%{version}
@@ -69,9 +68,7 @@ Development package for Coin
 find -name 'Makefile.*' -exec sed -i -e 's,\$(datadir)/Coin,$(datadir)/Coin2,' {} \;
 
 # bogus permissions
-for a in $(find . \( -name '*.h' -o -name '*.cpp' -o -name '*.c' \)); do \
-  test -x $a && chmod -x $a; \
-done
+find . \( -name '*.h' -o -name '*.cpp' -o -name '*.c' \) -a -executable -exec chmod -x {} \;
 
 # convert sources to utf-8
 for a in $(find . -type f -exec file -i {} \; | grep -i iso | sed -e 's,:.*,,'); do \
@@ -121,6 +118,13 @@ rm -f ${RPM_BUILD_ROOT}%{_libdir}/lib*.la
 install -d -m 755 ${RPM_BUILD_ROOT}%{_libdir}/Coin2
 mv ${RPM_BUILD_ROOT}%{_datadir}/Coin2/conf ${RPM_BUILD_ROOT}%{_libdir}/Coin2
 
+mv ${RPM_BUILD_ROOT}%{_bindir}/coin-config ${RPM_BUILD_ROOT}%{_libdir}/Coin2/coin-config
+ln -s %{_libdir}/Coin2/coin-config ${RPM_BUILD_ROOT}%{_bindir}/coin-config
+mv ${RPM_BUILD_ROOT}%{_libdir}/pkgconfig/Coin.pc ${RPM_BUILD_ROOT}%{_libdir}/pkgconfig/Coin2.pc
+ln -s %{_libdir}/pkgconfig/Coin2.pc ${RPM_BUILD_ROOT}%{_libdir}/pkgconfig/Coin.pc
+mv ${RPM_BUILD_ROOT}%{_datadir}/aclocal/coin.m4 ${RPM_BUILD_ROOT}%{_datadir}/aclocal/coin2.m4
+ln -s %{_datadir}/aclocal/coin2.m4 ${RPM_BUILD_ROOT}%{_datadir}/aclocal/coin.m4
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -128,6 +132,26 @@ rm -rf $RPM_BUILD_ROOT
 
 %postun -p /sbin/ldconfig
 
+%post devel
+link=$(readlink -e "%{_bindir}/coin-config")
+if [ "$link" == "%{_bindir}/coin-config" ]; then
+  rm -f %{_bindir}/coin-config
+fi
+if [ "$link" == "%{_libdir}/Coin2/coin-config" ]; then
+  rm -f %{_bindir}/coin-config
+fi
+
+/usr/sbin/alternatives --install "%{_bindir}/coin-config" coin-config \
+  "%{_libdir}/Coin2/coin-config" 40 \
+  --slave %{_libdir}/pkgconfig/Coin.pc Coin.pc %{_libdir}/pkgconfig/Coin2.pc \
+  --slave %{_datadir}/aclocal/coin.m4 coin.m4 %{_datadir}/aclocal/coin2.m4 \
+  --slave %{_libdir}/libCoin.so libCoin.so %{_libdir}/libCoin.so.40
+
+%preun devel
+if [ $1 = 0 ]; then
+  /usr/sbin/alternatives --remove coin-config "%{_libdir}/Coin2/coin-config"
+fi
+
 %files
 %defattr(-,root,root,-)
 %doc AUTHORS ChangeLog* COPYING README* LICENSE* THANKS FAQ*
@@ -135,19 +159,27 @@ rm -rf $RPM_BUILD_ROOT
 
 %files devel
 %defattr(-,root,root,-)
-%{_bindir}/*
+%ghost %{_bindir}/coin-config
 %{coin_includedir}
-%{_libdir}/libCoin.so
-%{_datadir}/aclocal/coin.m4
+%ghost %{_libdir}/libCoin.so
+%{_datadir}/aclocal/coin2.m4
+%ghost %{_datadir}/aclocal/coin.m4
 %dir %{_datadir}/Coin2
 %{_datadir}/Coin2/draggerDefaults
 %{_datadir}/Coin2/shaders
 %{_libdir}/Coin2
 %{_mandir}/man?/*
 %doc %{coin_htmldir}/Coin
-%{_libdir}/pkgconfig/Coin.pc
+%{_libdir}/pkgconfig/Coin2.pc
+%ghost %{_libdir}/pkgconfig/Coin.pc
 
 %changelog
+* Wed Sep 29 2010 Ralf Corsépius <corsepiu at fedoraproject.org> - 2.5.0-9
+- Reflect upstream having changed URL.
+- Introduce alternative coin-config to allow parallel installation of
+  other Coin*-devel packages.
+- Further minor *.spec cleanups.
+
 * Sun Nov 22 2009 Ralf Corsépius <corsepiu at fedoraproject.org> - 2.5.0-8
 - Eliminate /usr/share/Coin.
 - Rename mans into *coin2.


More information about the scm-commits mailing list