mirror of https://github.com/golang/go.git
misc/cgo/fortran: fix gfortran compile test
Fixes #14544 Change-Id: I58b0b164ebbfeafe4ab32039a063df53e3018a6d Reviewed-on: https://go-review.googlesource.com/22730 Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Sean Lake <odysseus9672@gmail.com>
This commit is contained in:
parent
e155bf0ce8
commit
082881daf8
|
|
@ -9,12 +9,28 @@ set -e
|
||||||
|
|
||||||
FC=$1
|
FC=$1
|
||||||
|
|
||||||
|
goos=$(go env GOOS)
|
||||||
|
|
||||||
|
libext="so"
|
||||||
|
if [ "$goos" == "darwin" ]; then
|
||||||
|
libext="dylib"
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$FC" in
|
||||||
|
*gfortran*)
|
||||||
|
libpath=$(dirname $($FC -print-file-name=libgfortran.$libext))
|
||||||
|
export CGO_LDFLAGS="$CGO_LDFLAGS -Wl,-rpath,$libpath -L $libpath"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
if ! $FC helloworld/helloworld.f90 -o main.exe >& /dev/null; then
|
if ! $FC helloworld/helloworld.f90 -o main.exe >& /dev/null; then
|
||||||
echo "skipping Fortran test: could not build helloworld.f90 with $FC"
|
echo "skipping Fortran test: could not build helloworld.f90 with $FC"
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
rm -f main.exe
|
rm -f main.exe
|
||||||
|
|
||||||
|
status=0
|
||||||
|
|
||||||
if ! go test; then
|
if ! go test; then
|
||||||
echo "FAIL: go test"
|
echo "FAIL: go test"
|
||||||
status=1
|
status=1
|
||||||
|
|
|
||||||
|
|
@ -445,7 +445,7 @@ func (t *tester) registerTests() {
|
||||||
if fortran == "" {
|
if fortran == "" {
|
||||||
fortran, _ = exec.LookPath("gfortran")
|
fortran, _ = exec.LookPath("gfortran")
|
||||||
}
|
}
|
||||||
if t.hasBash() && fortran != "" && t.goos != "dragonfly" { // see golang.org/issue/14544
|
if t.hasBash() && fortran != "" {
|
||||||
t.tests = append(t.tests, distTest{
|
t.tests = append(t.tests, distTest{
|
||||||
name: "cgo_fortran",
|
name: "cgo_fortran",
|
||||||
heading: "../misc/cgo/fortran",
|
heading: "../misc/cgo/fortran",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue