Raw File
chroma-config.in
#!/bin/sh

# chroma-config
#
# Inspired by qdp++-config from George T. Fleming
#
# Tool for retrieving configuration information about the installed version
# of QDP.
#
# This script was copied from the qdp++-config. The latter was
# inspired by many similar scripts available in RedHat Linux,
# including gnome-config, gtk-config and xmms-config.
#
# Be on the lookout for problems with undesirable CXXFLAGS and LDFLAGS
# propagating through this script.  Send email to flemingg@jlab.org
# if you find such a problem.

prefix="@prefix@"
exec_prefix="@exec_prefix@"
exec_prefix_set=no

version="@VERSION@"

extra_libs=""
sse_dslash_enabled="@SSE_DSLASH_ENABLED@"
case $sse_dslash_enabled in
yes)
	extra_libs="$extra_libs -llevel3"
	;;
*)
	;;
esac

sse_dwf_cg_enabled="@SSE_DWF_CG_ENABLED@"
case $sse_dwf_cg_enabled in
yes)
	extra_libs="$extra_libs -lsse_dwf_cg"
	;;
*)
	;;
esac

chroma_cxx="@CXX@"
chroma_cxxflags="@CXXFLAGS@ -I@includedir@ @QDPXX_CXXFLAGS@"
chroma_ldflags="@LDFLAGS@ -L@libdir@ @QDPXX_LDFLAGS@"
chroma_libs="-lchroma "$extra_libs" @QDPXX_LIBS@ @LIBS@"

precision="@QDPXX_PRECISION@"



usage()
{
  cat <<EOF
Usage: chroma-config [OPTIONS]
Options:
  [--prefix[=DIR]]
  [--exec-prefix[=DIR]]
  [--version]
  [--Nd]
  [--Nc]
  [--Ns]
  [--parallel-arch]
  [--precision]
  [--cxx]
  [--cxxflags]
  [--ldflags]
  [--libs]

EOF
  exit $1
}

if test $# -eq 0; then
  usage 1 1>&2
fi

while test $# -gt 0; do
  case "$1" in
    -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
    *)    optarg= ;;
  esac

  case $1 in
    --prefix=*)
      prefix=$optarg
      if test $exec_prefix_set = no ; then
        exec_prefix=$optarg
      fi
      ;;

    --prefix)
      echo_prefix=yes
      ;;

    --exec-prefix=*)
      exec_prefix=$optarg
      exec_prefix_set=yes
      ;;

    --exec-prefix)
      echo_exec_prefix=yes
      ;;

    --version)
      echo $version
      ;;

    --Nd)
      echo @QDPXX_ND@
      ;;

    --Nc)
      echo @QDPXX_NC@
      ;;

    --Ns)
      echo @QDPXX_NS@
      ;;

    --parallel-arch)
      echo @QDPXX_PARALLEL_ARCH@
      ;;

    --cxx)
      echo $chroma_cxx
      ;;

    --cxxflags)
      echo_cxxflags=yes
      ;;

    --ldflags)
      echo_ldflags=yes
      ;;

    --libs)
      echo_libs=yes
      ;;

    --precision)
	  echo ${precision}
      ;;
    --layout)
       echo ${layout}
       ;;
    *)
      usage 1 1>&2
      ;;

  esac
  shift
done

if test "X${echo_prefix}X" = "XyesX" ; then
  echo $prefix
fi

if test "X${echo_exec_prefix}X" = "XyesX" ; then
  echo $exec_prefix
fi

if test "X${echo_cxxflags}X" = "XyesX" ; then
  output_cxxflags=
  for i in $chroma_cxxflags ; do
    case $i in
      -I/usr/include) ;;
      -g) ;;
#     -O*) ;;
#     -W*) ;;
      *)
        case " $output_cxxflags " in
          *\ $i\ *) ;;                             # already there, skip it
          *) output_cxxflags="$output_cxxflags $i" # add it to output
        esac
    esac
  done
  echo $output_cxxflags
fi

if test "X${echo_ldflags}X" = "XyesX" ; then
  output_ldflags=
  for i in $chroma_ldflags ; do
    if test "X${i}X" != "X-I/usr/libX" ; then
      case " $output_ldflags " in
        *\ $i\ *) ;;                               # already there, skip it
        *) output_ldflags="$output_ldflags $i"     # add it to output
      esac
    fi
  done
  echo $output_ldflags
fi

# Straight out any possible duplicates, but be careful to
# get `-lfoo -lbar -lbaz' for `-lfoo -lbaz -lbar -lbaz'

if test "X${echo_libs}X" = "XyesX" ; then
  rev_libs=
  for i in $chroma_libs ; do
    rev_libs="$i $rev_libs"
  done
  output_libs=
  for i in $rev_libs ; do
    case " $output_libs " in
      *\ $i\ *) ;;                         # already there, skip it
      *) output_libs="$i $output_libs" ;;  # add it to output in reverse order
    esac
  done
  echo $output_libs
fi
back to top