#--------------------------------------------------- # Yank # # Creates Yank executable #---------------------------------------------------- # On Linux it appears that cmake 2.4 does not work with Cuda cmake rules CMAKE_MINIMUM_REQUIRED(VERSION 2.6) # For debugging SET(CMAKE_VERBOSE_MAKEFILE 1) # Define the project PROJECT(yank) # Define include and lib directories #INCLUDE_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/include $ENV{OPENMM_SOURCE_DIR} /opt/local/include ) #LINK_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/lib $ENV{OPENMM_INSTALL_DIR}/lib/plugins /opt/local/lib ) # Standard #INCLUDE_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/include $ENV{OPENMM_SOURCE_DIR} $ENV{HOME}/local/include /opt/local/include /usr/local/include /usr/local/cuda/include $ENV{NETCDF_INSTALL_DIR}/include $ENV{CUDA_INSTALL_DIR}/include ) #LINK_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/lib $ENV{OPENMM_INSTALL_DIR}/lib/plugins $ENV{HOME}/local/lib /opt/local/lib /usr/local/lib /usr/local/cuda/lib $ENV{NETCDF_INSTALL_DIR}/lib $ENV{CUDA_INSTALL_DIR}/lib ) # For NCSA Lincoln. #INCLUDE_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/include $ENV{OPENMM_SOURCE_DIR} $ENV{HOME}/local/include /opt/local/include /usr/local/include $ENV{NETCDF_INSTALL_DIR}/include $ENV{CUDA_INSTALL_DIR}/include ) #LINK_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/lib $ENV{OPENMM_INSTALL_DIR}/lib/plugins $ENV{HOME}/local/lib /opt/local/lib /usr/local/lib $ENV{NETCDF_INSTALL_DIR}/lib $ENV{CUDA_INSTALL_DIR}/lib64 ) # With enthought. #INCLUDE_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/include $ENV{OPENMM_SOURCE_DIR} /Library/Frameworks/Python.framework/Versions/Current/include /opt/local/include /usr/local/include /usr/local/cuda/include $ENV{NETCDF_INSTALL_DIR}/include $ENV{CUDA_INSTALL_DIR}/include $ENV{HOME}/local/include ) #LINK_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/lib $ENV{OPENMM_INSTALL_DIR}/lib/plugins /Library/Frameworks/Python.framework/Versions/Current/lib /opt/local/lib /usr/local/lib /usr/local/cuda/lib $ENV{NETCDF_INSTALL_DIR}/lib $ENV{CUDA_INSTALL_DIR}/lib $ENV{HOME}/local/lib ) # Enthought on OS X #INCLUDE_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/include $ENV{OPENMM_SOURCE_DIR} /Library/Frameworks/Python.framework/Versions/Current/include /opt/local/include /usr/local/include $ENV{CUDA_INSTALL_DIR}/include ) #LINK_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/lib $ENV{OPENMM_INSTALL_DIR}/lib/plugins /Library/Frameworks/Python.framework/Versions/Current/lib /opt/local/lib /usr/local/lib $ENV{CUDA_INSTALL_DIR}/lib ) # Enthought 64bit #INCLUDE_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/include $ENV{OPENMM_SOURCE_DIR} /Library/Frameworks/EPD64.framework/Versions/Current/include /opt/local/include /usr/local/include $ENV{CUDA_INSTALL_DIR}/include ) #LINK_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/lib $ENV{OPENMM_INSTALL_DIR}/lib/plugins /Library/Frameworks/EPD64.framework/Versions/Current/lib /opt/local/lib /usr/local/lib $ENV{CUDA_INSTALL_DIR}/lib ) #INCLUDE_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/include $ENV{OPENMM_SOURCE_DIR} $ENV{HOME}/local/include /Library/Frameworks/Python.framework/Versions/Current/include $ENV{CUDA_INSTALL_DIR}/include ) #LINK_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/lib $ENV{OPENMM_INSTALL_DIR}/lib/plugins $ENV{HOME}/local/lib /Library/Frameworks/Python.framework/Versions/Current/lib $ENV{CUDA_INSTALL_DIR}/lib ) # MacPorts NetCDF INCLUDE_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/include $ENV{OPENMM_SOURCE_DIR} /opt/local/include /usr/local/include $ENV{CUDA_INSTALL_DIR}/include ) LINK_DIRECTORIES( $ENV{OPENMM_INSTALL_DIR}/lib $ENV{OPENMM_INSTALL_DIR}/lib/plugins /opt/local/lib /usr/local/lib $ENV{CUDA_INSTALL_DIR}/lib ) # Define the executables ADD_EXECUTABLE(yank yank.cpp concurrent_queue.h utils.h restraints.C restraints.h AlchemicalFactory.C AlchemicalFactory.h forcecheck.C forcecheck.h fep.C fep.h amber.C amber.h parm.C parm.h strlib.C strlib.h rng.C rng.h) # Add link libraries TARGET_LINK_LIBRARIES(yank OpenMM OpenMMCuda OpenMMFreeEnergy OpenMMFreeEnergyCuda netcdf_c++ netcdf cudart hdf5 hdf5_hl z) # Set additional compile flags SET_TARGET_PROPERTIES(yank PROPERTIES COMPILE_FLAGS "-Wall -g -O2 -D__STDC_LIMIT_MACROS -pg")