mirror of
				https://git.proxmox.com/git/mirror_zfs
				synced 2025-11-04 07:10:11 +00:00 
			
		
		
		
	Deprecation of Python versions below 3.6 gives opportunity to unify the build and install requirements for OpenZFS packages. The minimal supported Python version is 3.6 as this is the most recent Python package CentOS/RHEL 7 users can get. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Rich Ercolani <rincebrain@gmail.com> Reviewed-by: John Kennedy <john.kennedy@delphix.com> Signed-off-by: szubersk <szuberskidamian@gmail.com> Closes #12925
		
			
				
	
	
		
			58 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
dnl #
 | 
						|
dnl # The majority of the python scripts are written to be compatible
 | 
						|
dnl # with Python 3.6. This option is intended to
 | 
						|
dnl # to provide a method to specify the default system version, and
 | 
						|
dnl # set the PYTHON environment variable accordingly.
 | 
						|
dnl #
 | 
						|
AC_DEFUN([ZFS_AC_CONFIG_ALWAYS_PYTHON], [
 | 
						|
	AC_ARG_WITH([python],
 | 
						|
		AS_HELP_STRING([--with-python[=VERSION]],
 | 
						|
		[default system python version @<:@default=check@:>@]),
 | 
						|
		[with_python=$withval],
 | 
						|
		[with_python=check])
 | 
						|
 | 
						|
	AS_CASE([$with_python],
 | 
						|
		[check], [AC_CHECK_PROGS([PYTHON], [python3], [:])],
 | 
						|
		[3*], [PYTHON="python${with_python}"],
 | 
						|
		[*python3*], [PYTHON="${with_python}"],
 | 
						|
		[no], [PYTHON=":"],
 | 
						|
		[AC_MSG_ERROR([Unknown --with-python value '$with_python'])]
 | 
						|
	)
 | 
						|
 | 
						|
	dnl #
 | 
						|
	dnl # Minimum supported Python versions for utilities: Python 3.6
 | 
						|
	dnl #
 | 
						|
	AM_PATH_PYTHON([], [], [:])
 | 
						|
	AS_IF([test -z "$PYTHON_VERSION"], [
 | 
						|
		PYTHON_VERSION=$(echo ${PYTHON##*/} | tr -cd 0-9.)
 | 
						|
	])
 | 
						|
	PYTHON_MINOR=${PYTHON_VERSION#*\.}
 | 
						|
 | 
						|
	AS_CASE([$PYTHON_VERSION],
 | 
						|
		[3.*], [
 | 
						|
			AS_IF([test $PYTHON_MINOR -lt 6],
 | 
						|
				[AC_MSG_ERROR("Python >= 3.6 is required")])
 | 
						|
		],
 | 
						|
		[:|2|3], [],
 | 
						|
		[PYTHON_VERSION=3]
 | 
						|
	)
 | 
						|
 | 
						|
	AM_CONDITIONAL([USING_PYTHON], [test "$PYTHON" != :])
 | 
						|
	AC_SUBST([PYTHON_SHEBANG], [python3])
 | 
						|
 | 
						|
	dnl #
 | 
						|
	dnl # Request that packages be built for a specific Python version.
 | 
						|
	dnl #
 | 
						|
	AS_IF([test "x$with_python" != xcheck], [
 | 
						|
		PYTHON_PKG_VERSION=$(echo $PYTHON_VERSION | tr -d .)
 | 
						|
		DEFINE_PYTHON_PKG_VERSION='--define "__use_python_pkg_version '${PYTHON_PKG_VERSION}'"'
 | 
						|
		DEFINE_PYTHON_VERSION='--define "__use_python '${PYTHON}'"'
 | 
						|
	], [
 | 
						|
		DEFINE_PYTHON_VERSION=''
 | 
						|
		DEFINE_PYTHON_PKG_VERSION=''
 | 
						|
	])
 | 
						|
 | 
						|
	AC_SUBST(DEFINE_PYTHON_VERSION)
 | 
						|
	AC_SUBST(DEFINE_PYTHON_PKG_VERSION)
 | 
						|
])
 |