toolchain-external: add a check for OpenMP support

Signed-off-by: Ed Blake <ed.blake@sondrel.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Ed Blake 2019-03-28 18:48:15 +00:00 committed by Thomas Petazzoni
parent 25ae113445
commit ef206d8cc7
2 changed files with 21 additions and 0 deletions

View File

@ -359,6 +359,24 @@ check_fortran = \
fi ; \
rm -f $${__o}* \
#
#
# Check that the external toolchain supports OpenMP
#
# $1: cross-gcc path
#
check_openmp = \
__CROSS_CC=$(strip $1) ; \
__o=$(BUILD_DIR)/.br-toolchain-test-openmp.tmp ; \
printf '\#include <omp.h>\nint main(void) { return omp_get_thread_num(); }' | \
$${__CROSS_CC} -fopenmp -x c -o $${__o} - ; \
if test $$? -ne 0 ; then \
rm -f $${__o}* ; \
echo "OpenMP support is selected but is not available in external toolchain"; \
exit 1 ; \
fi ; \
rm -f $${__o}* \
#
# Check that the cross-compiler given in the configuration exists
#

View File

@ -545,6 +545,9 @@ define $(2)_CONFIGURE_CMDS
if test "$$(BR2_TOOLCHAIN_HAS_FORTRAN)" = "y" ; then \
$$(call check_fortran,$$(TOOLCHAIN_EXTERNAL_FC)) ; \
fi ; \
if test "$$(BR2_TOOLCHAIN_HAS_OPENMP)" = "y" ; then \
$$(call check_openmp,$$(TOOLCHAIN_EXTERNAL_CC)) ; \
fi ; \
if test "$$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC)" = "y" ; then \
$$(call check_uclibc,$$$${SYSROOT_DIR}) ; \
elif test "$$(BR2_TOOLCHAIN_EXTERNAL_MUSL)" = "y" ; then \