diff mbox series

migration-test: Only generate a single target architecture

Message ID 20180913132313.11370-1-quintela@redhat.com
State New
Headers show
Series migration-test: Only generate a single target architecture | expand

Commit Message

Juan Quintela Sept. 13, 2018, 1:23 p.m. UTC
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>
---
 tests/migration/Makefile | 23 ++++++++++++++---------
 1 file changed, 14 insertions(+), 9 deletions(-)

Comments

Eric Blake Sept. 13, 2018, 5:06 p.m. UTC | #1
On 9/13/18 8:23 AM, Juan Quintela wrote:
> 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

s/connit/commit/

>    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:

s/know/now/

>       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>
> ---
>   tests/migration/Makefile | 23 ++++++++++++++---------
>   1 file changed, 14 insertions(+), 9 deletions(-)
>
Dr. David Alan Gilbert Oct. 11, 2018, 6:07 p.m. UTC | #2
* Juan Quintela (quintela@redhat.com) wrote:
> 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>


Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

and queued.


> ---
>  tests/migration/Makefile | 23 ++++++++++++++---------
>  1 file changed, 14 insertions(+), 9 deletions(-)
> 
> diff --git a/tests/migration/Makefile b/tests/migration/Makefile
> index ff726ed7dd..13e99b1692 100644
> --- a/tests/migration/Makefile
> +++ b/tests/migration/Makefile
> @@ -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 \
> -- 
> 2.17.1
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
diff mbox series

Patch

diff --git a/tests/migration/Makefile b/tests/migration/Makefile
index ff726ed7dd..13e99b1692 100644
--- a/tests/migration/Makefile
+++ b/tests/migration/Makefile
@@ -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 \