[prev in list] [next in list] [prev in thread] [next in thread]
List: gentoo-dev
Subject: [gentoo-dev] [PATCH 1/3] Introduce esetuppy setup.py wrapper.
From: Michał Górny <mgorny () gentoo ! org>
Date: 2012-10-28 15:57:55
Message-ID: 1351439877-9025-1-git-send-email-mgorny () gentoo ! org
[Download RAW message or body]
---
gx86/eclass/distutils-r1.eclass | 52 ++++++++++++++++++++++++++++++-----------
1 file changed, 39 insertions(+), 13 deletions(-)
diff --git a/gx86/eclass/distutils-r1.eclass b/gx86/eclass/distutils-r1.eclass
index 8dfe6bb..b991ab4 100644
--- a/gx86/eclass/distutils-r1.eclass
+++ b/gx86/eclass/distutils-r1.eclass
@@ -105,6 +105,38 @@ DEPEND=${PYTHON_DEPS}
# HTML_DOCS=( doc/html/ )
# @CODE
+# @ECLASS-VARIABLE: myesetuppyargs
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# An array containing options to be passed to setup.py.
+#
+# Example:
+# @CODE
+# python_configure_all() {
+# myesetuppyargs=( --enable-my-hidden-option )
+# }
+# @CODE
+
+# @FUNCTION: esetuppy
+# @USAGE: [<args>...]
+# @DESCRIPTION:
+# Run the setup.py using currently selected Python interpreter
+# (if ${PYTHON} is set; fallback 'python' otherwise). The setup.py will
+# be passed default command-line arguments, then ${myesetuppyargs[@]},
+# then any parameters passed to this command.
+#
+# This command will die on failure in EAPI 4 and newer, and just return
+# the exit code in earlier EAPIs.
+esetuppy() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ set -- "${PYTHON:-python}" setup.py \
+ "${myesetuppyargs[@]}" "${@}"
+
+ echo "${@}" >&2
+ "${@}" || die
+}
+
# @FUNCTION: distutils-r1_python_prepare_all
# @DESCRIPTION:
# The default python_prepare_all(). It applies the patches from PATCHES
@@ -147,16 +179,13 @@ distutils-r1_python_configure() {
# @FUNCTION: distutils-r1_python_compile
# @USAGE: [additional-args...]
# @DESCRIPTION:
-# The default python_compile(). Runs 'setup.py build' using the correct
-# Python implementation. Any parameters passed to this function will be
-# passed to setup.py.
+# The default python_compile(). Runs 'esetuppy build'. Any parameters
+# passed to this function will be passed to setup.py.
distutils-r1_python_compile() {
debug-print-function ${FUNCNAME} "${@}"
cd "${BUILD_DIR}" || die
- set -- "${PYTHON}" setup.py build "${@}"
- echo "${@}"
- "${@}" || die
+ esetuppy build "${@}"
}
# @FUNCTION: distutils-r1_python_test
@@ -198,10 +227,9 @@ distutils-r1_rename_scripts() {
# @FUNCTION: distutils-r1_python_install
# @USAGE: [additional-args...]
# @DESCRIPTION:
-# The default python_install(). Runs 'setup.py install' using
-# the correct Python implementation, and appending the optimization
-# flags. Then calls distutils-r1_rename_scripts. Any parameters passed
-# to this function will be passed to setup.py.
+# The default python_install(). Runs 'esetuppy install', appending
+# the optimization flags. Then calls distutils-r1_rename_scripts.
+# Any parameters passed to this function will be passed to setup.py.
distutils-r1_python_install() {
debug-print-function ${FUNCNAME} "${@}"
@@ -218,9 +246,7 @@ distutils-r1_python_install() {
unset PYTHONDONTWRITEBYTECODE
cd "${BUILD_DIR}" || die
- set -- "${PYTHON}" setup.py install "${flags[@]}" --root="${D}" "${@}"
- echo "${@}"
- "${@}" || die
+ esetuppy install "${flags[@]}" --root="${D}" "${@}"
distutils-r1_rename_scripts
}
--
1.7.12.4
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic