[ode] - Add a -double subpackage providing a version of ode compiled with double precision (#574034)

Hans de Goede jwrdegoede at fedoraproject.org
Mon Nov 8 21:30:00 UTC 2010


commit 1b34496e9a97cd2e88816c72cfa8249a27506c35
Author: Hans de Goede <hdegoede at redhat.com>
Date:   Mon Nov 8 22:30:46 2010 +0100

    - Add a -double subpackage providing a version of ode compiled with
      double precision (#574034)

 ode-0.6-configure.patch |   22 ----------------------
 ode-0.8-install.patch   |   44 --------------------------------------------
 ode.spec                |   47 ++++++++++++++++++++++++++++++++++++++++++++---
 3 files changed, 44 insertions(+), 69 deletions(-)
---
diff --git a/ode.spec b/ode.spec
index e0f227a..edd66fe 100644
--- a/ode.spec
+++ b/ode.spec
@@ -1,6 +1,6 @@
 Name:           ode
 Version:        0.11.1
-Release:        4%{?dist}
+Release:        5%{?dist}
 Summary:        High performance library for simulating rigid body dynamics
 Group:          System Environment/Libraries
 License:        BSD or LGPLv2+
@@ -23,14 +23,24 @@ virtual reality environments and virtual creatures. It is currently used in
 many computer games, 3D authoring tools and simulation tools.
 
 
+%package        double
+Summary:        Ode physics library compiled with double precision
+Group:          Development/Libraries
+
+%description    double
+The %{name}-double package contains a version of the ODE library for simulating
+rigid body dynamics compiled with double precision.
+
+
 %package        devel
 Summary:        Development files for %{name}
 Group:          Development/Libraries
-Requires:       %{name} = %{version}-%{release}, pkgconfig
+Requires:       %{name} = %{version}-%{release}
+Requires:       %{name}-double = %{version}-%{release}
 
 %description    devel
 The %{name}-devel package contains libraries and header files for
-developing applications that use %{name}.
+developing applications that use %{name} or %{name}-double.
 
 
 %prep
@@ -45,6 +55,15 @@ chmod -x ode/src/stepfast.cpp include/ode/collision_trimesh.h \
 
 
 %build
+%configure --enable-shared --disable-static --enable-double-precision
+make %{?_smp_mflags} X_LIBS=-lX11 \
+    libode_la_LDFLAGS="-release double -version-info 2:1:1"
+sed -i 's|-lode|-lode-double|g' ode-config ode.pc
+mv ode-config ode-double-config
+mv ode.pc ode-double.pc
+mv ode/src/.libs/libode-double.so.1.1.1 .
+make distclean
+
 CFLAGS="%{optflags} -ffast-math"
 CXXFLAGS="%{optflags} -ffast-math"
 %configure --enable-shared --disable-static
@@ -55,6 +74,12 @@ make %{?_smp_mflags} X_LIBS=-lX11
 rm -rf $RPM_BUILD_ROOT
 make install DESTDIR=$RPM_BUILD_ROOT
 rm $RPM_BUILD_ROOT%{_libdir}/libode.la
+# DIY libode-double install
+install -m 755 ode-double-config $RPM_BUILD_ROOT%{_bindir}
+install -m 755 libode-double.so.1.1.1 $RPM_BUILD_ROOT%{_libdir}
+ln -s libode-double.so.1.1.1 $RPM_BUILD_ROOT%{_libdir}/libode-double.so.1
+ln -s libode-double.so.1.1.1 $RPM_BUILD_ROOT%{_libdir}/libode-double.so
+install -m 644 ode-double.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig
 
 
 %clean
@@ -65,21 +90,37 @@ rm -rf $RPM_BUILD_ROOT
 
 %postun -p /sbin/ldconfig
 
+%post double -p /sbin/ldconfig
+
+%postun double -p /sbin/ldconfig
+
 
 %files
 %defattr(-,root,root,-)
 %doc CHANGELOG.txt LICENSE*.TXT README.txt
 %{_libdir}/libode.so.1*
 
+%files double
+%defattr(-,root,root,-)
+%doc CHANGELOG.txt LICENSE*.TXT README.txt
+%{_libdir}/libode-double.so.1*
+
 %files devel
 %defattr(-,root,root,-)
 %{_bindir}/%{name}-config
+%{_bindir}/%{name}-double-config
 %{_includedir}/%{name}
 %{_libdir}/libode.so
+%{_libdir}/libode-double.so
 %{_libdir}/pkgconfig/%{name}.pc
+%{_libdir}/pkgconfig/%{name}-double.pc
 
 
 %changelog
+* Mon Nov  8 2010 Hans de Goede <hdegoede at redhat.com> 0.11.1-5
+- Add a -double subpackage providing a version of ode compiled with
+  double precision (#574034)
+
 * Tue Feb 16 2010 Hans de Goede <hdegoede at redhat.com> 0.11.1-4
 - Fix FTBFS (#564642)
 


More information about the scm-commits mailing list