[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] libxl: fix api check Makefile



On Fri, 2012-08-31 at 15:38 +0100, Ian Jackson wrote:
> 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@xxxxxxxxxxxxx>
> 
> ---
>  .gitignore           |    2 +-
>  tools/libxl/Makefile |    8 +++++---
>  2 files changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/.gitignore b/.gitignore
> index 084ec62..2d56e70 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -189,7 +189,7 @@ 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/libaio/src/*.ol
>  tools/libaio/src/*.os
>  tools/misc/cpuperf/cpuperf-perfcntr
> diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
> index 22c4881..a9d9ec6 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 $@

libxl.api-ok needs to either go in .*ignore or start with an _.

Otherwise this looks good:
Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

>  
>  _%.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
>  



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.