openbabel/openbabel.spec

389 lines
13 KiB
RPMSpec

%define perl_vendorarch %(eval "`perl -V:installvendorarch`"; echo $installvendorarch)
%define perl_archlib %(eval "`perl -V:archlib`"; echo $archlib)
%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
%define ruby_sitearch %(ruby -rrbconfig -e 'puts Config::CONFIG["sitearchdir"]')
%define beta_ver %{nil}
%define beta_str %{nil}
%define beta_dir %{nil}
Name: openbabel
Version: 2.3.1
Release: 1%{beta_ver}%{?dist}
Summary: Chemistry software file format converter
License: GPLv2
Group: Applications/File
URL: http://openbabel.org/
Source0: http://downloads.sourceforge.net/sourceforge/openbabel/%{name}-%{version}%{beta_str}.tar.gz
Source1: obgui.desktop
Patch1: %{name}-rpm.patch
# fix plugin directory location (#680292, patch by lg)
Patch4: openbabel-2.3.0-plugindir.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: cmake
BuildRequires: desktop-file-utils
BuildRequires: eigen2-devel
BuildRequires: inchi-devel >= 1.0.3
BuildRequires: libxml2-devel
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: python
BuildRequires: python-devel
BuildRequires: ruby
BuildRequires: ruby-devel
BuildRequires: swig
BuildRequires: wxGTK-devel
BuildRequires: zlib-devel
BuildRequires: %{_bindir}/convert
%description
Open Babel is a free, open-source version of the Babel chemistry file
translation program. Open Babel is a project designed to pick up where
Babel left off, as a cross-platform program and library designed to
interconvert between many file formats used in molecular modeling,
computational chemistry, and many related areas.
This package contains the command-line utility, which is intended to
be used as a replacement for the original babel program, to translate
between various chemical file formats as well as a wide variety of
utilities to foster development of other open source scientific
software.
%package gui
Summary: Chemistry software file format converter - GUI version
Group: Applications/File
Requires: hicolor-icon-theme
%description gui
Open Babel is a free, open-source version of the Babel chemistry file
translation program. Open Babel is a project designed to pick up where
Babel left off, as a cross-platform program and library designed to
interconvert between many file formats used in molecular modeling,
computational chemistry, and many related areas.
This package contains the graphical interface.
%package libs
Summary: Chemistry software file format converter - libraries
Group: System Environment/Libraries
Obsoletes: %{name} < 2.3.0-1
%description libs
Open Babel is a free, open-source version of the Babel chemistry file
translation program. Open Babel is a project designed to pick up where
Babel left off, as a cross-platform program and library designed to
interconvert between many file formats used in molecular modeling,
computational chemistry, and many related areas.
This package contains the C++ library, which includes all of the
file-translation code.
%package devel
Summary: Development tools for programs which will use the Open Babel library
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
Requires: pkgconfig
%description devel
The %{name}-devel package includes the header files and libraries
necessary for developing programs using the Open Babel library.
If you are going to develop programs which will use this library
you should install %{name}-devel. You'll also need to have the
%{name} package installed.
%package -n perl-%{name}
Group: System Environment/Libraries
Summary: Perl wrapper for the Open Babel library
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
Obsoletes: %{name}-perl < 2.2.0
Provides: %{name}-perl = %{version}-%{release}
%description -n perl-%{name}
Perl wrapper for the Open Babel library.
%package -n python-%{name}
Group: System Environment/Libraries
Summary: Python wrapper for the Open Babel library
Obsoletes: %{name}-python < 2.2.0
Provides: %{name}-python = %{version}-%{release}
%description -n python-%{name}
Python wrapper for the Open Babel library.
%package -n ruby-%{name}
Summary: Ruby wrapper for the Open Babel library
Group: Development/Libraries
Requires: ruby(abi) = 1.8
Requires: %{name} = %{version}-%{release}
%description -n ruby-%{name}
Ruby wrapper for the Open Babel library.
%prep
%setup -q -n %{name}-%{version}%{beta_dir}
%patch1 -p1 -b .r
%patch4 -p1 -b .plugindir
chmod 644 src/formats/{fchk,genbank,mmcif}format.cpp
chmod 644 src/math/align.cpp
chmod 644 include/openbabel/{graphsym.h,math/align.h}
convert src/GUI/babel.xpm -transparent white babel.png
%build
%cmake \
-DCMAKE_SKIP_RPATH:BOOL=ON \
-DBUILD_GUI:BOOL=ON \
-DPYTHON_BINDINGS:BOOL=ON \
-DPERL_BINDINGS:BOOL=ON \
-DRUBY_BINDINGS:BOOL=ON \
-DOPENBABEL_USE_SYSTEM_INCHI=true \
.
make VERBOSE=1 %{?_smp_mflags}
%install
%{__rm} -rf $RPM_BUILD_ROOT
touch scripts/CMakeLists.txt
make VERBOSE=1 DESTDIR=$RPM_BUILD_ROOT install
rm $RPM_BUILD_ROOT%{_libdir}/cmake/openbabel2/*.cmake
rm $RPM_BUILD_ROOT%{_libdir}/perl5/perllocal.pod
rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Chemistry/OpenBabel/{.packlist,OpenBabel.bs}
chmod 755 $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Chemistry/OpenBabel/OpenBabel.so
desktop-file-install --dir=$RPM_BUILD_ROOT%{_datadir}/applications %{SOURCE1}
install -Dpm644 babel.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/babel.png
%clean
%{__rm} -rf $RPM_BUILD_ROOT
%if 0
%check
%{__make} test
%endif
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%{_bindir}/babel
%{_bindir}/ob*
%{_bindir}/roundtrip
%{_mandir}/man1/*
%files gui
%defattr(-,root,root,-)
%{_bindir}/obgui
%{_datadir}/applications
%{_datadir}/icons/hicolor/32x32/apps/babel.png
%files libs
%defattr(-,root,root,-)
%doc AUTHORS COPYING ChangeLog README THANKS
%doc doc/*.html
%doc doc/README* doc/dioxin.*
%{_libdir}/libopenbabel.so.*
%{_libdir}/%{name}
%{_datadir}/%{name}
%files devel
%defattr(-,root,root,-)
%{_includedir}/%{name}-2.0
%{_libdir}/libopenbabel.so
%{_libdir}/pkgconfig/*.pc
%files -n perl-%{name}
%defattr(-,root,root,-)
%{perl_vendorarch}/Chemistry/OpenBabel.pm
%dir %{perl_vendorarch}/*/Chemistry/OpenBabel
%{perl_vendorarch}/*/Chemistry/OpenBabel/OpenBabel.so
%files -n python-%{name}
%defattr(-,root,root,-)
%{python_sitearch}/_openbabel.so
%{python_sitearch}/openbabel.py*
%{python_sitearch}/pybel.py*
%{python_sitearch}/openbabel*.egg-info
%files -n ruby-%{name}
%defattr(-, root, root, -)
%{ruby_sitearch}/openbabel.so
%changelog
* Fri Oct 21 2011 Dominik Mierzejewski <rpm@greysector.net> 2.3.0-1
- update to 2.3.1
- drop obsolete patches (merged upstream)
- add desktop file for the GUI
* Mon Jun 20 2011 Marcela Mašláňová <mmaslano@redhat.com> - 2.3.0-5
- Perl mass rebuild
* Thu Jun 09 2011 Marcela Mašláňová <mmaslano@redhat.com> - 2.3.0-4
- Perl 5.14 mass rebuild
* Tue Mar 22 2011 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.3.0-3
- fix plugin directory location (#680292, patch by lg)
- show forcefields list in obenergy output (#680292, patch by lg)
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Sun Nov 21 2010 Dominik Mierzejewski <rpm@greysector.net> 2.3.0-1
- build system switched to cmake
- enabled GUI
- enabled Eigen2
- updated to 2.3.0 final
- patched to fix various build issues
- split libs and GUI into separate subpackages
- fixed rpmlint warnings about strange file permissions
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 2.2.3-4
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
* Wed Jul 07 2010 Dominik Mierzejewski <rpm@greysector.net> 2.2.3-3
- rebuild against inchi 1.0.3
* Thu Apr 29 2010 Marcela Maslanova <mmaslano@redhat.com> - 2.2.3-2
- Mass rebuild with perl-5.12.0
* Wed Aug 26 2009 Dominik Mierzejewski <rpm@greysector.net> 2.2.3-1
- updated to 2.2.3
- dropped obsolete patch
- fixed configure to detect external inchi (both pre-1.0.2 and 1.0.2)
- re-enabled inchi tests
* Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.1-0.2.b3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Sun Mar 01 2009 Dominik Mierzejewski <rpm@greysector.net> 2.2.1-0.1.b3
- update to 2.2.1 beta3
- drop some obsolete workarounds
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 2.2.0-2
- Rebuild for Python 2.6
* Sun Jul 06 2008 Dominik Mierzejewski <rpm@greysector.net> 2.2.0-1
- updated to 2.2.0
- new URL
- dropped Python binding split patch (broken, reverted upstream)
- fixed testsuite and disabled inchi tests temporarily
- added strict perl version requirements (patch by Paul Howarth, bug #453120)
- fixed some rpmlint warnings
- merged a sed call into -rpm patch
* Fri Jun 06 2008 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.2.0-0.5.b5
- backport upstream patch to split Python binding (should fix #427700 for good)
- drop no longer needed ppc64 SWIG/GCC flag hackery
* Thu May 29 2008 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.2.0-0.4.b5
- update to 2.2.0 beta5
* Fri May 09 2008 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.2.0-0.3.b4
- generate Python binding with -fastdispatch on F9+ ppc64 (#427700)
- add -mno-sum-in-toc to optflags on F9+ ppc64 (#427700)
* Sun Mar 02 2008 Dominik Mierzejewski <rpm@greysector.net> 2.2.0-0.2.b4
- updated to 2.2.0 beta4
- enable CML tests again (fixed upstream)
* Fri Feb 22 2008 Dominik Mierzejewski <rpm@greysector.net> 2.2.0-0.1.b3
- updated to 2.2.0 beta3
- renamed language bindings subpackages
- added ruby bindings
- fixed ruby buildings build with local shared lib
- disable CML tests (broken upstream)
* Mon Jan 07 2008 Dominik Mierzejewski <rpm@greysector.net> 2.1.1-4
- work around gcc bug: http://gcc.gnu.org/PR34708
* Sun Jan 06 2008 Dominik Mierzejewski <rpm@greysector.net> 2.1.1-3
- fix build with gcc-4.3
- include python egg-info
* Wed Nov 28 2007 Dominik Mierzejewski <rpm@greysector.net> 2.1.1-2
- build against external inchi
* Fri Aug 17 2007 Dominik Mierzejewski <rpm@greysector.net> 2.1.1-1
- updated to 2.1.1
- better work around for testsuite crash
- updated the License tag according to the new guidelines
* Tue Apr 17 2007 Dominik Mierzejewski <rpm@greysector.net> 2.1.0-2
- work around testsuite crash
* Mon Apr 16 2007 Dominik Mierzejewski <rpm@greysector.net> 2.1.0-1
- updated to 2.1.0 final
* Thu Mar 29 2007 Dominik Mierzejewski <rpm@greysector.net> 2.1.0-0.3.b8
- updated to beta8
- dropped upstream'd patch
* Sun Mar 18 2007 Dominik Mierzejewski <rpm@greysector.net> 2.1.0-0.2.b6
- updated to beta6
- dropped upstream'd patch
- fixed my name in ChangeLog
- copied inchi header for inchi-devel (TODO: make inchi a separate package)
- added %%check
* Sun Dec 17 2006 Dominik Mierzejewski <rpm@greysector.net> 2.1.0-0.1.b4
- update to 2.1.0b4 to fix building with new python
- dropped obsolete patch
- ensure proper inchi versioning
* Tue Oct 03 2006 Dominik Mierzejewski <rpm@greysector.net> 2.0.2-5
- rebuilt for unwind info generation, broken in gcc-4.1.1-21
* Wed Sep 20 2006 Dominik Mierzejewski <rpm@greysector.net> 2.0.2-4
- .pyo files no longer ghosted
- fix chicken-and-egg problem when building perl and python bindings
* Tue Aug 29 2006 Dominik Mierzejewski <rpm@greysector.net> 2.0.2-3
- simplified autotools invocation
- mass rebuild
* Mon Aug 07 2006 Dominik Mierzejewski <rpm@greysector.net> 2.0.2-2
- simplified file lists and permissions
- removed weird character from inchi summary and description
- added missing pkgconfig Req: for -devel
* Sat Aug 05 2006 Dominik Mierzejewski <rpm@greysector.net> 2.0.2-1
- updated to 2.0.2
- dropped GCC4 fix (upstream'd)
- split off inchi package
- added python and perl bindings packages
* Sat Jan 07 2006 Dominik Mierzejewski <rpm@greysector.net> 2.0.0-1
- updated to 2.0.0
- fix compilation with GCC4
- FE compliance
* Thu Feb 10 2005 Dominik Mierzejewski <rpm@greysector.net> 1.100.2-1
- rebuilt for Fedora 3
* Tue Jan 18 2005 ALT QA Team Robot <qa-robot@altlinux.org> 1.100.2-alt1.1
- Rebuilt with libstdc++.so.6.
* Wed Mar 03 2004 Michael Shigorin <mike@altlinux.ru> 1.100.2-alt1
- 1.100.2
* Wed Dec 17 2003 Michael Shigorin <mike@altlinux.ru> 1.100.1-alt2
- removed *.la
- don't package static library by default
* Mon Sep 22 2003 Michael Shigorin <mike@altlinux.ru> 1.100.1-alt1
- 1.100.1
- #2994 fixed; thanks to Alex Ott (ott@) for a pointer
- spec cleanup (underlibification fixup)
* Mon Jun 30 2003 Michael Shigorin <mike@altlinux.ru> 1.100.0-alt1
- built for ALT Linux
- based on Mandrake Cooker spec by:
* Lenny Cartier <lenny@mandrakesoft.com>
* Austin Acton <aacton@yorku.ca>
- spec cleanup