configure confirms that mako is not installed:
checking if module mako in python is installed... No module named mako
Traceback (most recent call last):
File "./radv_icd.py", line 26, in <module>
from radv_extensions import *
File "/tmp/mesa3d-18.1.1-1-work/src/mesa-18.1.1/src/amd/vulkan/radv_extensions.py", line 32, in <module>
from mako.template import Template
ImportError: No module named mako.template
I just sent a patch to the ML that should fix it; unfortunately for you, the fix is that it should've failed earlier, you do need mako when building radv.
(cc'ed you on the patch so that you can confirm the configure step now fails)
Bummer! No workaround available to avoid mako? It does introduce a lot of previously unneeded depencencies.
Why not ship the generated files in the tarball like it's done in other parts of mesa?
(In reply to fredrik from comment #2)
> Bummer! No workaround available to avoid mako? It does introduce a lot of
> previously unneeded depencencies.
Those dependencies will be needed even for tarball builds once we switch to meson for building tarballs (it takes a snapshot of the git tree), so any workaround would be temporary anyway.
(In reply to Michael Olbrich from comment #3)
> Why not ship the generated files in the tarball like it's done in other
> parts of mesa?
It could be possible, I didn't look into this; I'll let Dave and Bas (cc'ed on the patch) decide what is best.
Some of those files (radv_icd.py) uses the install path, you can't really put the result of that in a release tarball.
so either we need to stop using mako for that and use something else, or we still need mako.
Just curious though what are the main reasons against mako? Intel has been depending on them like this for a while.
(In reply to Bas Nieuwenhuizen from comment #5)
> Just curious though what are the main reasons against mako? Intel has been
> depending on them like this for a while.
My only "objection" is additional dependency bloat:
These are new deps to run mesa3d 18.1 on my system:
-- Packages installed
Those are just build-time dependencies, you can uninstall them afterwards.
(In reply to Dylan Baker from comment #7)
> Those are just build-time dependencies, you can uninstall them afterwards.
It's not really practical in a source based distribution (yes a few still exist).
I just pushed the "radv needed mako all along" patch with Bas' blessing:
Author: Eric Engestrom <email@example.com>
Date: Mon Jun 4 12:08:15 2018 +0100
configure: radv depends on mako
Fixes: 17201a2eb0b1b85387136 "radv: port to using updated anv
Acked-by: Bas Nieuwenhuizen <firstname.lastname@example.org>
Signed-off-by: Eric Engestrom <email@example.com>