Ie, we permit general code in libxl direct access to the manifest
constants such as XEN_RUN_DIR. This simplifies their use in (eg)
format strings.
This might be controversial because it will make it difficult to make
any of these runtime-configurable later without changing lots of use
sites. But I don't think it's likely we'll want to do that.
For the moment, leave existing call sites of all the functions in
libxl_paths.c unchanged. The simplified use arrangements can be used
in new code and when we update call sites for other reasons.
Also correct the dependencies in the Makefile so that _libxl_paths.h
is generated before anything that uses libxl_internal.h.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
perl $^ --prefix=libxl >$@.new
$(call move-if-changed,$@.new,$@)
-libxl_paths.c: _libxl_paths.h
-
libxl.h: _libxl_types.h
libxl_json.h: _libxl_types_json.h
-libxl_internal.h: _libxl_types_internal.h
+libxl_internal.h: _libxl_types_internal.h _libxl_paths.h
libxl_internal_json.h: _libxl_types_internal_json.h
$(LIBXL_OBJS) $(LIBXLU_OBJS) $(XL_OBJS): libxl.h
#include <xen/io/xenbus.h>
#include "libxl.h"
+#include "_libxl_paths.h"
#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1)
#define _hidden __attribute__((visibility("hidden")))
#include "libxl_osdeps.h" /* must come before any other headers */
#include "libxl_internal.h"
-#include "_libxl_paths.h"
const char *libxl_sbindir_path(void)
{