[pushed] Add check_effective_target_pytest3.

Message ID 1cb7d0a5-167c-d056-2ce3-317f38be8cd3@suse.cz
State Committed
Headers
Series [pushed] Add check_effective_target_pytest3. |

Commit Message

Martin Liška Jan. 17, 2022, 10:28 a.m. UTC
  Hi.

The patch is about factoring out a function similar to check_effective_target_python3.

Cheers,
Martin

gcc/testsuite/ChangeLog:

	* lib/gcov.exp: Use check_effective_target_pytest3.
	* lib/target-supports.exp: Add check_effective_target_pytest3.
---
  gcc/testsuite/lib/gcov.exp            |  9 ++++-----
  gcc/testsuite/lib/target-supports.exp | 12 ++++++++++++
  2 files changed, 16 insertions(+), 5 deletions(-)
  

Comments

H.J. Lu Jan. 19, 2022, 12:59 a.m. UTC | #1
On Mon, Jan 17, 2022 at 2:29 AM Martin Liška <mliska@suse.cz> wrote:
>
> Hi.
>
> The patch is about factoring out a function similar to check_effective_target_python3.
>
> Cheers,
> Martin
>
> gcc/testsuite/ChangeLog:
>
>         * lib/gcov.exp: Use check_effective_target_pytest3.
>         * lib/target-supports.exp: Add check_effective_target_pytest3.
> ---
>   gcc/testsuite/lib/gcov.exp            |  9 ++++-----
>   gcc/testsuite/lib/target-supports.exp | 12 ++++++++++++
>   2 files changed, 16 insertions(+), 5 deletions(-)
>
> diff --git a/gcc/testsuite/lib/gcov.exp b/gcc/testsuite/lib/gcov.exp
> index dfa1b3686ab..6c57515e229 100644
> --- a/gcc/testsuite/lib/gcov.exp
> +++ b/gcc/testsuite/lib/gcov.exp
> @@ -17,6 +17,8 @@
>   # Verify various kinds of gcov output: line counts, branch percentages,
>   # and call return percentages.  None of this is language-specific.
>
> +load_lib "target-supports.exp"
> +
>   global GCOV
>
>   #
> @@ -274,11 +276,8 @@ proc run-gcov-pytest { args } {
>       set testcase [remote_download host $testcase]
>       set result [remote_exec host $GCOV "$testcase -i"]
>
> -    set pytest_cmd "python3 -m pytest --color=no -rap -s --tb=no"
> -    set result [remote_exec host "$pytest_cmd --version"]
> -    set status [lindex $result 0]
> -    if { $status != 0 } then {
> -      unsupported "$subdir/$testcase run-gcov-pytest python3 pytest missing"
> +    if { ![check_effective_target_pytest3] } {
> +      unsupported "$script pytest python3 is missing"
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

This caused:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104109

>         return
>       }
>
> diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
> index 12c5ca5da33..fd48475a57c 100644
> --- a/gcc/testsuite/lib/target-supports.exp
> +++ b/gcc/testsuite/lib/target-supports.exp
> @@ -11734,3 +11734,15 @@ proc check_effective_target_python3 { } {
>           return 0;
>       }
>   }
> +
> +# Return 1 if pytest module is available for python3.
> +
> +proc check_effective_target_pytest3 { } {
> +    set result [remote_exec host "python3 -m pytest --color=no -rap -s --tb=no --version"]
> +    set status [lindex $result 0]
> +    if { $status == 0 } then {
> +        return 1;
> +    } else {
> +        return 0;
> +    }
> +}
> --
> 2.34.1
>
  

Patch

diff --git a/gcc/testsuite/lib/gcov.exp b/gcc/testsuite/lib/gcov.exp
index dfa1b3686ab..6c57515e229 100644
--- a/gcc/testsuite/lib/gcov.exp
+++ b/gcc/testsuite/lib/gcov.exp
@@ -17,6 +17,8 @@ 
  # Verify various kinds of gcov output: line counts, branch percentages,
  # and call return percentages.  None of this is language-specific.
  
+load_lib "target-supports.exp"
+
  global GCOV
  
  #
@@ -274,11 +276,8 @@  proc run-gcov-pytest { args } {
      set testcase [remote_download host $testcase]
      set result [remote_exec host $GCOV "$testcase -i"]
  
-    set pytest_cmd "python3 -m pytest --color=no -rap -s --tb=no"
-    set result [remote_exec host "$pytest_cmd --version"]
-    set status [lindex $result 0]
-    if { $status != 0 } then {
-      unsupported "$subdir/$testcase run-gcov-pytest python3 pytest missing"
+    if { ![check_effective_target_pytest3] } {
+      unsupported "$script pytest python3 is missing"
        return
      }
  
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 12c5ca5da33..fd48475a57c 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -11734,3 +11734,15 @@  proc check_effective_target_python3 { } {
          return 0;
      }
  }
+
+# Return 1 if pytest module is available for python3.
+
+proc check_effective_target_pytest3 { } {
+    set result [remote_exec host "python3 -m pytest --color=no -rap -s --tb=no --version"]
+    set status [lindex $result 0]
+    if { $status == 0 } then {
+        return 1;
+    } else {
+        return 0;
+    }
+}