# this is a sample configure script used on a sierra-like platform -
#   The locations of various libraries (like boost, netcdf, mpi4py,
#   etc.) will have to be set for your environment.

EXTRA_ARGS=$@

BASE_PATH = /scratch/$USER

#debug:
#
#  -D CMAKE_BUILD_TYPE:STRING=DEBUG \

# Location of Trilinos source, where we build from
#TRILINOS_CODE=$BASE_PATH/stk_geom/src/Trilinos
TRILINOS_CODE=$BASE_PATH/code/TPLs_src/Trilinos

#
# build docs
#
#./build-pydoc.sh $TRILINOS_CODE

# Python installation and related shared library dependencies
PYTHON_EXECUTABLE=/usr/netpub/python-2.7/bin/python
PYTHON_INSTALL_DIR=/usr/netpub/python-2.7
MPI4PY_INSTALL_DIR=$PYTHON_INSTALL_DIR/lib/python2.7/site-packages/mpi4py

# Location of Swig for building the Python/C++ interfaces
SWIG_INSTALL_DIR=/usr/netpub/swig-2.0.4

# Location of other third party library dependencies of Percept
BOOST_INCLUDE_DIR=$BASE_PATH/code/TPLs_src/boost

NETCDF_INSTALL_DIR=/projects/seacas/linux_rhel5/current
NETCDF_INCLUDE=$NETCDF_INSTALL_DIR/include
NETCDF_LIB=$NETCDF_INSTALL_DIR/lib/shared

# not used in this version, can be set to null
#OPENNURBS_PATH=$BASE_PATH/usr/local/trilinos/opennurbs

#  how to enable OpenNURBS
#  -D STK_ADAPT_HAS_GEOMETRY
#  -D TPL_OpenNURBS_INCLUDE_DIRS:PATH=$OPENNURBS_PATH \
#  -D TPL_OpenNURBS_LIBRARIES:PATH=$OPENNURBS_PATH/libopenNURBS.a \
#  -D TPL_ENABLE_OpenNURBS:BOOL=ON \

cmake \
    -D MPI4PY_INCLUDE_DIR:FILEPATH=$MPI4PY_INSTALL_DIR/include \
    -D SWIG_EXECUTABLE:FILEPATH=$SWIG_INSTALL_DIR/bin/swig \
    -D Trilinos_ENABLE_PyTrilinos:BOOL=ON \
    -D BUILD_SHARED_LIBS:BOOL=ON \
    -D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=ON \
\
  -D STK_ENABLE_SEACASIoss:BOOL=ON \
  -D STK_ENABLE_Intrepid:BOOL=ON \
 \
  -D CMAKE_INSTALL_PREFIX:PATH=$BASE_PATH/usr/local \
  -D CMAKE_BUILD_TYPE:STRING=RELEASE \
  -D Trilinos_ENABLE_SECONDARY_STABLE_CODE:BOOL=ON \
  -D Trilinos_ENABLE_STK:BOOL=ON \
  -D Trilinos_ENABLE_SEACASIoss:BOOL=ON \
  -D Trilinos_ENABLE_Intrepid:BOOL=ON \
  -D Trilinos_ENABLE_ThreadPool:BOOL=ON \
\
  -D Trilinos_ENABLE_Zoltan:BOOL=OFF \
  -D Trilinos_ENABLE_TESTS:BOOL=OFF \
  -D STK_ENABLE_TESTS:BOOL=ON \
\
  -D TPL_ENABLE_BoostLib:BOOL=OFF \
\
  -D TPL_ENABLE_MPI:BOOL=ON \
  -D TPL_ENABLE_Boost:BOOL=ON \
  -D TPL_ENABLE_Netcdf:BOOL=ON \
\
  -D TPL_Boost_INCLUDE_DIRS:PATH=$BOOST_INCLUDE_DIR \
  -D TPL_BoostLib_INCLUDE_DIRS:PATH=$BOOST_INCLUDE_DIR \
\
  -D TPL_Netcdf_INCLUDE_DIRS:PATH=$NETCDF_INCLUDE \
  $TRILINOS_CODE
