X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/92b5df93e3d02736a7bc4982c2ba897a066f8d44..981ea78c9e495aac60bd4c90c8518d6b41443eb6:/buildtools/Cmake/MakeLibWin.cmake?ds=sidebyside diff --git a/buildtools/Cmake/MakeLibWin.cmake b/buildtools/Cmake/MakeLibWin.cmake index 8e3f46308c..cd41fa9e55 100644 --- a/buildtools/Cmake/MakeLibWin.cmake +++ b/buildtools/Cmake/MakeLibWin.cmake @@ -1,20 +1,44 @@ ### Make Libs #>gcc c:\simgrid-trunk\examples\msg\icomms\peer.c -static -Lc:\simgrid-trunk\lib -lsimgrid -Ic:\simgrid-trunk\include -lwsock32 -add_library(simgrid STATIC ${simgrid_sources}) -add_library(gras STATIC ${gras_sources}) +add_library(simgrid SHARED ${simgrid_sources}) +add_library(gras SHARED ${gras_sources}) -set_target_properties(gras PROPERTIES COMPILE_FLAGS "-D_XBT_DLL_STATIC" - OUTPUT_NAME "gras") -set_target_properties(simgrid PROPERTIES COMPILE_FLAGS "-D_XBT_DLL_STATIC" OUTPUT_NAME "simgrid") +set_target_properties(gras PROPERTIES COMPILE_FLAGS "-D_XBT_DLL_EXPORT -DDLL_EXPORT" VERSION ${libgras_version} OUTPUT_NAME "gras") +set_target_properties(simgrid PROPERTIES COMPILE_FLAGS "-D_XBT_DLL_EXPORT -DDLL_EXPORT" VERSION ${libsimgrid_version} OUTPUT_NAME "simgrid") -set(GRAS_DEP "ws2_32 -lpthread") -set(SIMGRID_DEP "ws2_32 -lpcre -lpthread") +# libpthreadGC2.dll +if(ARCH_32_BITS) + find_library(PATH_PTHREAD_LIB + NAMES pthreadGC2.dll + HINTS + $ENV{PATH} + PATH_SUFFIXES bin/ c/bin + ) +else(ARCH_32_BITS) + find_library(PATH_PTHREAD_LIB + NAMES pthreadGC2-w64.dll + HINTS + $ENV{PATH} + PATH_SUFFIXES bin/ c/bin + ) +endif(ARCH_32_BITS) + +set(GRAS_DEP "ws2_32 ${PATH_PTHREAD_LIB}") +set(SIMGRID_DEP "ws2_32 ${PATH_PCRE_LIB} ${PATH_PTHREAD_LIB}") if(ARCH_32_BITS) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32 -march=i486") else(ARCH_32_BITS) - message(FATAL_ERROR "Sorry, Simgrid fails with full 64bits for now! Please contact us.") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64") +# message(FATAL_ERROR "Sorry, Simgrid fails with full 64bits for now! Please contact us.") endif(ARCH_32_BITS) +target_link_libraries(gras ${GRAS_DEP}) target_link_libraries(simgrid ${SIMGRID_DEP}) -target_link_libraries(gras ${GRAS_DEP}) \ No newline at end of file + +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(PEXPORTS_PATH) \ No newline at end of file