Commit c5af5a3b authored by Philip Carns's avatar Philip Carns

updated all compilers to disable darshan when PMPI tools are used; needs

testing


git-svn-id: https://svn.mcs.anl.gov/repos/darshan/trunk@49 3b7491f3-a168-0410-bf4b-c445ed680a29
parent 7327c7a7
......@@ -48,10 +48,10 @@ CP_ZLIB_LINK_FLAGS=@__CP_ZLIB_LINK_FLAGS@
CC="ccache gcc"
C_LINKPATH_SHL=""
WRAPPER_CFLAGS=" "
WRAPPER_LDFLAGS="-lrt ${CP_WRAPPERS}"
WRAPPER_LDFLAGS="-lrt "
MPILIBNAME="mpich"
PMPILIBNAME="pmpich"
MPI_OTHERLIBS="-lpthread -lrt -lrt -L${DARSHAN_LIB_PATH} -ldarshan-posix "
MPI_OTHERLIBS="-lpthread -lrt -lrt "
NEEDSPLIB="no"
# MPIVERSION is the version of the MPICH2 library that mpicc is intended for
MPIVERSION="1.0.7"
......@@ -233,7 +233,14 @@ if [ "$linking" = yes ] ; then
# prepend the path for the shared libraries to the library list
mpilibs="$C_LINKPATH_SHL$libdir $mpilibs"
fi
$Show $CC $CFLAGS $LDFLAGS "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -ldarshan-mpi-io -lz -I$includedir -L$libdir $mpilibs $MPI_OTHERLIBS
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
$Show $CC $CFLAGS ${CP_WRAPPERS} $LDFLAGS "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -ldarshan-mpi-io -lz -I$includedir -L$libdir $mpilibs $MPI_OTHERLIBS -L${DARSHAN_LIB_PATH} -ldarshan-posix
else
$Show $CC $CFLAGS $LDFLAGS "${allargs[@]}" -I$includedir -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $CC $CFLAGS "${allargs[@]}" -I$includedir
......
......@@ -46,11 +46,11 @@ CP_ZLIB_LINK_FLAGS=@__CP_ZLIB_LINK_FLAGS@
CXX=" /bgsys/drivers/V1R3M0_460_2008-081112P/ppc/gnu-linux/bin/powerpc-bgp-linux-g++"
CXX_LINKPATH_SHL="-Wl,-rpath -Wl,"
WRAPPER_CXXFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include"
WRAPPER_LDFLAGS="${CP_WRAPPERS}"
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPICXXLIBNAME="cxxmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt -L${DARSHAN_LIB_PATH} -ldarshan-posix "
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
NEEDSPLIB="no"
# MPIVERSION is the version of the MPICH2 library that mpicxx is intended for
MPIVERSION="1.0.7"
......@@ -233,7 +233,12 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
shllibpath="$CXX_LINKPATH_SHL$libdir"
fi
$Show $CXX "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lcxxmpich.cnk -ldarshan-mpi-io -lz -I$includedir $CXXFLAGS $LDFLAGS -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
$Show $CXX "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lcxxmpich.cnk -ldarshan-mpi-io -lz -I$includedir $CXXFLAGS ${CP_WRAPPERS} $LDFLAGS -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS -L${DARSHAN_LIB_PATH} -ldarshan-posix
else
$Show $CXX "${allargs[@]}" -lcxxmpich.cnk -I$includedir $CXXFLAGS $LDFLAGS -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $CXX "${allargs[@]}" -I$includedir $CXXFLAGS
......
......@@ -46,11 +46,11 @@ CP_ZLIB_LINK_FLAGS=@__CP_ZLIB_LINK_FLAGS@
CXX="c++"
CXX_LINKPATH_SHL=""
WRAPPER_CXXFLAGS=""
WRAPPER_LDFLAGS="${CP_WRAPPERS}"
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich"
PMPILIBNAME="pmpich"
MPICXXLIBNAME="mpichcxx"
MPI_OTHERLIBS="-lpthread -lrt -lrt -L${DARSHAN_LIB_PATH} -ldarshan-posix "
MPI_OTHERLIBS="-lpthread -lrt -lrt "
NEEDSPLIB="no"
# MPIVERSION is the version of the MPICH2 library that mpicxx is intended for
MPIVERSION="1.0.7"
......@@ -233,7 +233,14 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
shllibpath="$CXX_LINKPATH_SHL$libdir"
fi
$Show $CXX $CXXFLAGS $LDFLAGS "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lmpichcxx -ldarshan-mpi-io -lz -I$includedir -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
$Show $CXX $CXXFLAGS ${CP_WRAPPERS} $LDFLAGS "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lmpichcxx -ldarshan-mpi-io -lz -I$includedir -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS -L${DARSHAN_LIB_PATH} -ldarshan-posix
else
$Show $CXX $CXXFLAGS $LDFLAGS "${allargs[@]}" -lmpichcxx -I$includedir -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $CXX $CXXFLAGS "${allargs[@]}" -I$includedir
......
......@@ -52,7 +52,7 @@ FC="
FC_LINKPATH_SHL="-Wl,-rpath -Wl,"
F77CPP=""
WRAPPER_FFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include"
WRAPPER_LDFLAGS="${CP_WRAPPERS}"
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
......@@ -280,13 +280,20 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
mpilibs="$FC_LINKPATH_SHL$libdir $mpilibs"
fi
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
# If we link link darshan-mpi-io before system mpi lib, we don't get a
# trace but if we don't link it early enough, we get undefined MPI symbols.
# Seems like listing the darshan libs twice does the trick
$Show $FC $FFLAGS $LDFLAGS "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lfmpich.cnk\
$Show $FC $FFLAGS ${CP_WRAPPERS} $LDFLAGS "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lfmpich.cnk\
-ldarshan-posix -ldarshan-mpi-io \
-I$includedir -L$libdir $mpilibs $MPI_OTHERLIBS \
-L${DARSHAN_LIB_PATH} -ldarshan-posix -ldarshan-mpi-io -lz
else
$Show $FC $FFLAGS $LDFLAGS "${allargs[@]}" -I$includedir -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS
......
......@@ -51,10 +51,10 @@ FC="f95"
FC_LINKPATH_SHL=""
F77CPP=""
WRAPPER_FFLAGS=""
WRAPPER_LDFLAGS="-lrt ${CP_WRAPPERS} "
WRAPPER_LDFLAGS="-lrt "
MPILIBNAME="mpich"
PMPILIBNAME="pmpich"
MPI_OTHERLIBS="-lpthread -lrt -lrt -L${DARSHAN_LIB_PATH} -ldarshan-posix "
MPI_OTHERLIBS="-lpthread -lrt -lrt "
NEEDSPLIB="no"
#
# MPIVERSION is the version of the MPICH2 library for which mpif77 is intended
......@@ -279,7 +279,14 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
mpilibs="$FC_LINKPATH_SHL$libdir $mpilibs"
fi
$Show $FC $FFLAGS $LDFLAGS "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lfmpich -ldarshan-mpi-io -lz -I$includedir -L$libdir $mpilibs $MPI_OTHERLIBS
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
$Show $FC $FFLAGS ${CP_WRAPPERS} $LDFLAGS "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lfmpich -ldarshan-mpi-io -lz -I$includedir -L$libdir $mpilibs $MPI_OTHERLIBS -L${DARSHAN_LIB_PATH} -ldarshan-posix
else
$Show $FC $FFLAGS $LDFLAGS "${allargs[@]}" -I$includedir -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $FC $FFLAGS "${allargs[@]}" -I$includedir
......
......@@ -51,7 +51,7 @@ FC="/opt/ibmcmp/xlf/bg/11.1/bin/bgxlf90"
FC_LINKPATH_SHL="-Wl,-rpath -Wl,"
F77CPP=""
WRAPPER_FFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include"
WRAPPER_LDFLAGS="${CP_WRAPPERS}"
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
......@@ -279,13 +279,20 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
mpilibs="$FC_LINKPATH_SHL$libdir $mpilibs"
fi
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
# If we link link darshan-mpi-io before system mpi lib, we don't get a
# trace but if we don't link it early enough, we get undefined MPI symbols.
# Seems like listing the darshan libs twice does the trick
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS $LDFLAGS -L${DARSHAN_LIB_PATH} -lfmpich.cnk \
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS ${CP_WRAPPERS} $LDFLAGS -L${DARSHAN_LIB_PATH} -lfmpich.cnk \
-ldarshan-posix -ldarshan-mpi-io \
-L$libdir $mpilibs $MPI_OTHERLIBS \
-L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -ldarshan-posix -ldarshan-mpi-io -lz
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS
......
......@@ -48,10 +48,10 @@ CP_ZLIB_LINK_FLAGS=@__CP_ZLIB_LINK_FLAGS@
CC="/opt/ibmcmp/vacpp/bg/9.0/bin/bgxlc"
C_LINKPATH_SHL="-Wl,-rpath,"
WRAPPER_CFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include"
WRAPPER_LDFLAGS="${CP_WRAPPERS} "
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt -L${DARSHAN_LIB_PATH} -ldarshan-posix "
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
NEEDSPLIB="no"
# MPIVERSION is the version of the MPICH2 library that mpicc is intended for
MPIVERSION="1.0.7"
......@@ -233,7 +233,14 @@ if [ "$linking" = yes ] ; then
# prepend the path for the shared libraries to the library list
mpilibs="$C_LINKPATH_SHL$libdir $mpilibs"
fi
$Show $CC "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} ${CP_ZLIB_LINK_FLAGS} -ldarshan-mpi-io -lz -I$includedir $CFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
$Show $CC "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} ${CP_ZLIB_LINK_FLAGS} -ldarshan-mpi-io -lz -I$includedir $CFLAGS ${CP_WRAPPERS} $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS -L${DARSHAN_LIB_PATH} -ldarshan-posix
else
$Show $CC "${allargs[@]}" -I$includedir $CFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $CC "${allargs[@]}" -I$includedir $CFLAGS
......
......@@ -46,11 +46,11 @@ CP_ZLIB_LINK_FLAGS=@__CP_ZLIB_LINK_FLAGS@
CXX="/opt/ibmcmp/vacpp/bg/9.0/bin/bgxlC"
CXX_LINKPATH_SHL="-Wl,-rpath -Wl,"
WRAPPER_CXXFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include"
WRAPPER_LDFLAGS="${CP_WRAPPERS} "
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPICXXLIBNAME="cxxmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt -L${DARSHAN_LIB_PATH} -ldarshan-posix "
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
NEEDSPLIB="no"
# MPIVERSION is the version of the MPICH2 library that mpicxx is intended for
MPIVERSION="1.0.7"
......@@ -233,7 +233,14 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
shllibpath="$CXX_LINKPATH_SHL$libdir"
fi
$Show $CXX "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -ldarshan-mpi-io -lz -I$includedir $CXXFLAGS $LDFLAGS -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
$Show $CXX "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -ldarshan-mpi-io -lz -I$includedir $CXXFLAGS ${CP_WRAPPERS} $LDFLAGS -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS -L${DARSHAN_LIB_PATH} -ldarshan-posix
else
$Show $CXX "${allargs[@]}" -I$includedir $CXXFLAGS $LDFLAGS -L$libdir $shllibpath $cxxlibs $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $CXX "${allargs[@]}" -I$includedir $CXXFLAGS
......
......@@ -51,7 +51,7 @@ FC="/opt/ibmcmp/xlf/bg/11.1/bin/bgxlf2003"
FC_LINKPATH_SHL="-Wl,-rpath -Wl,"
F77CPP=""
WRAPPER_FFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include"
WRAPPER_LDFLAGS="${CP_WRAPPERS}"
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
......@@ -279,13 +279,20 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
mpilibs="$FC_LINKPATH_SHL$libdir $mpilibs"
fi
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
# If we link link darshan-mpi-io before system mpi lib, we don't get a
# trace but if we don't link it early enough, we get undefined MPI symbols.
# Seems like listing the darshan libs twice does the trick
$Show $FC "${allargs[@]}" -L${DARSHAN_LIB_PATH} -lfmpich.cnk \
-ldarshan-posix -ldarshan-mpi-io \
-I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS \
-I$includedir $FFLAGS ${CP_WRAPPERS} $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS \
-L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -ldarshan-posix -ldarshan-mpi-io -lz
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS
......
......@@ -51,7 +51,7 @@ FC="/opt/ibmcmp/xlf/bg/11.1/bin/bgxlf"
FC_LINKPATH_SHL="-Wl,-rpath -Wl,"
F77CPP=""
WRAPPER_FFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include "
WRAPPER_LDFLAGS="${CP_WRAPPERS} "
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
......@@ -279,13 +279,20 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
mpilibs="$FC_LINKPATH_SHL$libdir $mpilibs"
fi
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
# If we link link darshan-mpi-io before system mpi lib, we don't get a
# trace but if we don't link it early enough, we get undefined MPI symbols.
# Seems like listing the darshan libs twice does the trick
$Show $FC "${allargs[@]}" -L${DARSHAN_LIB_PATH} -lfmpich.cnk \
-ldarshan-posix -ldarshan-mpi-io \
-I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS \
-I$includedir $FFLAGS ${CP_WRAPPERS} $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS \
-L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -ldarshan-posix -ldarshan-mpi-io -lz
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS
......
......@@ -51,7 +51,7 @@ FC="/opt/ibmcmp/xlf/bg/11.1/bin/bgxlf90"
FC_LINKPATH_SHL="-Wl,-rpath -Wl,"
F77CPP=""
WRAPPER_FFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include"
WRAPPER_LDFLAGS="${CP_WRAPPERS}"
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
......@@ -279,13 +279,20 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
mpilibs="$FC_LINKPATH_SHL$libdir $mpilibs"
fi
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
# If we link link darshan-mpi-io before system mpi lib, we don't get a
# trace but if we don't link it early enough, we get undefined MPI symbols.
# Seems like listing the darshan libs twice does the trick
$Show $FC "${allargs[@]}" -L${DARSHAN_LIB_PATH} -lfmpich.cnk \
-ldarshan-posix -ldarshan-mpi-io \
-I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS \
-I$includedir $FFLAGS ${CP_WRAPPERS} $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS \
-L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} ${CP_ZLIB_LINK_FLAGS} -ldarshan-posix -ldarshan-mpi-io -lz
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS
......
......@@ -51,10 +51,10 @@ FC="/opt/ibmcmp/xlf/bg/11.1/bin/bgxlf95"
FC_LINKPATH_SHL="-Wl,-rpath -Wl,"
F77CPP=""
WRAPPER_FFLAGS="-I/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/include"
WRAPPER_LDFLAGS="${CP_WRAPPERS}"
WRAPPER_LDFLAGS=""
MPILIBNAME="mpich.cnk"
PMPILIBNAME="pmpich.cnk"
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt -L${DARSHAN_LIB_PATH} -ldarshan-posix "
MPI_OTHERLIBS=" -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/comm/sys/lib -ldcmfcoll.cnk -ldcmf.cnk -lpthread -L/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -Wl,-rpath,/bgsys/drivers/V1R3M0_460_2008-081112P/ppc/runtime/SPI -lSPI.cna -lrt"
NEEDSPLIB="no"
#
# MPIVERSION is the version of the MPICH2 library for which mpif77 is intended
......@@ -279,7 +279,20 @@ if [ "$linking" = yes ] ; then
# Prepend the path for the shared libraries to the library list
mpilibs="$FC_LINKPATH_SHL$libdir $mpilibs"
fi
$Show $FC "${allargs[@]}" -L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -lfmpich.cnk -ldarshan-mpi-io -lz -I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS
# check to see if the command line refers to any profilers that might
# use PMPI.
profiler_check=`echo "${allargs[@]}" | ${DARSHAN_BIN_PATH}/darshan-pmpi-filter.sh`
if [ "$profiler_check" = "" ] ; then
# If we link link darshan-mpi-io before system mpi lib, we don't get a
# trace but if we don't link it early enough, we get undefined MPI symbols.
# Seems like listing the darshan libs twice does the trick
$Show $FC "${allargs[@]}" -L${DARSHAN_LIB_PATH} -lfmpich.cnk \
-ldarshan-posix -ldarshan-mpi-io \
-I$includedir $FFLAGS ${CP_WRAPPERS} $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS \
-L${DARSHAN_LIB_PATH} ${CP_ZLIB_LINK_FLAGS} -ldarshan-posix -ldarshan-mpi-io -lz
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS $LDFLAGS -L$libdir $mpilibs $MPI_OTHERLIBS
fi
rc=$?
else
$Show $FC "${allargs[@]}" -I$includedir $FFLAGS
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment