ode/ode.spec
Michael Vetter 0f95383a06 Accepting request 690342 from home:seil0:branches:openSUSE:Factory
- Update to 0.16
  * The commentary from 11/05/2018 was wrong. The constraints were not
    reset to their natural order and remained randomized.
    The other thing that was missing was full contraint reorder without 
    separation into independent and dependent ones. The algorithm doesn't
    converge without it well.
  * An incorrect optimization to Jacobian Copy building code from #1938
    that resulted in corrupt data in multi-threaded execution mode was 
    fixed.
  * An unintended change from commit #1898 has been reverted.
    The QuickStep used to solve with randomized constraint order 
    each 8th iteration. The other iterations, the constraints 
    were reset to their natural order, as generated, with the dependent
    constraints gathered in reverse order at end (the reverse order is 
    somehow important). With the commit #1898 the constraints were
    randomly reordered each 8th iteration but then remained 
    in that randomized order and only were re-randomized on subsequent
    multiples of 8.
  * CMake support for project file generation has been added.
  * dxHashSpace::collide() has been changed to fault host program 
    if scene gets too large and causes integer overflow.
  * Memory and pointer size integer type use has been changed so that 
    internal typedefs are used instead of "_t" suffixed types.
  * Introduction of cooperative algorithms API. 
    L*D*LT cooperative factorization and linear equation system 
    cooperative solving have been implemented.
  * AtomicReadReorderBarrier, AtomicStore, AtomicStorePointer functions 
    have been added and some atomic function implementations have been 
    improved in OU.
- adjusted ode-iso-cpp.patch
- build with --enable-double-precision

OBS-URL: https://build.opensuse.org/request/show/690342
OBS-URL: https://build.opensuse.org/package/show/games/ode?expand=0&rev=8
2019-04-01 13:59:10 +00:00

115 lines
3.7 KiB
RPMSpec

#
# spec file for package ode
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define so_maj 8
%define lname libode%{so_maj}
Name: ode
Version: 0.16
Release: 0
Summary: Open Dynamics Engine Library
License: LGPL-2.1+ OR BSD-3-Clause OR Zlib
Group: Development/Libraries/C and C++
Url: http://ode.org/
Source0: https://bitbucket.org/odedevs/ode/downloads/%{name}-%{version}.tar.gz
Source1: ode-config.1
Patch0: ode-iso-cpp.patch
BuildRequires: Mesa-devel
BuildRequires: freeglut-devel
BuildRequires: gcc-c++
BuildRequires: pkgconfig
%description
ODE is an open source, high performance library for simulating rigid
body dynamics. It is fully featured, stable, mature and platform
independent with an easy to use C/C++ API. It has advanced joint types
and integrated collision detection with friction. ODE is useful for
simulating vehicles, objects in virtual reality environments and
virtual creatures. It is currently used in many computer games, 3D
authoring tools and simulation tools.
%package -n %{lname}
Summary: Open Dynamics Engine Library development files
Group: System/Libraries
%description -n %{lname}
ODE is an open source, high performance library for simulating rigid
body dynamics. It is fully featured, stable, mature and platform
independent with an easy to use C/C++ API. It has advanced joint types
and integrated collision detection with friction. ODE is useful for
simulating vehicles, objects in virtual reality environments and
virtual creatures. It is currently used in many computer games, 3D
authoring tools and simulation tools.
%package devel
Summary: Open Dynamics Engine Library development files
Group: Development/Libraries/C and C++
Requires: %{lname} = %{version}
Provides: libode-devel = %{version}
%description devel
ODE is an open source, high performance library for simulating rigid
body dynamics. It is fully featured, stable, mature and platform
independent with an easy to use C/C++ API. It has advanced joint types
and integrated collision detection with friction. ODE is useful for
simulating vehicles, objects in virtual reality environments and
virtual creatures. It is currently used in many computer games, 3D
authoring tools and simulation tools.
%prep
%setup -q -n ode-%{version}
%patch0 -p1
%build
#autoreconf -fi
CFLAGS="%{optflags} -fno-strict-aliasing"
CXXFLAGS="$CFLAGS"
export CFLAGS CXXFLAGS
export X_LIBS="-lX11"
%configure --enable-shared --disable-static --enable-double-precision
make V=1 %{?_smp_mflags}
%install
%make_install
mkdir -p %{buildroot}%{_mandir}/man1
gzip -c9 %{SOURCE1} | tee -a %{buildroot}%{_mandir}/man1/ode-config.1.gz
find %{buildroot} -type f -name "*.la" -delete -print
%ifarch %{ix86}
# Fail.
%else
%check
make V=1 %{?_smp_mflags} check
%endif
%post -n %{lname} -p /sbin/ldconfig
%postun -n %{lname} -p /sbin/ldconfig
%files -n %{lname}
%doc LICENSE.TXT
%{_libdir}/libode.so.%{so_maj}.*
%files devel
%{_bindir}/ode-config
%{_mandir}/man1/ode-config.1%{ext_man}
%{_includedir}/ode
%{_libdir}/libode.so
%{_libdir}/libode.so.%{so_maj}
%{_libdir}/pkgconfig/*.pc
%changelog