Summary: | python required to build Mesa release tarballs | ||
---|---|---|---|
Product: | Mesa | Reporter: | Jonathan Gray <jsg> |
Component: | Mesa core | Assignee: | mesa-dev |
Status: | RESOLVED FIXED | QA Contact: | mesa-dev |
Severity: | normal | ||
Priority: | medium | CC: | emil.l.velikov, jason, siglesias |
Version: | 10.5 | ||
Hardware: | All | ||
OS: | OpenBSD | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | remove mako check when python is not installed |
Description
Jonathan Gray
2015-02-26 01:18:43 UTC
Since commit 2b37bea010a9c, the format-handling code is auto-generated via python scripts and mako templates, so python is required. Also, Python is listed in the prerequisites for building Mesa in the docs: http://www.mesa3d.org/install.html Maybe we need to modify our configure.ac to mark Python as hard dependency. (In reply to Samuel Iglesias from comment #1) > Since commit 2b37bea010a9c, the format-handling code is auto-generated via > python scripts and mako templates, so python is required. > Also, Python is > listed in the prerequisites for building Mesa in the docs: > > http://www.mesa3d.org/install.html > > Maybe we need to modify our configure.ac to mark Python as hard dependency. That is correct but for building from git alone. The distribution tarballs (should) provide all the auto-generated files, similar to any other autotools project. As such one should not need any of python/mako/lex/etc but a plain compiler toolchain. Imho we should fix these in a way that, when the files are generated, all the non-compiler requirements are non-fatal. Although I cannot find a way to do that of the top of my head. At the end it would be nice to update the doc :-) Created attachment 113857 [details] [review] remove mako check when python is not installed > The distribution tarballs (should) provide all the auto-generated files, > similar to any other autotools project. As such one should not need any of > python/mako/lex/etc but a plain compiler toolchain. > > Imho we should fix these in a way that, when the files are generated, all the > non-compiler requirements are non-fatal. > I wrote a patch (attached) that removes the python mako module check when python is not installed in the system. If it needs to do something with python, it is going to fail anyway. I tested this patch in a virtual machine without python installed to check if I can compile mesa from a tarball created by 'make dist' command. At least now, mako doesn't block the configuration step. The build fails at a later time due to some python files but unrelated to autogenerated format_pack.c and format_unpack.c files because the latter ones were already generated by make dist. If you think this patch is interesting to have in master, just say so and I will send this patch to the mailing list. > Although I cannot find a way to do that of the top of my head. (In reply to Samuel Iglesias from comment #3) > I wrote a patch (attached) that removes the python mako module check when > python is not installed in the system. If it needs to do something with > python, it is going to fail anyway. > True. > If you think this patch is interesting to have in master, just say so and I > will send this patch to the mailing list. > Imho the patch looks good. Alternative solution is to have the macro set a variable that we check in configure (like below), but let see what others think on the ML. PYTHON_MAKO_REQUIRED=0.3.4 AX_CHECK_PYTHON_MAKO_MODULE($PYTHON_MAKO_REQUIRED) if test -n "$PYTHON2" -a $foo_mako_found = no; then AC_MSG_ERROR([Python mako module v$PYTHON_MAKO_MODULE not found]) fi Thank you Samuel! Hi Jonathan, Can you give mesa 10.5.2 a try and reopen if this is still an issue. It's not perfect solution atm, as configure will error out if you have python while mako is not found. There are some patches that should resolve this but they haven't been reviewed yet. Thanks Emil |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.