On 24 January 2018 at 10:39, Marc Dietrich <marvi...@gmx.de> wrote: > Hi Dylan, > > Am Dienstag, 23. Januar 2018, 19:28:08 CET schrieb Dylan Baker: >> Fixes: d1992255bb29 ("meson: Add build Intel "anv" vulkan driver") >> Reported-by: Marc Dietrich <marvi...@gmx.de> >> Signed-off-by: Dylan Baker <dylan.c.ba...@intel.com> >> --- >> src/util/meson.build | 8 ++++++-- >> 1 file changed, 6 insertions(+), 2 deletions(-) >> >> diff --git a/src/util/meson.build b/src/util/meson.build >> index fa591c92e56..b23dba3a985 100644 >> --- a/src/util/meson.build >> +++ b/src/util/meson.build >> @@ -112,8 +112,12 @@ libxmlconfig = static_library( >> files_xmlconfig, >> include_directories : inc_common, >> dependencies : [dep_expat, dep_m], >> - c_args : [c_msvc_compat_args, c_vis_args, >> - '-DSYSCONFDIR="@0@"'.format(get_option('sysconfdir'))], >> + c_args : [ >> + c_msvc_compat_args, c_vis_args, >> + '-DSYSCONFDIR="@0@"'.format( >> + join_paths(get_option('prefix'), get_option('sysconfdir')) >> + ), >> + ], >> build_by_default : false, >> ) > > this won't work as the prefix is often set to /usr, which results in > sysconfdir to be /usr/etc. As this is a special case, and "/etc" is the > default meson sysconfdir, we could just test for "prefix=/usr" and set > sysconfdir to prefix/sysconfdir if it is not. > > This works for me, but dosn't look meson-stylish: > > diff --git a/src/util/meson.build b/src/util/meson.build > index fa591c92e5..6294e188f2 100644 > --- a/src/util/meson.build > +++ b/src/util/meson.build > @@ -83,8 +83,6 @@ files_mesa_util = files( > 'u_vector.h', > ) > > -install_data('drirc', install_dir : get_option('sysconfdir')) > - > files_xmlconfig = files( > 'xmlconfig.c', > 'xmlconfig.h', > @@ -107,13 +105,23 @@ libmesa_util = static_library( > build_by_default : false > ) > > +if get_option('prefix') != '/usr' > + sysconfarg = join_paths(get_option('prefix'), get_option('sysconfdir')) > +else > + sysconfarg = '/' + get_option('sysconfdir') > +endif > + Tweaking sysconfdir based on the value of prefix doesn't sound right.It's the build system to know and manage those. By default everything should be installed only in prefix - that's what cmake, autotools and others do. I think meson should say consistent do the same.
The reason being is that you don't want to overwrite existing [system] files, unless explicitly asked for. In this case by setting sysconfigdir to /etc. Obviously sysconfdir/sysconfigdir is one example here, but the rule applies throughout. Emil _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev