From dd073b0f3b3076e57b284d2d1f5b8bcf92ed7287 Mon Sep 17 00:00:00 2001 From: chenditang Date: Wed, 24 Jun 2020 18:06:12 +0800 Subject: [PATCH] Updated ac_python_devel.m4 to newer ax_python_devel.m4 --- ...on_devel.m4-to-newer-ax_python_devel.patch | 623 ++++++++++++++++++ libplist.spec | 11 +- 2 files changed, 633 insertions(+), 1 deletion(-) create mode 100644 Updated-ac_python_devel.m4-to-newer-ax_python_devel.patch diff --git a/Updated-ac_python_devel.m4-to-newer-ax_python_devel.patch b/Updated-ac_python_devel.m4-to-newer-ax_python_devel.patch new file mode 100644 index 0000000..a7ef10e --- /dev/null +++ b/Updated-ac_python_devel.m4-to-newer-ax_python_devel.patch @@ -0,0 +1,623 @@ +From 42bb64ba966082b440cb68cbdadf317f44710017 Mon Sep 17 00:00:00 2001 +From: Nikias Bassen +Date: Thu, 4 Apr 2019 01:51:02 +0300 +Subject: [PATCH] Updated ac_python_devel.m4 to newer ax_python_devel.m4 + +--- + m4/ac_python_devel.m4 | 269 ----------------------------------------- + m4/ax_python_devel.m4 | 327 ++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 327 insertions(+), 269 deletions(-) + delete mode 100644 m4/ac_python_devel.m4 + create mode 100644 m4/ax_python_devel.m4 + +diff --git a/m4/ac_python_devel.m4 b/m4/ac_python_devel.m4 +deleted file mode 100644 +index 545c607..0000000 +--- a/m4/ac_python_devel.m4 ++++ /dev/null +@@ -1,269 +0,0 @@ +-# =========================================================================== +-# http://autoconf-archive.cryp.to/ac_python_devel.html +-# =========================================================================== +-# +-# SYNOPSIS +-# +-# AC_PYTHON_DEVEL([version]) +-# +-# DESCRIPTION +-# +-# Note: Defines as a precious variable "PYTHON_VERSION". Don't override it +-# in your configure.ac. +-# +-# This macro checks for Python and tries to get the include path to +-# 'Python.h'. It provides the $(PYTHON_CPPFLAGS) and $(PYTHON_LDFLAGS) +-# output variables. It also exports $(PYTHON_EXTRA_LIBS) and +-# $(PYTHON_EXTRA_LDFLAGS) for embedding Python in your code. +-# +-# You can search for some particular version of Python by passing a +-# parameter to this macro, for example ">= '2.3.1'", or "== '2.4'". Please +-# note that you *have* to pass also an operator along with the version to +-# match, and pay special attention to the single quotes surrounding the +-# version number. Don't use "PYTHON_VERSION" for this: that environment +-# variable is declared as precious and thus reserved for the end-user. +-# +-# This macro should work for all versions of Python >= 2.1.0. As an end +-# user, you can disable the check for the python version by setting the +-# PYTHON_NOVERSIONCHECK environment variable to something else than the +-# empty string. +-# +-# If you need to use this macro for an older Python version, please +-# contact the authors. We're always open for feedback. +-# +-# LAST MODIFICATION +-# +-# 2008-04-12 +-# +-# COPYLEFT +-# +-# Copyright (c) 2008 Sebastian Huber +-# Copyright (c) 2008 Alan W. Irwin +-# Copyright (c) 2008 Rafael Laboissiere +-# Copyright (c) 2008 Andrew Collier +-# Copyright (c) 2008 Matteo Settenvini +-# Copyright (c) 2008 Horst Knorr +-# +-# This program is free software: you can redistribute it and/or modify it +-# under the terms of the GNU General Public License as published by the +-# Free Software Foundation, either version 3 of the License, or (at your +-# option) any later version. +-# +-# This program is distributed in the hope that it will be useful, but +-# WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +-# Public License for more details. +-# +-# You should have received a copy of the GNU General Public License along +-# with this program. If not, see . +-# +-# As a special exception, the respective Autoconf Macro's copyright owner +-# gives unlimited permission to copy, distribute and modify the configure +-# scripts that are the output of Autoconf when processing the Macro. You +-# need not follow the terms of the GNU General Public License when using +-# or distributing such scripts, even though portions of the text of the +-# Macro appear in them. The GNU General Public License (GPL) does govern +-# all other use of the material that constitutes the Autoconf Macro. +-# +-# This special exception to the GPL applies to versions of the Autoconf +-# Macro released by the Autoconf Macro Archive. When you make and +-# distribute a modified version of the Autoconf Macro, you may extend this +-# special exception to the GPL to apply to your modified version as well. +- +-AC_DEFUN([AC_PYTHON_DEVEL],[ +- # +- # Allow the use of a (user set) custom python version +- # +- AC_ARG_VAR([PYTHON_VERSION],[The installed Python +- version to use, for example '2.3'. This string +- will be appended to the Python interpreter +- canonical name.]) +- +- AC_PATH_PROG([PYTHON],[python[$PYTHON_VERSION]]) +- if test -z "$PYTHON"; then +- AC_MSG_ERROR([Cannot find python$PYTHON_VERSION in your system path]) +- PYTHON_VERSION="" +- fi +- +- # +- # Check for a version of Python >= 2.1.0 +- # +- AC_MSG_CHECKING([for a version of Python >= '2.1.0']) +- ac_supports_python_ver=`$PYTHON -c "import sys; \ +- ver = sys.version.split()[[0]]; \ +- print(ver >= '2.1.0')"` +- if test "$ac_supports_python_ver" != "True"; then +- if test -z "$PYTHON_NOVERSIONCHECK"; then +- AC_MSG_RESULT([no]) +- AC_MSG_FAILURE([ +-This version of the AC@&t@_PYTHON_DEVEL macro +-doesn't work properly with versions of Python before +-2.1.0. You may need to re-run configure, setting the +-variables PYTHON_CPPFLAGS, PYTHON_LDFLAGS, PYTHON_SITE_PKG, +-PYTHON_EXTRA_LIBS and PYTHON_EXTRA_LDFLAGS by hand. +-Moreover, to disable this check, set PYTHON_NOVERSIONCHECK +-to something else than an empty string. +-]) +- else +- AC_MSG_RESULT([skip at user request]) +- fi +- else +- AC_MSG_RESULT([yes]) +- fi +- +- # +- # if the macro parameter ``version'' is set, honour it +- # +- if test -n "$1"; then +- AC_MSG_CHECKING([for a version of Python $1]) +- ac_supports_python_ver=`$PYTHON -c "import sys; \ +- ver = sys.version.split()[[0]]; \ +- print(ver >= '2.1.0')"` +- if test "$ac_supports_python_ver" = "True"; then +- AC_MSG_RESULT([yes]) +- else +- AC_MSG_RESULT([no]) +- AC_MSG_ERROR([this package requires Python $1. +-If you have it installed, but it isn't the default Python +-interpreter in your system path, please pass the PYTHON_VERSION +-variable to configure. See ``configure --help'' for reference. +-]) +- PYTHON_VERSION="" +- fi +- fi +- +- # +- # Check if you have distutils, else fail +- # +- AC_MSG_CHECKING([for the distutils Python package]) +- ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` +- if test -z "$ac_distutils_result"; then +- AC_MSG_RESULT([yes]) +- else +- AC_MSG_RESULT([no]) +- AC_MSG_ERROR([cannot import Python module "distutils". +-Please check your Python installation. The error was: +-$ac_distutils_result]) +- PYTHON_VERSION="" +- fi +- +- # +- # Check for Python include path +- # +- AC_MSG_CHECKING([for Python include path]) +- if type $PYTHON-config; then +- PYTHON_CPPFLAGS=`$PYTHON-config --includes` +- fi +- if test -z "$PYTHON_CPPFLAGS"; then +- python_path=`$PYTHON -c "import distutils.sysconfig; \ +- print(distutils.sysconfig.get_python_inc());"` +- if test -n "${python_path}"; then +- python_path="-I$python_path" +- fi +- PYTHON_CPPFLAGS=$python_path +- fi +- AC_MSG_RESULT([$PYTHON_CPPFLAGS]) +- AC_SUBST([PYTHON_CPPFLAGS]) +- +- # +- # Check for Python library path +- # +- AC_MSG_CHECKING([for Python library path]) +- if type $PYTHON-config; then +- PYTHON_LDFLAGS=`$PYTHON-config --ldflags` +- fi +- if test -z "$PYTHON_LDFLAGS"; then +- # (makes two attempts to ensure we've got a version number +- # from the interpreter) +- py_version=`$PYTHON -c "from distutils.sysconfig import *; \ +- print(' '.join(get_config_vars('VERSION')))"` +- if test "$py_version" = "[None]"; then +- if test -n "$PYTHON_VERSION"; then +- py_version=$PYTHON_VERSION +- else +- py_version=`$PYTHON -c "import sys; \ +- print(sys.version[[:3]]")` +- fi +- fi +- +- PYTHON_LDFLAGS=`$PYTHON -c "from distutils.sysconfig import *; \ +- print('-L' + get_python_lib(0,1) + \ +- ' -lpython');"`$py_version +- fi +- AC_MSG_RESULT([$PYTHON_LDFLAGS]) +- AC_SUBST([PYTHON_LDFLAGS]) +- +- # +- # Check for site packages +- # +- AC_MSG_CHECKING([for Python site-packages path]) +- if test -z "$PYTHON_SITE_PKG"; then +- PYTHON_SITE_PKG=`$PYTHON -c "import distutils.sysconfig; \ +- print(distutils.sysconfig.get_python_lib(0,0))"` +- fi +- AC_MSG_RESULT([$PYTHON_SITE_PKG]) +- AC_SUBST([PYTHON_SITE_PKG]) +- +- # +- # libraries which must be linked in when embedding +- # +- AC_MSG_CHECKING(python extra libraries) +- if test -z "$PYTHON_EXTRA_LIBS"; then +- PYTHON_EXTRA_LIBS=`$PYTHON -c "import distutils.sysconfig; \ +- conf = distutils.sysconfig.get_config_var; \ +- print(conf('LOCALMODLIBS'), conf('LIBS'))"` +- fi +- AC_MSG_RESULT([$PYTHON_EXTRA_LIBS]) +- AC_SUBST(PYTHON_EXTRA_LIBS) +- +- # +- # linking flags needed when embedding +- # +- AC_MSG_CHECKING(python extra linking flags) +- if test -z "$PYTHON_EXTRA_LDFLAGS"; then +- PYTHON_EXTRA_LDFLAGS=`$PYTHON -c "import distutils.sysconfig; \ +- conf = distutils.sysconfig.get_config_var; \ +- print(conf('LINKFORSHARED'))"` +- fi +- AC_MSG_RESULT([$PYTHON_EXTRA_LDFLAGS]) +- AC_SUBST(PYTHON_EXTRA_LDFLAGS) +- +- # +- # final check to see if everything compiles alright +- # +- AC_MSG_CHECKING([consistency of all components of python development environment]) +- AC_LANG_PUSH([C]) +- # save current global flags +- LIBS="$ac_save_LIBS $PYTHON_LDFLAGS" +- CPPFLAGS="$ac_save_CPPFLAGS $PYTHON_CPPFLAGS" +- AC_TRY_LINK([ +- #include +- ],[ +- Py_Initialize(); +- ],[pythonexists=yes],[pythonexists=no]) +- +- AC_MSG_RESULT([$pythonexists]) +- +- if test ! "$pythonexists" = "yes"; then +- AC_MSG_ERROR([ +- Could not link test program to Python. Maybe the main Python library has been +- installed in some non-standard library path. If so, pass it to configure, +- via the LDFLAGS environment variable. +- Example: ./configure LDFLAGS="-L/usr/non-standard-path/python/lib" +- ============================================================================ +- ERROR! +- You probably have to install the development version of the Python package +- for your distribution. The exact name of this package varies among them. +- ============================================================================ +- ]) +- PYTHON_VERSION="" +- fi +- AC_LANG_POP +- # turn back to default flags +- CPPFLAGS="$ac_save_CPPFLAGS" +- LIBS="$ac_save_LIBS" +- +- # +- # all done! +- # +-]) +diff --git a/m4/ax_python_devel.m4 b/m4/ax_python_devel.m4 +new file mode 100644 +index 0000000..44dbd83 +--- /dev/null ++++ b/m4/ax_python_devel.m4 +@@ -0,0 +1,327 @@ ++# =========================================================================== ++# https://www.gnu.org/software/autoconf-archive/ax_python_devel.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_PYTHON_DEVEL([version]) ++# ++# DESCRIPTION ++# ++# Note: Defines as a precious variable "PYTHON_VERSION". Don't override it ++# in your configure.ac. ++# ++# This macro checks for Python and tries to get the include path to ++# 'Python.h'. It provides the $(PYTHON_CPPFLAGS) and $(PYTHON_LIBS) output ++# variables. It also exports $(PYTHON_EXTRA_LIBS) and ++# $(PYTHON_EXTRA_LDFLAGS) for embedding Python in your code. ++# ++# You can search for some particular version of Python by passing a ++# parameter to this macro, for example ">= '2.3.1'", or "== '2.4'". Please ++# note that you *have* to pass also an operator along with the version to ++# match, and pay special attention to the single quotes surrounding the ++# version number. Don't use "PYTHON_VERSION" for this: that environment ++# variable is declared as precious and thus reserved for the end-user. ++# ++# This macro should work for all versions of Python >= 2.1.0. As an end ++# user, you can disable the check for the python version by setting the ++# PYTHON_NOVERSIONCHECK environment variable to something else than the ++# empty string. ++# ++# If you need to use this macro for an older Python version, please ++# contact the authors. We're always open for feedback. ++# ++# LICENSE ++# ++# Copyright (c) 2009 Sebastian Huber ++# Copyright (c) 2009 Alan W. Irwin ++# Copyright (c) 2009 Rafael Laboissiere ++# Copyright (c) 2009 Andrew Collier ++# Copyright (c) 2009 Matteo Settenvini ++# Copyright (c) 2009 Horst Knorr ++# Copyright (c) 2013 Daniel Mullner ++# ++# This program is free software: you can redistribute it and/or modify it ++# under the terms of the GNU General Public License as published by the ++# Free Software Foundation, either version 3 of the License, or (at your ++# option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General ++# Public License for more details. ++# ++# You should have received a copy of the GNU General Public License along ++# with this program. If not, see . ++# ++# As a special exception, the respective Autoconf Macro's copyright owner ++# gives unlimited permission to copy, distribute and modify the configure ++# scripts that are the output of Autoconf when processing the Macro. You ++# need not follow the terms of the GNU General Public License when using ++# or distributing such scripts, even though portions of the text of the ++# Macro appear in them. The GNU General Public License (GPL) does govern ++# all other use of the material that constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the Autoconf ++# Macro released by the Autoconf Archive. When you make and distribute a ++# modified version of the Autoconf Macro, you may extend this special ++# exception to the GPL to apply to your modified version as well. ++ ++#serial 21 ++ ++AU_ALIAS([AC_PYTHON_DEVEL], [AX_PYTHON_DEVEL]) ++AC_DEFUN([AX_PYTHON_DEVEL],[ ++ # ++ # Allow the use of a (user set) custom python version ++ # ++ AC_ARG_VAR([PYTHON_VERSION],[The installed Python ++ version to use, for example '2.3'. This string ++ will be appended to the Python interpreter ++ canonical name.]) ++ ++ AC_PATH_PROG([PYTHON],[python[$PYTHON_VERSION]]) ++ if test -z "$PYTHON"; then ++ AC_MSG_ERROR([Cannot find python$PYTHON_VERSION in your system path]) ++ PYTHON_VERSION="" ++ fi ++ ++ # ++ # Check for a version of Python >= 2.1.0 ++ # ++ AC_MSG_CHECKING([for a version of Python >= '2.1.0']) ++ ac_supports_python_ver=`$PYTHON -c "import sys; \ ++ ver = sys.version.split ()[[0]]; \ ++ print (ver >= '2.1.0')"` ++ if test "$ac_supports_python_ver" != "True"; then ++ if test -z "$PYTHON_NOVERSIONCHECK"; then ++ AC_MSG_RESULT([no]) ++ AC_MSG_FAILURE([ ++This version of the AC@&t@_PYTHON_DEVEL macro ++doesn't work properly with versions of Python before ++2.1.0. You may need to re-run configure, setting the ++variables PYTHON_CPPFLAGS, PYTHON_LIBS, PYTHON_SITE_PKG, ++PYTHON_EXTRA_LIBS and PYTHON_EXTRA_LDFLAGS by hand. ++Moreover, to disable this check, set PYTHON_NOVERSIONCHECK ++to something else than an empty string. ++]) ++ else ++ AC_MSG_RESULT([skip at user request]) ++ fi ++ else ++ AC_MSG_RESULT([yes]) ++ fi ++ ++ # ++ # if the macro parameter ``version'' is set, honour it ++ # ++ if test -n "$1"; then ++ AC_MSG_CHECKING([for a version of Python $1]) ++ ac_supports_python_ver=`$PYTHON -c "import sys; \ ++ ver = sys.version.split ()[[0]]; \ ++ print (ver $1)"` ++ if test "$ac_supports_python_ver" = "True"; then ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_RESULT([no]) ++ AC_MSG_ERROR([this package requires Python $1. ++If you have it installed, but it isn't the default Python ++interpreter in your system path, please pass the PYTHON_VERSION ++variable to configure. See ``configure --help'' for reference. ++]) ++ PYTHON_VERSION="" ++ fi ++ fi ++ ++ # ++ # Check if you have distutils, else fail ++ # ++ AC_MSG_CHECKING([for the distutils Python package]) ++ ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` ++ if test $? -eq 0; then ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_RESULT([no]) ++ AC_MSG_ERROR([cannot import Python module "distutils". ++Please check your Python installation. The error was: ++$ac_distutils_result]) ++ PYTHON_VERSION="" ++ fi ++ ++ # ++ # Check for Python include path ++ # ++ AC_MSG_CHECKING([for Python include path]) ++ if test -z "$PYTHON_CPPFLAGS"; then ++ python_path=`$PYTHON -c "import distutils.sysconfig; \ ++ print (distutils.sysconfig.get_python_inc ());"` ++ plat_python_path=`$PYTHON -c "import distutils.sysconfig; \ ++ print (distutils.sysconfig.get_python_inc (plat_specific=1));"` ++ if test -n "${python_path}"; then ++ if test "${plat_python_path}" != "${python_path}"; then ++ python_path="-I$python_path -I$plat_python_path" ++ else ++ python_path="-I$python_path" ++ fi ++ fi ++ PYTHON_CPPFLAGS=$python_path ++ fi ++ AC_MSG_RESULT([$PYTHON_CPPFLAGS]) ++ AC_SUBST([PYTHON_CPPFLAGS]) ++ ++ # ++ # Check for Python library path ++ # ++ AC_MSG_CHECKING([for Python library path]) ++ if test -z "$PYTHON_LIBS"; then ++ # (makes two attempts to ensure we've got a version number ++ # from the interpreter) ++ ac_python_version=`cat<]], ++ [[Py_Initialize();]]) ++ ],[pythonexists=yes],[pythonexists=no]) ++ AC_LANG_POP([C]) ++ # turn back to default flags ++ CPPFLAGS="$ac_save_CPPFLAGS" ++ LIBS="$ac_save_LIBS" ++ LDFLAGS="$ac_save_LDFLAGS" ++ ++ AC_MSG_RESULT([$pythonexists]) ++ ++ if test ! "x$pythonexists" = "xyes"; then ++ AC_MSG_FAILURE([ ++ Could not link test program to Python. Maybe the main Python library has been ++ installed in some non-standard library path. If so, pass it to configure, ++ via the LIBS environment variable. ++ Example: ./configure LIBS="-L/usr/non-standard-path/python/lib" ++ ============================================================================ ++ ERROR! ++ You probably have to install the development version of the Python package ++ for your distribution. The exact name of this package varies among them. ++ ============================================================================ ++ ]) ++ PYTHON_VERSION="" ++ fi ++ ++ # ++ # all done! ++ # ++]) +-- +1.8.3.1 + diff --git a/libplist.spec b/libplist.spec index 6d377e6..37b8211 100644 --- a/libplist.spec +++ b/libplist.spec @@ -1,10 +1,13 @@ Name: libplist Version: 2.0.0 -Release: 13 +Release: 14 Summary: A library to handle Apple Property List format in binary or XML License: LGPLv2+ URL: http://www.libimobiledevice.org/ Source0: http://www.libimobiledevice.org/downloads/%{name}-%{version}.tar.bz2 + +Patch0000: Updated-ac_python_devel.m4-to-newer-ax_python_devel.patch + BuildRequires: automake autoconf libtool chrpath gcc gcc-c++ python3-devel python3-Cython python3-setuptools %description @@ -71,6 +74,12 @@ make check %{_libdir}/python3.7/site-packages/* %changelog +* Wed Jun 24 2020 chenditang - 2.0.0-14 +- Type:enhancement +- ID:NA +- SUG:NA +- DESC:Updated ac_python_devel.m4 to newer ax_python_devel.m4 + * Thu Sep 26 2019 openEuler Buildteam - 2.0.0-13 - Fix bad requires