#! /bin/sh
# script to compile C programs that are linked 
# against Fortran libraries
# last modified 22 Jul 11 th

args=
objs=
ldflags=
fldflags="-Wl,-Bsymbolic-functions -Wl,-z,relro -lpthread -L/usr/lib/gcc/i686-linux-gnu/4.8 -L/usr/lib/gcc/i686-linux-gnu/4.8/../../../i386-linux-gnu -L/usr/lib/gcc/i686-linux-gnu/4.8/../../../../lib -L/lib/i386-linux-gnu -L/lib/../lib -L/usr/lib/i386-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/i686-linux-gnu/4.8/../../.. -lgfortran -lm -lquadmath -lm -m32"
compileonly=

cc="${REALCC:-cc}"
cxx="${REALCXX:-c++}"
test `basename $0 .in` = f++ && cc="$cxx"

while test $# -gt 0 ; do
  case "$1" in
  -st | -b32 | -b64)
	;; # ignore mcc-specific flags
  -arch)
	shift
	;;
  -lstdc++)
	cc="$cxx"
	;; # or else -static-libstdc++ has no effect
  -Wno-long-double)
	;; # mcc adds this on Macs & gcc 4 doesn't like it
  -[Ll]* | -Wl*)
	ldflags="$ldflags '$1'"
	;;
  *.tm.o)
	objs="'$1' $objs"
	;;
  *.a | *.o | *.so)
	objs="$objs '$1'"
	;;
  *.cc)
	args="$args '$1'"
	cc="$cxx"
	;;
  -c)
	compileonly="-c"
	;;
  -o)
	args="$args -o '$2'"
	shift
	;;
  *)
	args="$args '$1'"
	;;
  esac
  shift
done

eval "set -x ; exec $cc $args ${compileonly:-$objs $ldflags $fldflags}"

