--- /usr/portage/eclass/gnome-python-common.eclass 2010-02-09 11:36:47.000000000 +0100 +++ /usr/portage/eclass/gnome-python-common.eclass 2010-05-27 14:15:53.000000000 +0200 @@ -25,8 +25,21 @@ # So, for example, with the bonobo bindings, the original package is libbonobo # and the packages is named dev-python/libbonobo-python +SUPPORT_PYTHON_ABIS="1" +PYTHON_DEPEND="2" +RESTRICT_PYTHON_ABIS="3.*" + inherit versionator python autotools gnome2 +case "${EAPI:-0}" in + 0|1) + EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install pkg_postinst pkg_postrm + ;; + *) + EXPORT_FUNCTIONS pkg_setup src_configure src_prepare src_compile src_install + ;; +esac + G_PY_PN=${G_PY_PN:-gnome-python} G_PY_BINDINGS=${G_PY_BINDINGS:-${PN%-python}} @@ -65,11 +78,36 @@ gnome-python-common_src_unpack() { gnome2_src_unpack + has ${EAPI:-0} 0 1 && gnome-python-common_src_prepare +} + +gnome-python-common_src_prepare() { + gnome2_src_prepare + # disable pyc compiling if [[ -f py-compile ]]; then rm py-compile ln -s $(type -P true) py-compile fi + + # The .pc file is installed by respective gnome-python*-base package + sed -i '/^pkgconfig_DATA/d' Makefile.in || die "sed failed" + sed -i '/^pkgconfigdir/d' Makefile.in || die "sed failed" + + python_copy_sources +} + +gnome-python-common_src_configure() { + python_execute_function -s gnome2_src_configure "$@" +} + +gnome-python-common_src_compile() { + has ${EAPI:-0} 0 1 && gnome-python-common_src_configure "$@" + python_src_compile "$@" +} + +gnome-python-common_src_test() { + python_src_test "$@" } # Do a regular gnome2 src_install and then install examples if required. @@ -77,11 +115,8 @@ # (to install a directory recursively, specify it with a trailing '/' - for # example, foo/bar/) gnome-python-common_src_install() { - # The .pc file is installed by respective gnome-python*-base package - sed -i '/^pkgconfig_DATA/d' Makefile || die "sed failed" - sed -i '/^pkgconfigdir/d' Makefile || die "sed failed" - - gnome2_src_install + python_execute_function -s gnome2_src_install "$@" + python_clean_installation_image if hasq examples ${IUSE} && use examples; then insinto /usr/share/doc/${PF}/examples @@ -94,21 +129,12 @@ fi done fi - - # Python does not need these, bug #299243 - find "${D%/}${EPREFIX}$(python_get_sitedir)" -name "*.la" -delete \ - || die "failed to remove la files" - } gnome-python-common_pkg_postinst() { - python_version - python_need_rebuild - python_mod_optimize /usr/$(get_libdir)/python${PYVER}/site-packages/gtk-2.0 + python_mod_optimize gtk-2.0 } gnome-python-common_pkg_postrm() { - python_mod_cleanup + python_mod_cleanup gtk-2.0 } - -EXPORT_FUNCTIONS pkg_setup src_unpack src_install pkg_postinst pkg_postrm