]> xenbits.xensource.com Git - xen.git/commitdiff
libxl: fix gentypes call in Makefile
authorCédric Bosdonnat <cbosdonnat@suse.com>
Thu, 10 Nov 2016 16:46:00 +0000 (17:46 +0100)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Fri, 12 Jan 2018 15:40:49 +0000 (15:40 +0000)
From the make documentation:

"$* [...] If the target is `dir/a.foo.b' and the target pattern is
`a.%.b' then the stem is `dir/foo'. In a static pattern rule, the
stem is part of the file name that matched the `%' in the target
pattern."

The rule generating the c types files from the idl ones is not
a static pattern rule, but rather an implicit rule. Thus the value
of $* is preceded by the file path, instead of only what matches %.

In order to get this fixed, drop the path using a $(notdir $*).

Signed-off-by: Cédric Bosdonnat <cbosdonnat@suse.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
tools/libxl/Makefile

index ef017859ba0d6b0ac0fa36466e64b7cc6f9a1cf3..00f3f83423d0f755820be50714967f6b170bf384 100644 (file)
@@ -251,12 +251,13 @@ $(LIBXL_OBJS) $(LIBXL_TEST_OBJS) $(LIBXLU_OBJS) \
 $(LIBXL_OBJS) $(LIBXL_TEST_OBJS): libxl_internal.h
 
 _libxl_type%.h _libxl_type%_json.h _libxl_type%_private.h _libxl_type%.c: libxl_type%.idl gentypes.py idl.py
-       $(PYTHON) gentypes.py libxl_type$*.idl __libxl_type$*.h __libxl_type$*_private.h \
-               __libxl_type$*_json.h  __libxl_type$*.c
-       $(call move-if-changed,__libxl_type$*.h,_libxl_type$*.h)
-       $(call move-if-changed,__libxl_type$*_private.h,_libxl_type$*_private.h)
-       $(call move-if-changed,__libxl_type$*_json.h,_libxl_type$*_json.h)
-       $(call move-if-changed,__libxl_type$*.c,_libxl_type$*.c)
+       $(eval stem = $(notdir $*))
+       $(PYTHON) gentypes.py libxl_type$(stem).idl __libxl_type$(stem).h __libxl_type$(stem)_private.h \
+               __libxl_type$(stem)_json.h  __libxl_type$(stem).c
+       $(call move-if-changed,__libxl_type$(stem).h,_libxl_type$(stem).h)
+       $(call move-if-changed,__libxl_type$(stem)_private.h,_libxl_type$(stem)_private.h)
+       $(call move-if-changed,__libxl_type$(stem)_json.h,_libxl_type$(stem)_json.h)
+       $(call move-if-changed,__libxl_type$(stem).c,_libxl_type$(stem).c)
 
 libxenlight.so: libxenlight.so.$(MAJOR)
        $(SYMLINK_SHLIB) $< $@