211 lines
6.3 KiB
RPMSpec
211 lines
6.3 KiB
RPMSpec
Name: libkni3
|
|
Version: 3.9.2
|
|
Release: 14%{?dist}
|
|
Summary: C++ KNI library v3 for the Katana 300 robot arm
|
|
|
|
Group: System Environment/Libraries
|
|
License: GPLv2+
|
|
URL: http://www.neuronics.ch/cms_de/web/index.php?id=386
|
|
Source0: http://www.neuronics.ch/cms_de/mediabase/KNI_3.9.2.tar.gz
|
|
Patch0: kni-3.9.2-gcc43.patch
|
|
Patch1: kni-3.9.2-sofixes.patch
|
|
Patch2: kni-3.9.2-ctor.patch
|
|
Patch3: kni-3.9.2-noexit.patch
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
|
BuildRequires: doxygen, graphviz
|
|
%if 0%{?fedora} >= 9
|
|
BuildRequires: texlive-utils
|
|
%else
|
|
BuildRequires: tetex
|
|
%endif
|
|
|
|
BuildRequires: boost-devel
|
|
|
|
%description
|
|
Katana Native Interface is a C++ library for programmers who would like to
|
|
write their own programs, but don't want to implement the protocol and
|
|
device stuff katana is using.
|
|
|
|
This package contains the library for the Katana 300 series of the arm. For
|
|
newer robots use libkni (version 4 and above).
|
|
|
|
|
|
%package devel
|
|
Summary: Development files for %{name}
|
|
Group: Development/Libraries
|
|
Requires: %{name} = %{version}-%{release}
|
|
Requires: pkgconfig
|
|
|
|
%description devel
|
|
The %{name}-devel package contains libraries and header files for
|
|
developing applications that use %{name}.
|
|
|
|
|
|
%package static
|
|
Summary: Static libraries for %{name}
|
|
Group: Development/Libraries
|
|
Requires: %{name}-devel = %{version}-%{release}
|
|
|
|
%description static
|
|
This package contains static libraries that can be used to
|
|
compile static binaries using %{name}.
|
|
|
|
|
|
%package doc
|
|
Summary: Documentation for %{name}
|
|
Group: Documentation
|
|
|
|
%description doc
|
|
This package contains the documentation for developing with %{name}.
|
|
|
|
%package examples
|
|
Summary: Example applications for %{name}
|
|
Group: Applications/System
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
%description examples
|
|
This package contains demo applications for %{name}.
|
|
|
|
%prep
|
|
%setup -q -n KNI_%{version}
|
|
%patch0 -p1 -b .gcc43
|
|
%patch1 -p1 -b .sofixes
|
|
%patch2 -p1 -b .ctor
|
|
%patch3 -p1 -b .noexit
|
|
|
|
|
|
%build
|
|
make CFLAGS="%{optflags}"
|
|
make doc
|
|
echo "prefix=%{prefix}
|
|
exec_prefix=%{prefix}
|
|
libdir=%{_libdir}
|
|
includedir=%{_includedir}
|
|
|
|
Name: %{name}
|
|
Description: %{summary}
|
|
Version: %{version}
|
|
Libs: -L\${libdir} -lKNIBase3 -lKNI_InvKin3 -lKNI_LM3
|
|
Cflags: -I\${includedir}/kni3" > libkni3.pc
|
|
|
|
|
|
%install
|
|
rm -rf %{buildroot}
|
|
mkdir -p %{buildroot}
|
|
mkdir -p %{buildroot}%{_libdir}
|
|
install -m 0644 -p lib/linux/*.a %{buildroot}%{_libdir}
|
|
install -p lib/linux/*.so.* %{buildroot}%{_libdir}
|
|
for f in `find %{buildroot}%{_libdir} -name '*.so.*.*.*'`; do
|
|
ln -s `basename $f` %{buildroot}%{_libdir}/`echo \`basename $f\` | sed -e 's/\(\(.*\).so\)\(.*\)/\1/'`
|
|
ln -s `basename $f` %{buildroot}%{_libdir}/`objdump --private-headers $f | grep SONAME | awk '{print $2}'`
|
|
done
|
|
mkdir -p %{buildroot}%{_bindir}
|
|
for f in `find demo/ -perm /a+x -type f`; do
|
|
install -p $f %{buildroot}%{_bindir}/kni_`basename $f`
|
|
done
|
|
mkdir -p %{buildroot}%{_sysconfdir}/kni3
|
|
mkdir -p %{buildroot}%{_sysconfdir}/kni3/hd300
|
|
mkdir -p %{buildroot}%{_sysconfdir}/kni3/hd400
|
|
install -p -m 0644 configfiles300/*.cfg %{buildroot}%{_sysconfdir}/kni3/hd300
|
|
install -p -m 0644 configfiles400/*.cfg %{buildroot}%{_sysconfdir}/kni3/hd400
|
|
mkdir -p %{buildroot}%{_includedir}/kni3
|
|
cp -a include/* %{buildroot}%{_includedir}/kni3
|
|
mkdir -p %{buildroot}%{_docdir}/%{name}-doc-%{version}
|
|
cp -a doc/html %{buildroot}%{_docdir}/%{name}-doc-%{version}
|
|
install -p -m 0644 doc/*.pdf %{buildroot}%{_docdir}/%{name}-doc-%{version}
|
|
find %{buildroot} -name '.svn' | xargs rm -rf
|
|
mkdir -p %{buildroot}%{_libdir}/pkgconfig
|
|
install -p -m 0644 libkni3.pc %{buildroot}%{_libdir}/pkgconfig
|
|
|
|
|
|
%clean
|
|
rm -rf %{buildroot}
|
|
|
|
|
|
%post -p /sbin/ldconfig
|
|
|
|
%postun -p /sbin/ldconfig
|
|
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%doc LICENSE.txt readme.txt AUTHORS.txt
|
|
%{_libdir}/*.so.*
|
|
%dir %{_sysconfdir}/kni3
|
|
%dir %{_sysconfdir}/kni3/hd300
|
|
%dir %{_sysconfdir}/kni3/hd400
|
|
%config(noreplace)%{_sysconfdir}/kni3/*/*.cfg
|
|
|
|
%files devel
|
|
%defattr(-,root,root,-)
|
|
%{_includedir}/*
|
|
%{_libdir}/*.so
|
|
%{_libdir}/pkgconfig/*
|
|
|
|
%files static
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/*.a
|
|
|
|
%files doc
|
|
%defattr(-, root, root, 0755)
|
|
%{_docdir}/%{name}-doc-%{version}
|
|
|
|
%files examples
|
|
%defattr(-, root, root, 0755)
|
|
%{_bindir}/kni_*
|
|
|
|
|
|
%changelog
|
|
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.9.2-14
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
|
|
|
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.9.2-13
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
|
|
* Mon Sep 14 2009 Tim Niemueller <tim@niemueller.de> - 3.9.2-12
|
|
- doc package contains doc dir, not docs
|
|
|
|
* Fri Aug 28 2009 Tim Niemueller <tim@niemueller.de> - 3.9.2-11
|
|
- Rename shared libs to allow parallel installation for libkni
|
|
- Merge all shared lib related patches to one sofixes patch
|
|
|
|
* Sat Jun 13 2009 Tim Niemueller <tim@niemueller.de> - 3.9.2-10
|
|
- Update ctor and gcc43 patch for F11
|
|
|
|
* Tue Jun 09 2009 Tim Niemueller <tim@niemueller.de> - 3.9.2-9
|
|
- Rename to libkni3, libkni will be the most up2date version (v4), but this
|
|
version is still required for older Katana 300 arms
|
|
- Add patch to fix library building, did work on my machin only because libs
|
|
were installed on the system
|
|
|
|
* Wed Dec 03 2008 Tim Niemueller <tim@niemueller.de> - 3.9.2-8
|
|
- Fix noexit patch
|
|
|
|
* Mon Dec 01 2008 Tim Niemueller <tim@niemueller.de> - 3.9.2-7
|
|
- Make patch 3 apply with fuzz=0
|
|
- Added patch that removes calls to exit() but throws exceptions
|
|
|
|
* Sun Nov 09 2008 Tim Niemueller <tim@niemueller.de> - 3.9.2-6
|
|
- Updated license tag
|
|
- Consistent (non-)macro usage
|
|
|
|
* Tue Jul 15 2008 Tim Niemueller <tim@niemueller.de> - 3.9.2-5
|
|
- Added ctor patch which adds an optional argument to the ctor to allow for
|
|
accessing an arbitrary device, for example a usb2ser converter
|
|
(RoboCup 2008)
|
|
|
|
* Mon Jun 23 2008 Tim Niemueller <tim@niemueller.de> - 3.9.2-4
|
|
- More .so fixes, link libs against base lib to get rid of
|
|
undefined-non-weak-symbol rpmlint warnings
|
|
|
|
* Mon Jun 16 2008 Tim Niemueller <tim@niemueller.de> - 3.9.2-3
|
|
- Fixed summary
|
|
|
|
* Thu Jun 12 2008 Tim Niemueller <tim@niemueller.de> - 3.9.2-2
|
|
- Upgraded BR to support building on Fedora version < 9
|
|
|
|
* Sat Jun 07 2008 Tim Niemueller <tim@niemueller.de> - 3.9.2-1
|
|
- Initial package
|
|
|