migration-test: Only generate a single target architecture
Several changes: - We only allow generate header "inside" the tree. Why? Because we need to connit the result, so it makes no sense to generate them on the build dir. - We only generate a single target each time. Getting all the cross-compilers correctly is an impossible task. So know you do: make -C tests/migration $target (native) make CROSS_PREFIX=foo- -C tests/migratiion $target (cross) And you are done. - If we are building out of tree, we have no data about if we are cross-compile or whatever. So instead of guess what is happening, just do what I pointed on previous point. Signed-off-by: Juan Quintela <quintela@redhat.com> Message-Id: <20180913132313.11370-1-quintela@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
This commit is contained in:
parent
18613dc6d9
commit
36bd9e3c8b
@ -9,6 +9,19 @@ TARGET_LIST = i386 aarch64 s390x
|
||||
|
||||
SRC_PATH = ../..
|
||||
|
||||
.PHONY: help $(TARGET_LIST)
|
||||
help:
|
||||
@echo "Create migration guest includes. We generate a binary."
|
||||
@echo "And then convert that binary to an include file that can be"
|
||||
@echo "run in a guest."
|
||||
@echo "Possible operations are:"
|
||||
@echo
|
||||
@echo " $(MAKE) clean Remove all intermediate files"
|
||||
@echo " $(MAKE) target Generate for that target"
|
||||
@echo " $(MAKE) CROSS_PREFIX=... target"
|
||||
@echo " Cross-compile than target"
|
||||
@echo " Possible targets are: $(TARGET_LIST)"
|
||||
|
||||
override define __note
|
||||
/* This file is automatically generated from the assembly file in
|
||||
* tests/migration/$@. Edit that file and then run "make all"
|
||||
@ -18,16 +31,8 @@ override define __note
|
||||
endef
|
||||
export __note
|
||||
|
||||
find-arch-cross-cc = $(lastword $(shell grep -h "CROSS_CC_GUEST=" $(wildcard $(SRC_PATH)/$(patsubst i386,*86*,$(1))-softmmu/config-target.mak) /dev/null))
|
||||
parse-cross-prefix = $(subst gcc,,$(patsubst cc,gcc,$(patsubst CROSS_CC_GUEST="%",%,$(call find-arch-cross-cc,$(1)))))
|
||||
gen-cross-prefix = $(patsubst %-,CROSS_PREFIX=%-,$(call parse-cross-prefix,$(1)))
|
||||
|
||||
.PHONY: all $(TARGET_LIST)
|
||||
|
||||
all: $(TARGET_LIST)
|
||||
|
||||
$(TARGET_LIST):
|
||||
$(MAKE) -C $@ $(call gen-cross-prefix,$@)
|
||||
$(MAKE) CROSS_PREFIX=$(CROSS_PREFIX) -C $@
|
||||
|
||||
clean:
|
||||
for target in $(TARGET_LIST); do \
|
||||
|
Loading…
Reference in New Issue
Block a user