From 28a9d92f4bcb1c84d5d055e86a68bdf302ffbd74 Mon Sep 17 00:00:00 2001 From: navarrop Date: Mon, 21 Jun 2010 14:07:50 +0000 Subject: [PATCH] Add a new cmake file for windows. Cosmetics. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7911 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- buildtools/Cmake/MakeExeLib.cmake | 31 +++------ buildtools/Cmake/MakeExeLibWin.cmake | 95 ++++++++++++++++++++++++++++ 2 files changed, 104 insertions(+), 22 deletions(-) create mode 100644 buildtools/Cmake/MakeExeLibWin.cmake diff --git a/buildtools/Cmake/MakeExeLib.cmake b/buildtools/Cmake/MakeExeLib.cmake index 338ff0f96a..8ffd6cd42b 100644 --- a/buildtools/Cmake/MakeExeLib.cmake +++ b/buildtools/Cmake/MakeExeLib.cmake @@ -1,38 +1,26 @@ ### Make Libs -if(WIN32) - foreach(file ${simgrid_sources}) - set_source_files_properties(${file} PROPERTIES COMPILE_FLAGS "/D _XBT_DLL_EXPORT") - endforeach(file ${simgrid_sources}) - foreach(file ${gras_sources}) - set_source_files_properties(${file} PROPERTIES COMPILE_FLAGS "/D _XBT_DLL_EXPORT") - endforeach(file ${gras_sources}) -endif(WIN32) - -if(enable_supernovae AND NOT WIN32) + +if(enable_supernovae) include(${PROJECT_DIRECTORY}/buildtools/Cmake/Supernovae.cmake) -else(enable_supernovae AND NOT WIN32) +else(enable_supernovae) add_library(simgrid SHARED ${simgrid_sources}) add_library(simgrid_static STATIC ${simgrid_sources}) add_library(gras SHARED ${gras_sources}) if(enable_smpi) add_library(smpi SHARED ${SMPI_SRC}) endif(enable_smpi) -endif(enable_supernovae AND NOT WIN32) +endif(enable_supernovae) set_target_properties(simgrid PROPERTIES VERSION ${libsimgrid_version}) set_target_properties(gras PROPERTIES VERSION ${libgras_version}) + if(enable_smpi) set_target_properties(smpi PROPERTIES VERSION ${libsmpi_version}) endif(enable_smpi) -if(WIN32) - set(GRAS_DEP "wsock32") - set(SIMGRID_DEP "wsock32") -else(WIN32) - set(GRAS_DEP "-lm -lpthread") - set(SIMGRID_DEP "-lm") - set(SMPI_DEP "") -endif(WIN32) +set(GRAS_DEP "-lm -lpthread") +set(SIMGRID_DEP "-lm") +set(SMPI_DEP "") if(HAVE_RUBY) set(SIMGRID_DEP "${SIMGRID_DEP} -l${RUBY_LIBRARY_NAME} -module") @@ -51,7 +39,6 @@ if(CMAKE_SYSTEM_NAME MATCHES "Darwin") add_definitions("-D_XOPEN_SOURCE") endif(CMAKE_SYSTEM_NAME MATCHES "Darwin") - if(pthread) if(with_context MATCHES pthread) SET(SIMGRID_DEP "${SIMGRID_DEP} -lpthread") @@ -87,11 +74,11 @@ endif(HAVE_POSIX_GETTIME) target_link_libraries(simgrid ${SIMGRID_DEP}) target_link_libraries(simgrid_static ${SIMGRID_DEP}) target_link_libraries(gras ${GRAS_DEP}) + if(enable_smpi) target_link_libraries(smpi simgrid ${SMPI_DEP}) endif(enable_smpi) - ### Make EXEs #src/testall diff --git a/buildtools/Cmake/MakeExeLibWin.cmake b/buildtools/Cmake/MakeExeLibWin.cmake new file mode 100644 index 0000000000..04a74f820a --- /dev/null +++ b/buildtools/Cmake/MakeExeLibWin.cmake @@ -0,0 +1,95 @@ +### Make Libs + +add_library(simgrid SHARED ${simgrid_sources}) +add_library(simgrid_static STATIC ${simgrid_sources}) +add_library(gras SHARED ${gras_sources}) +add_library(gras_static STATIC ${gras_sources}) + +set_target_properties(simgrid PROPERTIES VERSION ${libsimgrid_version}) +set_target_properties(gras PROPERTIES VERSION ${libgras_version}) + +set_target_properties(gras PROPERTIES COMPILE_FLAGS "/D _XBT_DLL_EXPORT") +set_target_properties(gras_static PROPERTIES COMPILE_FLAGS "/D _XBT_DLL_STATIC" + OUTPUT_NAME "gras") +set_target_properties(simgrid PROPERTIES COMPILE_FLAGS "/D _XBT_DLL_EXPORT") +set_target_properties(simgrid_static PROPERTIES COMPILE_FLAGS "/D _XBT_DLL_STATIC" + OUTPUT_NAME "simgrid") + +set(GRAS_DEP "wsock32") +set(SIMGRID_DEP "wsock32") + +target_link_libraries(simgrid ${SIMGRID_DEP}) +target_link_libraries(simgrid_static ${SIMGRID_DEP}) +target_link_libraries(gras ${GRAS_DEP}) +target_link_libraries(gras_static ${GRAS_DEP}) + +### Make EXEs + +#src/testall +add_subdirectory(${PROJECT_DIRECTORY}/src) + +#tools/gras +add_subdirectory(${PROJECT_DIRECTORY}/tools/gras) + +#tools/tesh +add_subdirectory(${PROJECT_DIRECTORY}/tools/tesh) + +#testsuite/xbt +add_subdirectory(${PROJECT_DIRECTORY}/testsuite/xbt) + +#testsuite/surf +add_subdirectory(${PROJECT_DIRECTORY}/testsuite/surf) + +#testsuite/simdag +add_subdirectory(${PROJECT_DIRECTORY}/testsuite/simdag) + +#teshsuite +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/xbt) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/gras/datadesc) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/gras/msg_handle) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/gras/empty_main) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/gras/small_sleep) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/simdag) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/simdag/network) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/simdag/network/p2p) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/simdag/network/mxn) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/simdag/partask) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/simdag/platforms) +add_subdirectory(${PROJECT_DIRECTORY}/teshsuite/msg) + +#examples +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/ping) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/rpc) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/spawn) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/timer) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/chrono) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/mutual_exclusion/simple_token) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/mmrpc) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/all2all) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/pmm) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/synchro) +add_subdirectory(${PROJECT_DIRECTORY}/examples/gras/properties) + +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/properties) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/actions) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/migration) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/sendrecv) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/suspend) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/parallel_task) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/priority) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/masterslave) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/trace) +add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/tracing) + +if(HAVE_MC) + add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/mc) +endif(HAVE_MC) + +add_subdirectory(${PROJECT_DIRECTORY}/examples/amok/bandwidth) +add_subdirectory(${PROJECT_DIRECTORY}/examples/amok/saturate) + +add_subdirectory(${PROJECT_DIRECTORY}/examples/simdag) +add_subdirectory(${PROJECT_DIRECTORY}/examples/simdag/dax) +add_subdirectory(${PROJECT_DIRECTORY}/examples/simdag/metaxml) +add_subdirectory(${PROJECT_DIRECTORY}/examples/simdag/properties) +add_subdirectory(${PROJECT_DIRECTORY}/examples/simdag/scheduling) -- 2.20.1