openbabel/openbabel.spec
Dominik Mierzejewski b8204de397 - updated to 2.2.0 beta7
- new URL
- dropped Python binding split patch (broken, reverted upstream)
2008-07-02 18:49:45 +00:00

304 lines
9.5 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 b7
%define beta_str b7-20080627-r2628
Name: openbabel
Version: 2.2.0
Release: 0.5.%{beta_ver}%{?dist}
Summary: Chemistry software file format converter
License: GPLv2
Group: Applications/File
URL: http://openbabel.org/
Source: http://dl.sourceforge.net/sourceforge/openbabel/%{name}-%{version}%{beta_str}.tar.gz
Patch: %{name}-gcc43.patch
Patch1: %{name}-rpm.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: inchi-devel
BuildRequires: libtool
BuildRequires: libxml2-devel
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: python
BuildRequires: python-devel
BuildRequires: ruby
BuildRequires: ruby-devel
BuildRequires: swig
#TODO: enable when GUI is functional
#BuildRequires: wxGTK-devel
BuildRequires: zlib-devel
%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.
Open Babel includes two components, a command-line utility and a C++
library. The command-line utility is intended to be used as a replacement
for the original babel program, to translate between various chemical file
formats. The C++ library includes all of the file-translation code as well
as a wide variety of utilities to foster development of other open source
scientific software.
%package devel
Summary: Development tools for programs which will use the Open Babel library
Group: Development/Libraries
Requires: %{name} = %{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
Obsoletes: %{name}-perl < 2.2.0
Provides: %{name}-perl
%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
%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_ver}
%patch -p1 -b .gcc43
%patch1 -p1 -b .r
%build
# don't reference m4 include directory which isn't shipped in the tarball
# there's also a typo ("autconf" instead of "autoconf")
sed -i -e 's/ACLOCAL_AMFLAGS=/#ACLOCAL_AMFLAGS=/g' Makefile.am
autoreconf --force --install
%configure --enable-shared=yes --enable-static=no --enable-maintainer-mode
%{__make} %{?_smp_mflags}
pushd scripts/perl
# disable the check for the installed library, the library isn't installed yet
# at this point and isn't expected to
sed -i -e 's/check_lib_or_exit/#check_lib_or_exit/g' Makefile.PL
perl Makefile.PL INSTALLDIRS="vendor"
%{__make} %{?_smp_mflags} OPTIMIZE="$RPM_OPT_FLAGS"
popd
pushd scripts/python
python setup.py build
popd
pushd scripts/ruby
%{__make} %{?_smp_mflags}
popd
%install
%{__rm} -rf $RPM_BUILD_ROOT
%{__make} install DESTDIR=$RPM_BUILD_ROOT
%{__rm} $RPM_BUILD_ROOT%{_libdir}{,/%{name}}/*.la
pushd scripts/perl
%{__make} install DESTDIR=$RPM_BUILD_ROOT
popd
%{__rm} -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
%{__rm} -f $RPM_BUILD_ROOT%{perl_vendorarch}/*/Chemistry/OpenBabel/{.packlist,OpenBabel.bs}
chmod 755 $RPM_BUILD_ROOT%{perl_vendorarch}/*/Chemistry/OpenBabel/OpenBabel.so
pushd scripts/python
%{__python} setup.py install --skip-build --root $RPM_BUILD_ROOT
%{__python} setup.py install -O1 --skip-build --root $RPM_BUILD_ROOT
popd
pushd scripts/ruby
%{__make} install DESTDIR=$RPM_BUILD_ROOT
popd
# work around testsuite crash
%{__rm} src/formats/.libs/*.soT
%clean
%{__rm} -rf $RPM_BUILD_ROOT
%check
%{__make} check
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc AUTHORS COPYING ChangeLog README THANKS
%doc doc/*.html
%doc doc/README* doc/babel*.inc doc/dioxin.*
%{_bindir}/*
%{_mandir}/man1/*
%{_datadir}/%{name}
%{_libdir}/libopenbabel.so.*
%{_libdir}/%{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}/_ob*.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
* Wed Jul 02 2008 Dominik Mierzejewski <rpm@greysector.net> 2.2.0-0.6.b7
- updated to 2.2.0 beta7
- new URL
- dropped Python binding split patch (broken, reverted upstream)
* 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