summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cmd/Makefile.am9
-rw-r--r--config/always-python.m443
-rw-r--r--config/always-pyzfs.m411
3 files changed, 39 insertions, 24 deletions
diff --git a/cmd/Makefile.am b/cmd/Makefile.am
index 9dd7b8b4f..0d990789b 100644
--- a/cmd/Makefile.am
+++ b/cmd/Makefile.am
@@ -1,3 +1,8 @@
SUBDIRS = zfs zpool zdb zhack zinject zstreamdump ztest
-SUBDIRS += mount_zfs fsck_zfs zvol_id vdev_id arcstat dbufstat zed
-SUBDIRS += arc_summary raidz_test zgenhostid
+SUBDIRS += fsck_zfs vdev_id raidz_test zgenhostid
+
+if USING_PYTHON
+SUBDIRS += arcstat arc_summary dbufstat
+endif
+
+SUBDIRS += mount_zfs zed zvol_id
diff --git a/config/always-python.m4 b/config/always-python.m4
index 858ab7b01..7cfefd9eb 100644
--- a/config/always-python.m4
+++ b/config/always-python.m4
@@ -13,6 +13,17 @@ AC_DEFUN([ZFS_AC_PYTHON_VERSION], [
])
dnl #
+dnl # ZFS_AC_PYTHON_VERSION_IS_2
+dnl # ZFS_AC_PYTHON_VERSION_IS_3
+dnl #
+dnl # Tests if the $PYTHON_VERSION matches 2.x or 3.x.
+dnl #
+AC_DEFUN([ZFS_AC_PYTHON_VERSION_IS_2],
+ [test "${PYTHON_VERSION%%\.*}" = "2"])
+AC_DEFUN([ZFS_AC_PYTHON_VERSION_IS_3],
+ [test "${PYTHON_VERSION%%\.*}" = "3"])
+
+dnl #
dnl # ZFS_AC_PYTHON_MODULE(module_name, [action-if-true], [action-if-false])
dnl #
dnl # Checks for Python module. Freely inspired by AX_PYTHON_MODULE
@@ -46,42 +57,36 @@ AC_DEFUN([ZFS_AC_CONFIG_ALWAYS_PYTHON], [
[with_python=check])
AS_CASE([$with_python],
- [check],
- [AS_IF([test -x /usr/bin/python3],
- [PYTHON="python3"],
- [AS_IF([test -x /usr/bin/python2],
- [PYTHON="python2"],
- [PYTHON=""]
- )]
- )],
+ [check], [AC_CHECK_PROGS([PYTHON], [python3 python2], [:])],
[2*], [PYTHON="python${with_python}"],
[*python2*], [PYTHON="${with_python}"],
[3*], [PYTHON="python${with_python}"],
[*python3*], [PYTHON="${with_python}"],
- [no], [PYTHON=""],
+ [no], [PYTHON=":"],
[AC_MSG_ERROR([Unknown --with-python value '$with_python'])]
)
- AS_IF([$PYTHON --version >/dev/null 2>&1], [ /bin/true ], [
- AC_MSG_ERROR([Cannot find $PYTHON in your system path])
+ AS_IF([test $PYTHON != :], [
+ AS_IF([$PYTHON --version >/dev/null 2>&1],
+ [AM_PATH_PYTHON([2.6], [], [:])],
+ [AC_MSG_ERROR([Cannot find $PYTHON in your system path])]
+ )
])
-
- AM_PATH_PYTHON([2.6], [], [:])
AM_CONDITIONAL([USING_PYTHON], [test "$PYTHON" != :])
- AM_CONDITIONAL([USING_PYTHON_2], [test "${PYTHON_VERSION:0:2}" = "2."])
- AM_CONDITIONAL([USING_PYTHON_3], [test "${PYTHON_VERSION:0:2}" = "3."])
+ AM_CONDITIONAL([USING_PYTHON_2], [ZFS_AC_PYTHON_VERSION_IS_2])
+ AM_CONDITIONAL([USING_PYTHON_3], [ZFS_AC_PYTHON_VERSION_IS_3])
dnl #
dnl # Minimum supported Python versions for utilities:
dnl # Python 2.6.x, or Python 3.4.x
dnl #
- AS_IF([test "${PYTHON_VERSION:0:2}" = "2."], [
- ZFS_AC_PYTHON_VERSION([>= '2.6'], [ /bin/true ],
+ AS_IF([ZFS_AC_PYTHON_VERSION_IS_2], [
+ ZFS_AC_PYTHON_VERSION([>= '2.6'], [ true ],
[AC_MSG_ERROR("Python >= 2.6.x is not available")])
])
- AS_IF([test "${PYTHON_VERSION:0:2}" = "3."], [
- ZFS_AC_PYTHON_VERSION([>= '3.4'], [ /bin/true ],
+ AS_IF([ZFS_AC_PYTHON_VERSION_IS_3], [
+ ZFS_AC_PYTHON_VERSION([>= '3.4'], [ true ],
[AC_MSG_ERROR("Python >= 3.4.x is not available")])
])
diff --git a/config/always-pyzfs.m4 b/config/always-pyzfs.m4
index d74d6f1a7..6f32e98fe 100644
--- a/config/always-pyzfs.m4
+++ b/config/always-pyzfs.m4
@@ -18,7 +18,12 @@ AC_DEFUN([ZFS_AC_CONFIG_ALWAYS_PYZFS], [
DEFINE_PYZFS='--without pyzfs'
])
], [
- DEFINE_PYZFS=''
+ AS_IF([test $PYTHON != :], [
+ DEFINE_PYZFS=''
+ ], [
+ enable_pyzfs=no
+ DEFINE_PYZFS='--without pyzfs'
+ ])
])
AC_SUBST(DEFINE_PYZFS)
@@ -26,10 +31,10 @@ AC_DEFUN([ZFS_AC_CONFIG_ALWAYS_PYZFS], [
dnl # Require python-devel libraries
dnl #
AS_IF([test "x$enable_pyzfs" = xcheck -o "x$enable_pyzfs" = xyes], [
- AS_IF([test "${PYTHON_VERSION:0:2}" = "2."], [
+ AS_IF([ZFS_AC_PYTHON_VERSION_IS_2], [
PYTHON_REQUIRED_VERSION=">= '2.7.0'"
], [
- AS_IF([test "${PYTHON_VERSION:0:2}" = "3."], [
+ AS_IF([ZFS_AC_PYTHON_VERSION_IS_3], [
PYTHON_REQUIRED_VERSION=">= '3.4.0'"
], [
AC_MSG_ERROR("Python $PYTHON_VERSION unknown")