SET(SIMTKCVODES_LIBRARY_NAME simtkcvodes) ADD_DEFINITIONS( -DSIMTK_SIMTKCVODES_LIBRARY_NAME=${SIMTKCVODES_LIBRARY_NAME} -DSIMTK_SIMTKCVODES_MAJOR_VERSION=${SIMTKSUNDIALS_MAJOR_VERSION} -DSIMTK_SIMTKCVODES_MINOR_VERSION=${SIMTKSUNDIALS_MINOR_VERSION} -DSIMTK_SIMTKCVODES_BUILD_VERSION=${SIMTKSUNDIALS_BUILD_VERSION} -DSIMTK_SIMTKCVODES_COPYRIGHT_YEARS="${SIMTKSUNDIALS_COPYRIGHT_YEARS}" -DSIMTK_SIMTKCVODES_AUTHORS="${SIMTKSUNDIALS_AUTHORS}" ) IF(WIN32) SET( PLATFORM_LIBS ) ELSE(WIN32) SET( PLATFORM_LIBS m ) ENDIF(WIN32) SET(CVODES_SRCS cvodes_version.c cvband.c cvbbdpre.c cvbandpre.c cvdense.c cvdiag.c cvodes.c cvodea.c cvodesio.c cvspgmr.c ) IF(WIN32) ADD_LIBRARY(simtkcvodes SHARED ${CVODES_SRCS} ${PROJECT_SOURCE_DIR}/cvodes/source/simtkcvodes.def ) ELSE(WIN32) ADD_LIBRARY(simtkcvodes SHARED ${CVODES_SRCS}) ENDIF(WIN32) TARGET_LINK_LIBRARIES( simtkcvodes simtk_sundials_shared ${PLATFORM_LIBS} ) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/cvodes/source ${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/cvodes/include ${PROJECT_SOURCE_DIR}/shared/source ${PROJECT_SOURCE_DIR}/shared/include) FILE( GLOB CVODES_SOURCES ${PROJECT_SOURCE_DIR}/cvodes/source/*.h ) FILE( GLOB CVODES_INCLUDES ${PROJECT_SOURCE_DIR}/cvodes/include/*.h ) SET( INCLUDE_FILES ${CVODES_SOURCES} ${CVODES_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) CONFIGURE_FILE( ${PROJECT_SOURCE_DIR}/cvodes/source/cvodes_impl.h ${CMAKE_BINARY_DIR}/core/include/sundials/cvodes_impl.h ) CONFIGURE_FILE( ${PROJECT_SOURCE_DIR}/cvodes/include/cvodes.h ${CMAKE_BINARY_DIR}/core/include/sundials/cvodes.h ) IF( WIN32 ) IF( CMAKE_C_COMPILER MATCHES "gcc?" ) ADD_CUSTOM_TARGET( cvodes_dot_lib ALL lib /DEF:${PROJECT_SOURCE_DIR}/cvodes/source/simtkcvodes.def /MACHINE:Ix86 /OUT:${LIBRARY_OUTPUT_PATH}/simtkcvodes.lib ) ENDIF( CMAKE_C_COMPILER MATCHES "gcc?" ) ENDIF( WIN32 )