On 15 April 2015 at 23:25, Rob Clark <[email protected]> wrote: > On Wed, Apr 15, 2015 at 6:15 PM, Ian Romanick <[email protected]> wrote: >> On 04/15/2015 10:56 AM, Emil Velikov wrote: >>> On 15 April 2015 at 18:33, Matt Turner <[email protected]> wrote: >>>> On Wed, Apr 15, 2015 at 7:08 AM, Emil Velikov <[email protected]> >>>> wrote: >>>>> Rather than forcing everyone to provide their own definition of the symbol >>>>> provide a common weak one, which anyone can override if needed. >>>>> >>>>> This resolved the build of the standalone pipe-drivers, as it provides a >>>>> default symbol which was missing previously. >>>>> >>>>> Cc: Rob Clark <[email protected]> >>>>> Signed-off-by: Emil Velikov <[email protected]> >>>>> --- >>>>> src/Makefile.am | 3 ++- >>>>> src/glsl/SConscript | 2 ++ >>>>> src/mesa/Android.libmesa_glsl_utils.mk | 6 ++++-- >>>>> src/mesa/program/weak_errors.c | 30 >>>>> ++++++++++++++++++++++++++++++ >>>> >>>> Is program/ really the right place for this? (maybe main/ instead?) >>> Hmm main/ might be better indeed. If there are any recommendations >>> about the name I'll gladly take it :) >> >> So... who is going to use this other than src/glsl/main.cpp and >> src/glsl/tests? It seems like you could just put the (non-weak) symbol >> in a common file that only those things link. >> Everyone who uses NIR (and does not include mesa) - currently drivers/freedreno/ir3_compiler, targets/xa, targets/nine, targets/pipe-loader.
>> Is the goal just code sharing, or is the goal partitioning src/glsl from >> src/mesa? The former probably isn't worth the effort, and the latter >> should have a more systematic approach... and I could get behind that. > > fwiw, the goal is sharing libnir (both vc4 and freedreno/ir3 use it, > and I expect others might like to at some point).. but that currently > brings along some glsl dependencies, which bring along the > _mesa_error_no_memory() dependency.. > First goal is to consolidate the four identical functions and prevent adding a fifth one, the latter of which is required in order to fix the build. As a long term plan (for which I will greatly appreciate all your help) is to decouple nir (glsl) from mesa. We can avoid the weak symbol magic, but each user will need to pick the default implementation (C file) which is also fine with me. -Emil _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
