SET( KIN_SRC ${PROJECT_SOURCE_DIR}/kinsol/source ) SET(SIMTKKINSOL_LIBRARY_NAME simtkkinsol) ADD_DEFINITIONS( -DSIMTK_SIMTKKINSOL_LIBRARY_NAME=${SIMTKKINSOL_LIBRARY_NAME} -DSIMTK_SIMTKKINSOL_MAJOR_VERSION=${SIMTKSUNDIALS_MAJOR_VERSION} -DSIMTK_SIMTKKINSOL_MINOR_VERSION=${SIMTKSUNDIALS_MINOR_VERSION} -DSIMTK_SIMTKKINSOL_BUILD_VERSION=${SIMTKSUNDIALS_BUILD_VERSION} -DSIMTK_SIMTKKINSOL_COPYRIGHT_YEARS="${SIMTKSUNDIALS_COPYRIGHT_YEARS}" -DSIMTK_SIMTKKINSOL_AUTHORS="${SIMTKSUNDIALS_AUTHORS}" ) IF(WIN32) SET( PLATFORM_LIBS ) ELSE(WIN32) SET( PLATFORM_LIBS m ) ENDIF(WIN32) SET(KINSOL_SRCS kinsol_version.c kinbbdpre.c kinsol.c kinsolio.c kinspgmr.c ) IF(WIN32) ADD_LIBRARY(simtkkinsol SHARED ${KINSOL_SRCS} ${KIN_SRC}/simtkkinsol.def) ELSE(WIN32) ADD_LIBRARY(simtkkinsol SHARED ${KINSOL_SRCS}) ENDIF(WIN32) TARGET_LINK_LIBRARIES( simtkkinsol simtk_sundials_shared ${PLATFORM_LIBS} ) INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/kinsol/source ${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/kinsol/include ${PROJECT_SOURCE_DIR}/shared/source ${PROJECT_SOURCE_DIR}/shared/include) FILE( GLOB KINSOL_SOURCES ${PROJECT_SOURCE_DIR}/kinsol/source/*.h ) FILE( GLOB KINSOL_INCLUDES ${PROJECT_SOURCE_DIR}/kinsol/include/*.h ) SET( INCLUDE_FILES ${KINSOL_SOURCES} ${KINSOL_INCLUDES} ) FOREACH (inc_file ${INCLUDE_FILES} ) GET_FILENAME_COMPONENT( file_name ${inc_file} NAME ) CONFIGURE_FILE( ${inc_file} ${CMAKE_BINARY_DIR}/core/include/sundials/${file_name} ) ENDFOREACH (inc_file ${INCLUDE_FILES} ) IF( WIN32 ) IF( CMAKE_C_COMPILER MATCHES "gcc?" ) ADD_CUSTOM_TARGET( kinsol_dot_lib ALL lib /DEF:${KIN_SRC}/simtkkinsol.def /MACHINE:Ix86 /OUT:${LIBRARY_OUTPUT_PATH}/simtkkinsol.lib) ENDIF( CMAKE_C_COMPILER MATCHES "gcc?" ) ENDIF( WIN32 )