summaryrefslogtreecommitdiff
path: root/kde-base/pykde4/pykde4-9999.ebuild
diff options
context:
space:
mode:
authorJonathan Callen <abcd@gentoo.org>2009-11-20 04:30:49 -0500
committerJonathan Callen <abcd@gentoo.org>2009-11-20 07:10:49 -0500
commit6f233d4f31febbd222cfa123d9b7fa68a276ab31 (patch)
tree147195a8c2b2d90b463b9a4dd6945eaba16c9a3b /kde-base/pykde4/pykde4-9999.ebuild
parentc2321218d93715618904a52f901d5b5308822bdd (diff)
downloadkde-6f233d4f31febbd222cfa123d9b7fa68a276ab31.tar.gz
kde-6f233d4f31febbd222cfa123d9b7fa68a276ab31.tar.bz2
kde-6f233d4f31febbd222cfa123d9b7fa68a276ab31.zip
[kde-base/pykde4] Add support for multiple python versions
Diffstat (limited to 'kde-base/pykde4/pykde4-9999.ebuild')
-rw-r--r--kde-base/pykde4/pykde4-9999.ebuild57
1 files changed, 49 insertions, 8 deletions
diff --git a/kde-base/pykde4/pykde4-9999.ebuild b/kde-base/pykde4/pykde4-9999.ebuild
index 118f105c1b3..3193acb2664 100644
--- a/kde-base/pykde4/pykde4-9999.ebuild
+++ b/kde-base/pykde4/pykde4-9999.ebuild
@@ -8,6 +8,7 @@ KMNAME="kdebindings"
KMMODULE="python/${PN}"
OPENGL_REQUIRED="always"
PYTHON_USE_WITH="threads"
+SUPPORT_PYTHON_ABIS="1"
inherit python kde4-meta
DESCRIPTION="Python bindings for KDE4"
@@ -26,6 +27,10 @@ RDEPEND="${COMMON_DEPEND}
!dev-python/pykde
"
+PATCHES=(
+ "${FILESDIR}/${PN}-python3.patch"
+)
+
pkg_setup() {
python_pkg_setup
kde4-meta_pkg_setup
@@ -38,10 +43,12 @@ src_prepare() {
sed -e '/^ADD_SUBDIRECTORY(examples)/s/^/# DISABLED /' -i python/${PN}/CMakeLists.txt \
|| die "Failed to disable examples"
fi
+
+ python_copy_sources
}
src_configure() {
- mycmakeargs="${mycmakeargs}
+ savedcmakeargs="${mycmakeargs}
-DWITH_QScintilla=OFF
$(cmake-utils_use_with semantic-desktop Soprano)
$(cmake-utils_use_with semantic-desktop Nepomuk)
@@ -50,21 +57,55 @@ src_configure() {
$(cmake-utils_use_with policykit PolkitQt)
"
- kde4-meta_src_configure
+ do_src_configure() {
+ mycmakeargs="${savedcmakeargs}"
+
+ CMAKE_USE_DIR="${S}-${PYTHON_ABI}"
+ kde4-meta_src_configure
+
+ export savedcmakeargs_${PYTHON_ABI//./_}="${mycmakeargs}"
+ }
+
+ python_execute_function -s do_src_configure
+}
+
+src_compile() {
+ do_src_compile() {
+ CMAKE_USE_DIR="${S}-${PYTHON_ABI}"
+ kde4-meta_src_compile
+ }
+
+ python_execute_function -s do_src_compile
+}
+
+src_test() {
+ do_src_test() {
+ local var="savedcmakeargs_${PYTHON_ABI//./_}"
+ mycmakeargs="${!var}"
+
+ CMAKE_USE_DIR="${S}-${PYTHON_ABI}"
+ kde4-meta_src_test
+ export ${var}="${mycmakeargs}"
+ }
+
+ python_execute_function -s do_src_test
}
src_install() {
- kde4-meta_src_install
+ do_src_install() {
+ CMAKE_USE_DIR="${S}-${PYTHON_ABI}"
+ kde4-meta_src_install
+
+ rm -f "${D}$(python_get_sitedir)"/PyKDE4/*.py[co]
+ }
- rm -f \
- "${D}$(python_get_sitedir)"/PyKDE4/*.py[co] \
- "${D}${PREFIX}"/share/apps/"${PN}"/*.py[co]
+ python_execute_function -s do_src_install
}
pkg_postinst() {
kde4-meta_pkg_postinst
- python_mod_optimize "${ROOT}$(python_get_sitedir)"/PyKDE4
+ python_mod_optimize PyKDE4
if use examples; then
echo
@@ -77,5 +118,5 @@ pkg_postinst() {
pkg_postrm() {
kde4-meta_pkg_postrm
- python_mod_cleanup "${ROOT}$(python_get_sitedir)"/PyKDE4
+ python_mod_cleanup PyKDE4
}