From: Roger Pau Monne Date: Tue, 26 Apr 2016 10:07:49 +0000 (+0200) Subject: xen/tools: fix substitution of __align8__ uint64_t inside of headers X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=daddec692ab36feff55d89d8e6e964503c226910;p=people%2Froyger%2Fxen.git xen/tools: fix substitution of __align8__ uint64_t inside of headers The current seedery doesn't work with BSD sed, so remove the try to match int64_t also (since there's none at the moment). Also, apply the same treatment to all arch headers, currently this is only done to x86_64 headers. Signed-off-by: Roger Pau Monné Reviewed-by: Andrew Cooper Acked-by: Wei Liu Reviewed-by: Doug Goldstein Release-acked-by: Wei Liu --- diff --git a/tools/include/xen-foreign/Makefile b/tools/include/xen-foreign/Makefile index 270a9752ca..e395011fdd 100644 --- a/tools/include/xen-foreign/Makefile +++ b/tools/include/xen-foreign/Makefile @@ -25,18 +25,30 @@ check-headers: checker rm tmp.size arm32.h: mkheader.py structs.py $(ROOT)/arch-arm.h $(ROOT)/xen.h - $(PYTHON) $< $* $@ $(filter %.h,$^) + $(PYTHON) $< $* $@.tmp $(filter %.h,$^) + #Avoid mixing an alignment directive with a uint64_t cast or sizeof expression + sed 's/(__align8__ \(uint64_t\))/(\1)/g' < $@.tmp > $@.tmp2 + rm $@.tmp + $(call move-if-changed,$@.tmp2,$@) arm64.h: mkheader.py structs.py $(ROOT)/arch-arm.h $(ROOT)/xen.h - $(PYTHON) $< $* $@ $(filter %.h,$^) + $(PYTHON) $< $* $@.tmp $(filter %.h,$^) + #Avoid mixing an alignment directive with a uint64_t cast or sizeof expression + sed 's/(__align8__ \(uint64_t\))/(\1)/g' < $@.tmp > $@.tmp2 + rm $@.tmp + $(call move-if-changed,$@.tmp2,$@) x86_32.h: mkheader.py structs.py $(ROOT)/arch-x86/xen-x86_32.h $(ROOT)/arch-x86/xen.h $(ROOT)/xen.h - $(PYTHON) $< $* $@ $(filter %.h,$^) + $(PYTHON) $< $* $@.tmp $(filter %.h,$^) + #Avoid mixing an alignment directive with a uint64_t cast or sizeof expression + sed 's/(__align8__ \(uint64_t\))/(\1)/g' < $@.tmp > $@.tmp2 + rm $@.tmp + $(call move-if-changed,$@.tmp2,$@) x86_64.h: mkheader.py structs.py $(ROOT)/arch-x86/xen-x86_64.h $(ROOT)/arch-x86/xen.h $(ROOT)/xen.h $(PYTHON) $< $* $@.tmp $(filter %.h,$^) #Avoid mixing an alignment directive with a uint64_t cast or sizeof expression - sed 's/(__align8__ \(u\?int64_t\))/(\1)/g' < $@.tmp > $@.tmp2 + sed 's/(__align8__ \(uint64_t\))/(\1)/g' < $@.tmp > $@.tmp2 rm $@.tmp $(call move-if-changed,$@.tmp2,$@)