| # Copyright 1999-2015 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI=5 |
| |
| PYTHON_COMPAT=( python2_7 python3_{3,4} ) |
| |
| inherit cmake-utils eutils multilib python-r1 |
| |
| DESCRIPTION="Python bindings for OpenBabel (including Pybel)" |
| HOMEPAGE="http://openbabel.sourceforge.net/" |
| SRC_URI="mirror://sourceforge/openbabel/openbabel-${PV}.tar.gz" |
| |
| KEYWORDS="amd64 ~arm ppc x86 ~amd64-linux ~x86-linux" |
| SLOT="0" |
| LICENSE="GPL-2" |
| IUSE="" |
| |
| REQUIRED_USE="${PYTHON_REQUIRED_USE}" |
| |
| RDEPEND="${PYTHON_DEPS} |
| ~sci-chemistry/openbabel-${PV} |
| sys-libs/zlib" |
| DEPEND="${RDEPEND} |
| >=dev-lang/swig-2" |
| |
| S="${WORKDIR}"/openbabel-${PV} |
| |
| PATCHES=( |
| "${FILESDIR}"/${P}-testpybel.patch |
| "${FILESDIR}"/${P}-bindings_only.patch |
| "${FILESDIR}"/${P}-swig-3.0.3.patch |
| ) |
| |
| src_prepare() { |
| cmake-utils_src_prepare |
| sed \ |
| -e "s:\"\.\.\":\"${EPREFIX}/usr\":g" \ |
| -i test/testbabel.py || die |
| swig -python -c++ -small -O -templatereduce -naturalvar \ |
| -I"${EPREFIX}/usr/include/openbabel-2.0" \ |
| -o scripts/python/openbabel-python.cpp \ |
| -DHAVE_EIGEN \ |
| -outdir scripts/python \ |
| scripts/openbabel-python.i \ |
| || die "Regeneration of openbabel-python.cpp failed" |
| sed \ |
| -e '/__GNUC__/s:== 4:>= 4:g' \ |
| -i include/openbabel/shared_ptr.h || die |
| } |
| |
| src_configure() { |
| my_impl_src_configure() { |
| local mycmakeargs=( |
| -DCMAKE_INSTALL_RPATH= |
| -DBINDINGS_ONLY=ON |
| -DBABEL_SYSTEM_LIBRARY="${EPREFIX}/usr/$(get_libdir)/libopenbabel.so" |
| -DOB_MODULE_PATH="${EPREFIX}/usr/$(get_libdir)/openbabel/${PV}" |
| -DLIB_INSTALL_DIR="${D}$(python_get_sitedir)" |
| -DPYTHON_BINDINGS=ON |
| -DPYTHON_EXECUTABLE=${PYTHON} |
| -DPYTHON_INCLUDE_DIR="$(python_get_includedir)" |
| -DPYTHON_INCLUDE_PATH="$(python_get_includedir)" |
| -DPYTHON_LIBRARY="$(python_get_library_path)" |
| -DENABLE_TESTS=ON |
| ) |
| |
| cmake-utils_src_configure |
| } |
| |
| python_foreach_impl my_impl_src_configure |
| } |
| |
| src_compile() { |
| python_foreach_impl cmake-utils_src_make bindings_python |
| } |
| |
| src_test() { |
| python_foreach_impl cmake-utils_src_test -R py |
| } |
| |
| src_install() { |
| my_impl_src_install() { |
| cd "${BUILD_DIR}" || die |
| |
| cmake -DCOMPONENT=bindings_python -P cmake_install.cmake |
| |
| python_optimize |
| } |
| |
| python_foreach_impl my_impl_src_install |
| } |