On Tue, Dec 9, 2014 at 7:06 AM, Iago Toral Quiroga <ito...@igalia.com> wrote: > From: Samuel Iglesias Gonsalvez <sigles...@igalia.com> > > It is now a hard dependency because of the autogeneration of > format pack and unpack functions. > > Update the documentation to reflect this change. > > v2: > - Inline python script in m4 file and use PYTHON2 > > Signed-off-by: Samuel Iglesias Gonsalvez <sigles...@igalia.com> > --- > configure.ac | 2 + > docs/install.html | 6 ++- > m4/ax_check_python_mako_module.m4 | 77 > +++++++++++++++++++++++++++++++++++++++ > 3 files changed, 84 insertions(+), 1 deletion(-) > create mode 100644 m4/ax_check_python_mako_module.m4 > > diff --git a/configure.ac b/configure.ac > index 1d9d015..f38acfd 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -76,6 +76,8 @@ if test "x$INDENT" != "xcat"; then > AC_SUBST(INDENT_FLAGS, '-i4 -nut -br -brs -npcs -ce -TGLubyte -TGLbyte > -TBool') > fi > > +AC_CHECK_PYTHON_MAKO_MODULE(0.7.3) > + > AC_PROG_INSTALL > > dnl We need a POSIX shell for parts of the build. Assume we have one > diff --git a/docs/install.html b/docs/install.html > index f12425f..b12e1cb 100644 > --- a/docs/install.html > +++ b/docs/install.html > @@ -38,6 +38,10 @@ > Version 2.6.4 or later should work. > </li> > <br> > +<li><a href="http://www.makotemplates.org/">Python Mako module</a> - > +Python Mako module is required. Version 0.7.3 or later should work. > +</li> > +</br> > <li><a href="http://www.scons.org/">SCons</a> is required for building on > Windows and optional for Linux (it's an alternative to autoconf/automake.) > </li> > @@ -78,7 +82,7 @@ the needed dependencies: > <pre> > sudo yum install flex bison imake libtool xorg-x11-proto-devel > libdrm-devel \ > gcc-c++ xorg-x11-server-devel libXi-devel libXmu-devel libXdamage-devel > git \ > - expat-devel llvm-devel > + expat-devel llvm-devel python-mako > </pre> > > > diff --git a/m4/ax_check_python_mako_module.m4 > b/m4/ax_check_python_mako_module.m4 > new file mode 100644 > index 0000000..f289f26 > --- /dev/null > +++ b/m4/ax_check_python_mako_module.m4 > @@ -0,0 +1,77 @@ > +# =========================================================================== > +# > +# SYNOPSIS > +# > +# AX_CHECK_PYTHON_MAKO_MODULE(MIN_VERSION_NUMBER) > +# > +# DESCRIPTION > +# > +# Check whether Python mako module is installed and its version higher than > +# minimum requested. > +# > +# Example of its use: > +# > +# For example, the minimum mako version would be 0.7.3. Then configure.ac > +# would contain: > +# > +# AC_CHECK_PYTHON_MAKO_MODULE(0.7.3) > +# > +# LICENSE > +# > +# Copyright (c) 2014 Intel Corporation. > +# > +# 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 2 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 <http://www.gnu.org/licenses/>. > +# > +# 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. > + > +dnl macro that checks for mako module in python > +AC_DEFUN([AC_CHECK_PYTHON_MAKO_MODULE], > +[AC_MSG_CHECKING(if module mako in python is installed) > + echo " > +try: > + import sys > + import mako > +except ImportError as err: > + sys.exit(err) > +else: > + ver_min_req_str = str('$1'); > + ver_min_req = ver_min_req_str.split('.'); > + ver_str = mako.__version__ > + ver = ver_str.split('.') > + > + for i in range(len(ver)): > + ver_int = int(ver[[i]]) > + ver_min_req_int = int(ver_min_req[[i]]); > + if ver_int < ver_min_req_int: > + sys.exit(1); > + if ver_int > ver_min_req_int: > + sys.exit(0);
Is this something that you wrote, or is it a "standard" thing you copied from somewhere? Seems like it'd be a lot simpler as ver_req = map(int, '$1'.split('.')) ver_act = map(int, mako.__version__.split('.')) sys.exit(int(ver_req > ver_act)) [This assumes that there is an equal number of .'s in the requested and actual versions, but so did your old code.] > + sys.exit(0);" | $PYTHON2 - > + if test $? -ne 0 ; then > + AC_MSG_ERROR(mako $1 or later is required.) > + else > + AC_MSG_RESULT(yes) > + fi > +]) > -- > 1.9.1 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev