diff mbox series

toolchain/helper: check_fortran: silence error message

Message ID 20230725004322.3150281-1-mmayer@broadcom.com
State Accepted
Headers show
Series toolchain/helper: check_fortran: silence error message | expand

Commit Message

Markus Mayer July 25, 2023, 12:43 a.m. UTC
check_fortran will display an error message if there is no Fortran
compiler in the toolchain. In the past, running into this error message
would be unlikely, since the Fortran test was only execuded when
BR2_TOOLCHAIN_HAS_FORTRAN was set.

However, since commit c7f641cbaae9 (toolchain/toolchain-external: always
call checks with dependencies), the Fortran check is unconditional. The
error itself benign, and the macro will handle the situation correctly,
since that is what it is designed to do. However, the error message
looks ugly and can be confusing.

[...]
>>> toolchain-external-custom  Extracting
>>> toolchain-external-custom  Patching
>>> toolchain-external-custom  Configuring
/bin/bash: line 1: .../bin/aarch64-linux-gfortran: No such file or directory
>>> toolchain-external-custom  Building
... everything continues normally ...

Let's suppress the error message, since triggerig the error is an
integral part of how the test works and doesn't mean that anything is
wrong.

Signed-off-by: Markus Mayer <mmayer@broadcom.com>
---
 toolchain/helpers.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Yann E. MORIN July 25, 2023, 9:04 p.m. UTC | #1
Markus, All,

On 2023-07-24 17:43 -0700, Markus Mayer via buildroot spake thusly:
> check_fortran will display an error message if there is no Fortran
> compiler in the toolchain. In the past, running into this error message
> would be unlikely, since the Fortran test was only execuded when
> BR2_TOOLCHAIN_HAS_FORTRAN was set.
> 
> However, since commit c7f641cbaae9 (toolchain/toolchain-external: always
> call checks with dependencies), the Fortran check is unconditional. The
> error itself benign, and the macro will handle the situation correctly,
> since that is what it is designed to do. However, the error message
> looks ugly and can be confusing.
> 
> [...]
> >>> toolchain-external-custom  Extracting
> >>> toolchain-external-custom  Patching
> >>> toolchain-external-custom  Configuring
> /bin/bash: line 1: .../bin/aarch64-linux-gfortran: No such file or directory
> >>> toolchain-external-custom  Building
> ... everything continues normally ...
> 
> Let's suppress the error message, since triggerig the error is an
> integral part of how the test works and doesn't mean that anything is
> wrong.
> 
> Signed-off-by: Markus Mayer <mmayer@broadcom.com>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  toolchain/helpers.mk | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk
> index 86a90c0a834d..8e5d6a1f6b3e 100644
> --- a/toolchain/helpers.mk
> +++ b/toolchain/helpers.mk
> @@ -394,7 +394,7 @@ check_fortran = \
>  	__CROSS_FC=$(strip $1) ; \
>  	__o=$(BUILD_DIR)/.br-toolchain-test-fortran.tmp ; \
>  	__HAS_FORTRAN=`printf 'program hello\n\tprint *, "Hello Fortran!\\\n"\nend program hello\n' | \
> -		$${__CROSS_FC} -x f95 -ffree-form -o $${__o} - && echo y`; \
> +		$${__CROSS_FC} -x f95 -ffree-form -o $${__o} - 2>/dev/null && echo y`; \
>  	rm -f $${__o}* ; \
>  	if [ "$${__HAS_FORTRAN}" != "y" -a "$(BR2_TOOLCHAIN_HAS_FORTRAN)" = y ] ; then \
>  		echo "Fortran support is selected but is not available in external toolchain" ; \
> -- 
> 2.40.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
diff mbox series

Patch

diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk
index 86a90c0a834d..8e5d6a1f6b3e 100644
--- a/toolchain/helpers.mk
+++ b/toolchain/helpers.mk
@@ -394,7 +394,7 @@  check_fortran = \
 	__CROSS_FC=$(strip $1) ; \
 	__o=$(BUILD_DIR)/.br-toolchain-test-fortran.tmp ; \
 	__HAS_FORTRAN=`printf 'program hello\n\tprint *, "Hello Fortran!\\\n"\nend program hello\n' | \
-		$${__CROSS_FC} -x f95 -ffree-form -o $${__o} - && echo y`; \
+		$${__CROSS_FC} -x f95 -ffree-form -o $${__o} - 2>/dev/null && echo y`; \
 	rm -f $${__o}* ; \
 	if [ "$${__HAS_FORTRAN}" != "y" -a "$(BR2_TOOLCHAIN_HAS_FORTRAN)" = y ] ; then \
 		echo "Fortran support is selected but is not available in external toolchain" ; \