diff options
author | Ian Jackson <Ian.Jackson@eu.citrix.com> | 2012-09-03 11:22:01 +0100 |
---|---|---|
committer | Ian Jackson <Ian.Jackson@eu.citrix.com> | 2012-09-03 11:22:01 +0100 |
commit | d5047e1a1ce16d9d00d485c563c08e6662a91fb4 (patch) | |
tree | 2ba8c1cb9c8efa3ed062d14686eef51a57e69b83 | |
parent | d0a6bfdbf8a3f11e807624c6ff7b93f1f7b25a56 (diff) | |
download | xen-d5047e1a1ce16d9d00d485c563c08e6662a91fb4.tar.gz xen-d5047e1a1ce16d9d00d485c563c08e6662a91fb4.tar.bz2 xen-d5047e1a1ce16d9d00d485c563c08e6662a91fb4.zip |
libxl: fix api check Makefile
Touch the libxl.api-ok stamp file, and unconditionally put in place
the new _libxl.api-for-check. This avoids needlessly rerunning the
preprocessor on libxl.h each time we call "make".
Ensure that _libxl.api-for-check gets the CFLAGS used for xl, so that
if it is asked for in a standalone make run it can find xentoollog.h.
Remove *.api-ok on clean.
Also fix .gitignore.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | .hgignore | 1 | ||||
-rw-r--r-- | tools/libxl/Makefile | 8 |
3 files changed, 8 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore index 084ec6216e..776e4b2172 100644 --- a/.gitignore +++ b/.gitignore @@ -189,7 +189,8 @@ tools/libxl/xl tools/libxl/testenum tools/libxl/testenum.c tools/libxl/tmp.* -tools/libxl/libxl.api-for-check +tools/libxl/_libxl.api-for-check +tools/libxl/*.api-ok tools/libaio/src/*.ol tools/libaio/src/*.os tools/misc/cpuperf/cpuperf-perfcntr @@ -188,6 +188,7 @@ ^tools/libxl/tmp\..*$ ^tools/libxl/.*\.new$ ^tools/libxl/_libxl\.api-for-check +^tools/libxl/libxl\.api-ok ^tools/libvchan/vchan-node[12]$ ^tools/libaio/src/.*\.ol$ ^tools/libaio/src/.*\.os$ diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile index 22c48816d7..a9d9ec604d 100644 --- a/tools/libxl/Makefile +++ b/tools/libxl/Makefile @@ -85,7 +85,8 @@ $(LIBXLU_OBJS): CFLAGS += $(CFLAGS_libxenctrl) # For xentoollog.h CLIENTS = xl testidl libxl-save-helper XL_OBJS = xl.o xl_cmdimpl.o xl_cmdtable.o xl_sxp.o -$(XL_OBJS): CFLAGS += $(CFLAGS_libxenctrl) # For xentoollog.h +$(XL_OBJS) _libxl.api-for-check: \ + CFLAGS += $(CFLAGS_libxenctrl) # For xentoollog.h $(XL_OBJS): CFLAGS += $(CFLAGS_libxenlight) $(XL_OBJS): CFLAGS += -include $(XEN_ROOT)/tools/config.h # libxl_json.h needs it. @@ -116,12 +117,13 @@ $(eval $(genpath-target)) libxl.api-ok: check-libxl-api-rules _libxl.api-for-check $(PERL) $^ + touch $@ _%.api-for-check: %.h $(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS_$*.o) -c -E $< $(APPEND_CFLAGS) \ -DLIBXL_EXTERNAL_CALLERS_ONLY=LIBXL_EXTERNAL_CALLERS_ONLY \ >$@.new - $(call move-if-changed,$@.new,$@) + mv -f $@.new $@ _paths.h: genpath sed -e "s/\([^=]*\)=\(.*\)/#define \1 \2/g" $@.tmp >$@.2.tmp @@ -211,7 +213,7 @@ install: all clean: $(RM) -f _*.h *.o *.so* *.a $(CLIENTS) $(DEPS) $(RM) -f _*.c *.pyc _paths.*.tmp _*.api-for-check - $(RM) -f testidl.c.new testidl.c + $(RM) -f testidl.c.new testidl.c *.api-ok distclean: clean |