X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ba5e8b528ff29715f5a9008137e117a9fbcc24b0..9fd6cbc6c3b06f4b09e3c3339ffb3cc8a68f9bfa:/tools/cmake/MakeLibWin.cmake diff --git a/tools/cmake/MakeLibWin.cmake b/tools/cmake/MakeLibWin.cmake index 85a93ccefb..596f09c28f 100644 --- a/tools/cmake/MakeLibWin.cmake +++ b/tools/cmake/MakeLibWin.cmake @@ -1,34 +1,31 @@ ### Make Libs -#>gcc c:\simgrid-trunk\examples\msg\icomms\peer.c -static -Lc:\simgrid-trunk\lib -lsimgrid -Ic:\simgrid-trunk\include -lwsock32 - -if(enable_java) - include(${CMAKE_HOME_DIRECTORY}/tools/cmake/MakeJava.cmake) -endif() add_library(simgrid SHARED ${simgrid_sources}) -set_target_properties(simgrid PROPERTIES COMPILE_FLAGS "-D_XBT_DLL_EXPORT -DDLL_EXPORT" LINK_FLAGS "-shared" VERSION ${libsimgrid_version} PREFIX "lib" SUFFIX ".dll" IMPORT_PREFIX "lib" IMPORT_SUFFIX ".dll") - -set(SIMGRID_DEP "-lws2_32 -lm") - -if (HAVE_PTHREAD) - set(SIMGRID_DEP "${SIMGRID_DEP} -lpthread") -endif() - -if(ARCH_32_BITS) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32 -march=i486 -D_I_X86_") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32 -march=i486 -D_I_X86_") +if(MSVC) + set_target_properties(simgrid PROPERTIES + COMPILE_FLAGS "/DDLL_EXPORT" + VERSION ${libsimgrid_version} ) else() - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64 -D_AMD64_") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64 -D_AMD64_") - # message(FATAL_ERROR "Sorry, Simgrid fails with full 64bits for now! Please contact us.") + set_target_properties(simgrid PROPERTIES + COMPILE_FLAGS "-DDLL_EXPORT" + LINK_FLAGS "-shared" + VERSION ${libsimgrid_version} + PREFIX "lib" SUFFIX ".dll" + IMPORT_PREFIX "lib" IMPORT_SUFFIX ".dll") + + set(SIMGRID_DEP "-lm") + + if (HAVE_PTHREAD) + set(SIMGRID_DEP "${SIMGRID_DEP} -lpthread") + endif() + if (HAVE_BOOST_CONTEXTS) + set(SIMGRID_DEP "${SIMGRID_DEP} ${Boost_CONTEXT_LIBRARY}") + endif() endif() target_link_libraries(simgrid ${SIMGRID_DEP}) -find_path(PEXPORTS_PATH NAMES pexports.exe PATHS NO_DEFAULT_PATHS) -message(STATUS "pexports: ${PEXPORTS_PATH}") -if(PEXPORTS_PATH) - add_custom_command(TARGET simgrid POST_BUILD - COMMAND ${PEXPORTS_PATH}/pexports.exe ${CMAKE_BINARY_DIR}/lib/libsimgrid.dll > ${CMAKE_BINARY_DIR}/lib/libsimgrid.def) -endif() +# The library can obviously use the internal headers +set_property(TARGET simgrid + APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}")