fortran-2.eclass: cleanup and improvements

Fix problems in the eclass found during EAPI 7 support review, but
unrelated to the EAPI 7 update. Thanks all reviewes for their work.

Signed-off-by: Andrew Savchenko <bircoph@gentoo.org>
This commit is contained in:
Andrew Savchenko
2018-11-17 14:28:16 +03:00
parent a03929258e
commit 2e27acb704

View File

@@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: fortran-2.eclass
@@ -95,7 +95,7 @@ unset _f_use
fortran_int64_abi_fflags() {
debug-print-function ${FUNCNAME} "${@}"
_FC=$(tc-getFC)
local _FC=$(tc-getFC)
if [[ ${_FC} == *gfortran* ]]; then
echo "-fdefault-integer-8"
elif [[ ${_FC} == ifort ]]; then
@@ -115,17 +115,17 @@ _fortran_write_testsuite() {
local filebase=${T}/test-fortran
# f77 code
cat <<- EOF > "${filebase}.f"
cat <<- EOF > "${filebase}.f" || die
end
EOF
# f90/95 code
cat <<- EOF > "${filebase}.f90"
cat <<- EOF > "${filebase}.f90" || die
end
EOF
# f2003 code
cat <<- EOF > "${filebase}.f03"
cat <<- EOF > "${filebase}.f03" || die
procedure(), pointer :: p
end
EOF
@@ -173,7 +173,7 @@ _fortran-has-openmp() {
local ret
local _fc=$(tc-getFC)
cat <<- EOF > "${fcode}"
cat <<- EOF > "${fcode}" || die
call omp_get_num_threads
end
EOF
@@ -182,7 +182,7 @@ _fortran-has-openmp() {
${_fc} ${flag} "${fcode}" -o "${fcode}.x" \
&>> "${T}"/_fortran_compile_test.log
ret=$?
(( ${ret} )) || break
[[ ${ret} == 0 ]] && break
done
rm -f "${fcode}.x"
@@ -196,12 +196,12 @@ _fortran-has-openmp() {
_fortran_die_msg() {
debug-print-function ${FUNCNAME} "${@}"
echo
eerror
eerror "Please install currently selected gcc version with USE=fortran."
eerror "If you intend to use a different compiler then gfortran, please"
eerror "set FC variable accordingly and take care that the necessary"
eerror "fortran dialects are supported."
echo
eerror
die "Currently no working fortran compiler is available (see ${T}/_fortran_compile_test.log for information)"
}
@@ -253,7 +253,7 @@ _fortran-2_pkg_setup() {
for _f_use in ${FORTRAN_NEEDED}; do
case ${_f_use} in
always)
_fortran_test_function && break
_fortran_test_function && break 2
;;
no)
einfo "Forcing fortran support off"
@@ -261,7 +261,7 @@ _fortran-2_pkg_setup() {
;;
*)
if use ${_f_use}; then
_fortran_test_function && break
_fortran_test_function && break 2
else
unset FC
unset F77