summaryrefslogtreecommitdiffstats
path: root/config/pgi-flags
diff options
context:
space:
mode:
Diffstat (limited to 'config/pgi-flags')
-rw-r--r--config/pgi-flags85
1 files changed, 85 insertions, 0 deletions
diff --git a/config/pgi-flags b/config/pgi-flags
new file mode 100644
index 0000000..a845192
--- /dev/null
+++ b/config/pgi-flags
@@ -0,0 +1,85 @@
+# -*- shell-script -*-
+#
+# This file should be sourced into configure if the compiler is the
+# PGI pgcc compiler or a derivative. It is careful not to do anything
+# if the compiler is not PGI; otherwise `cc_flags_set' is set to `yes'
+#
+
+# Get the compiler version in a way that works for pgcc
+# pgcc unless a compiler version is already known
+#
+# cc_vendor: The compiler name: pgcc
+# cc_version: Version number: 5.0-2, 5.2-2
+#
+if test X = "X$cc_flags_set"; then
+ cc_version="`$CC $CFLAGS -V 2>&1 |grep '^pgcc'`"
+ if test X != "X$cc_version"; then
+ cc_vendor=`echo $cc_version |sed 's/\([a-z]*\).*/\1/'`
+ cc_version=`echo $cc_version |sed 's/pgcc \([-a-z0-9\.\-]*\).*/\1/'`
+ echo "compiler '$CC' is PGI $cc_vendor-$cc_version"
+
+ # Some version numbers
+ # PGI version numbers are of the form: "major.minor-patch"
+ cc_vers_major=`echo $cc_version | cut -f1 -d.`
+ cc_vers_minor=`echo $cc_version | cut -f2 -d. | cut -f1 -d-`
+ cc_vers_patch=`echo $cc_version | cut -f2 -d. | cut -f2 -d-`
+ test -n "$cc_vers_major" || cc_vers_major=0
+ test -n "$cc_vers_minor" || cc_vers_minor=0
+ test -n "$cc_vers_patch" || cc_vers_patch=0
+ cc_vers_all=`expr $cc_vers_major '*' 1000000 + $cc_vers_minor '*' 1000 + $cc_vers_patch`
+ fi
+fi
+
+# Common PGI flags for various situations
+if test "X-pgcc" = "X-$cc_vendor"; then
+ # Insert section about version specific problems from gnu-flags here, if
+ # necessary.
+
+ arch=
+ # Architecture-specific flags
+ # Nothing currently. (Uncomment code below and modify to add any)
+ #case "$host_os-$host_cpu" in
+ # *-i686)
+ # arch="-march=i686"
+ # ;;
+ #esac
+
+ # Host-specific flags
+ # Nothing currently. (Uncomment code below and modify to add any)
+ #case "`hostname`" in
+ # sleipnir.ncsa.uiuc.edu)
+ # arch="$arch -pipe"
+ # ;;
+ #esac
+
+ # General
+ CFLAGS="$CFLAGS $arch -Minform,warn"
+
+ # Production
+
+ # Omit frame pointer for optimized code?
+ NOFP=${NOFP:=-Mnoframe}
+
+ PROD_CFLAGS="-fast -s $NOFP"
+ PROD_CPPFLAGS=
+
+ # Debug
+ DEBUG_CFLAGS="-g -Mbounds -Mchkfpstk"
+ DEBUG_CPPFLAGS=
+
+ # Profile
+ PROFILE_CFLAGS="-g -Mprof=func,line"
+ # Use this for profiling with gprof
+ #PROFILE_CFLAGS="-g -pg"
+ PROFILE_CPPFLAGS=
+
+ # Flags are set
+ cc_flags_set=yes
+
+fi
+
+# Clear cc info if no flags set
+if test "X-$cc_flags_set" = "X-"; then
+ cc_vendor=
+ cc_version=
+fi