mirror of
https://github.com/golang/go
synced 2024-11-13 20:20:30 -07:00
be0471880d
The bash script that drives this test needs to know whether the fortran compiler works, but it doesn't actually care about the generated binary. Write that binary to /dev/null. Updates #28387 Updates #30316 Change-Id: I4f86da1aeb939fc205f467511fc69235a6a9af26 Reviewed-on: https://go-review.googlesource.com/c/go/+/208124 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
45 lines
870 B
Bash
Executable File
45 lines
870 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Copyright 2016 The Go Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style
|
|
# license that can be found in the LICENSE file.
|
|
|
|
# This directory is intended to test the use of Fortran with cgo.
|
|
|
|
set -e
|
|
|
|
FC=$1
|
|
|
|
goos=$(go env GOOS)
|
|
|
|
libext="so"
|
|
if [ "$goos" = "darwin" ]; then
|
|
libext="dylib"
|
|
elif [ "$goos" = "aix" ]; then
|
|
libtext="a"
|
|
fi
|
|
|
|
case "$FC" in
|
|
*gfortran*)
|
|
libpath=$(dirname $($FC -print-file-name=libgfortran.$libext))
|
|
if [ "$goos" != "aix" ]; then
|
|
RPATH_FLAG="-Wl,-rpath,$libpath"
|
|
fi
|
|
export CGO_LDFLAGS="$CGO_LDFLAGS $RPATH_FLAG -L $libpath"
|
|
;;
|
|
esac
|
|
|
|
if ! $FC helloworld/helloworld.f90 -o /dev/null >& /dev/null; then
|
|
echo "skipping Fortran test: could not build helloworld.f90 with $FC"
|
|
exit 0
|
|
fi
|
|
rm -f main.exe
|
|
|
|
status=0
|
|
|
|
if ! go test; then
|
|
echo "FAIL: go test"
|
|
status=1
|
|
fi
|
|
|
|
exit $status
|