From: <he...@us...> - 2013-06-19 20:55:52
|
Revision: 370 http://sourceforge.net/p/simspark/svn/370 Author: hedayat Date: 2013-06-19 20:55:49 +0000 (Wed, 19 Jun 2013) Log Message: ----------- Better support for cross-compiling using MinGW Enhance file selection for creating Windows installer using file globs Modified Paths: -------------- trunk/rcssserver3d/CMakeLists.txt trunk/rcssserver3d/ChangeLog trunk/rcssserver3d/cmake/AdditionalSearchPaths.cmake trunk/rcssserver3d/plugin/soccer/CMakeLists.txt trunk/rcssserver3d/plugin/soccermonitor/CMakeLists.txt trunk/spark/CMakeLists.txt trunk/spark/ChangeLog trunk/spark/cmake/AdditionalSearchPaths.cmake trunk/spark/lib/zeitgeist/scriptserver/rubywrapper.h trunk/spark/lib/zeitgeist/scriptserver/scriptserver.cpp Modified: trunk/rcssserver3d/CMakeLists.txt =================================================================== --- trunk/rcssserver3d/CMakeLists.txt 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/rcssserver3d/CMakeLists.txt 2013-06-19 20:55:49 UTC (rev 370) @@ -12,7 +12,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/) if (WIN32) - set(Boost_USE_STATIC_LIBS ON) + set(Boost_USE_STATIC_LIBS OFF) set(Boost_USE_MULTITHREADED ON) set(Boost_USE_STATIC_RUNTIME OFF) Modified: trunk/rcssserver3d/ChangeLog =================================================================== --- trunk/rcssserver3d/ChangeLog 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/rcssserver3d/ChangeLog 2013-06-19 20:55:49 UTC (rev 370) @@ -1,3 +1,13 @@ +2013-06-20 Hedayat Vatankhah <hed...@gm...> + + * plugin/soccermonitor/CMakeLists.txt: + * plugin/soccer/CMakeLists.txt: + - link boost libraries + + * CMakeLists.txt: + * cmake/AdditionalSearchPaths.cmake: + - support cross-compiling from multiple root dirs + 2013-06-13 Hedayat Vatankhah <hed...@gm...> * NEWS: Modified: trunk/rcssserver3d/cmake/AdditionalSearchPaths.cmake =================================================================== --- trunk/rcssserver3d/cmake/AdditionalSearchPaths.cmake 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/rcssserver3d/cmake/AdditionalSearchPaths.cmake 2013-06-19 20:55:49 UTC (rev 370) @@ -1,3 +1,7 @@ +# useful for cross-compilation from multiple root directories +set(CMAKE_FIND_ROOT_PATH ${CMAKE_FIND_ROOT_PATH} + "$ENV{CMAKE_ALTERNATIVE_ROOT}") + if (WIN32) set(ENV{SDLDIR} $ENV{SDLDIR} C:/library/SDL/ "C:/Program Files/SDL/" Modified: trunk/rcssserver3d/plugin/soccer/CMakeLists.txt =================================================================== --- trunk/rcssserver3d/plugin/soccer/CMakeLists.txt 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/rcssserver3d/plugin/soccer/CMakeLists.txt 2013-06-19 20:55:49 UTC (rev 370) @@ -136,7 +136,8 @@ add_library(soccer MODULE ${soccer_LIB_SRCS} ${soccer_LIB_HDRS}) -target_link_libraries(soccer ${spark_libs} ${OPENGL_gl_LIBRARY}) +target_link_libraries(soccer ${spark_libs} ${OPENGL_gl_LIBRARY} + ${Boost_LIBRARIES}) if (NOT APPLE) set_target_properties(soccer PROPERTIES VERSION 1.1.0 SOVERSION 1) Modified: trunk/rcssserver3d/plugin/soccermonitor/CMakeLists.txt =================================================================== --- trunk/rcssserver3d/plugin/soccermonitor/CMakeLists.txt 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/rcssserver3d/plugin/soccermonitor/CMakeLists.txt 2013-06-19 20:55:49 UTC (rev 370) @@ -24,7 +24,8 @@ add_library(soccermonitor MODULE ${soccermonitor_LIB_SRCS} ${soccermonitor_LIB_HDRS}) -target_link_libraries(soccermonitor ${spark_libs} ${OPENGL_LIBRARIES}) +target_link_libraries(soccermonitor ${spark_libs} ${OPENGL_LIBRARIES} + ${Boost_LIBRARIES}) if (NOT APPLE) set_target_properties(soccermonitor PROPERTIES VERSION 1.0.0 SOVERSION 1) Modified: trunk/spark/CMakeLists.txt =================================================================== --- trunk/spark/CMakeLists.txt 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/spark/CMakeLists.txt 2013-06-19 20:55:49 UTC (rev 370) @@ -38,7 +38,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/) if (WIN32) - set(Boost_USE_STATIC_LIBS ON) + set(Boost_USE_STATIC_LIBS OFF) set(Boost_USE_MULTITHREADED ON) set(Boost_USE_STATIC_RUNTIME OFF) @@ -205,35 +205,42 @@ if (WIN32) # try to find and install third-party .dlls to lib/thirdparty directory set(THLIBDIR ${LIBDIR}/thirdparty) - # MinGW dll installation on a single root system + # MinGW dll installation on a single root system if (${CMAKE_CXX_COMPILER} MATCHES "mingw") - set(MINGW_BIN_DIR "${Boost_LIBRARY_DIRS}/../bin/") - install(DIRECTORY ${MINGW_BIN_DIR} DESTINATION ${THLIBDIR} - FILES_MATCHING - PATTERN "libstdc++*.dll" - PATTERN "libgcc_s_sjlj*.dll" - PATTERN "libode*.dll" - PATTERN "tbb*.dll" - PATTERN "*boost*regex*mt*.dll" - PATTERN "*boost*date_time*mt*.dll" - PATTERN "*boost*thread*mt*.dll" - PATTERN "libIL*.dll" - PATTERN "libjpeg*.dll" - PATTERN "libpng*.dll" - PATTERN "*freetype*.dll" - PATTERN "*SDL*.dll") + foreach(ROOT_DIR ${CMAKE_FIND_ROOT_PATH}) + file(GLOB inst_lib_files "${ROOT_DIR}/*/libstdc++*.dll" + "${ROOT_DIR}/*/libstdc++*.dll" + "${ROOT_DIR}/*/libgcc_s_sjlj*.dll" + "${ROOT_DIR}/*/libode*.dll" + "${ROOT_DIR}/*/tbb*.dll" + "${ROOT_DIR}/*/*boost*system*mt*.dll" + "${ROOT_DIR}/*/*boost*chrono*mt*.dll" + "${ROOT_DIR}/*/*boost*regex*mt*.dll" + "${ROOT_DIR}/*/*boost*date_time*mt*.dll" + "${ROOT_DIR}/*/*boost*thread*mt*.dll" + "${ROOT_DIR}/*/libIL*.dll" + "${ROOT_DIR}/*/libjpeg*.dll" + "${ROOT_DIR}/*/libpng*.dll" + "${ROOT_DIR}/*/libbz2*.dll" + "${ROOT_DIR}/*/*freetype*.dll" + "${ROOT_DIR}/*/*ruby*.dll" + "${ROOT_DIR}/*/*SDL*.dll") + install(PROGRAMS ${inst_lib_files} DESTINATION ${THLIBDIR}) + endforeach(ROOT_DIR) endif (${CMAKE_CXX_COMPILER} MATCHES "mingw") string(REGEX REPLACE "(.*)\\.lib" "\\1.dll" ODEDLL "${ODE_LIBRARY}") if (EXISTS ${ODEDLL} AND ${ODEDLL} MATCHES ".dll$") install(PROGRAMS ${ODEDLL} DESTINATION ${THLIBDIR}) endif (EXISTS ${ODEDLL} AND ${ODEDLL} MATCHES ".dll$") + + file(GLOB INST_BOOST "${Boost_LIBRARY_DIRS}/*boost*system*mt*.dll" + "${Boost_LIBRARY_DIRS}/*boost*chrono*mt*.dll" + "${Boost_LIBRARY_DIRS}/*boost*regex*mt*.dll" + "${Boost_LIBRARY_DIRS}/*boost*date_time*mt*.dll" + "${Boost_LIBRARY_DIRS}/*boost*thread*mt*.dll") + install(PROGRAMS ${INST_BOOST} DESTINATION ${THLIBDIR}) - install(DIRECTORY "${Boost_LIBRARY_DIRS}/" DESTINATION ${THLIBDIR} - FILES_MATCHING PATTERN "*boost*regex*mt*.dll" - PATTERN "*boost*date_time*mt*.dll" - PATTERN "*boost*thread*mt*.dll") - string(REGEX REPLACE "(.*)\\.lib" "\\1.dll" DevIL_DLL "${IL_LIBRARIES}") if (EXISTS ${DevIL_DLL} AND ${DevIL_DLL} MATCHES ".dll$") install(PROGRAMS ${DevIL_DLL} DESTINATION ${THLIBDIR}) @@ -242,10 +249,11 @@ string(REGEX REPLACE "(.*)/ruby(.exe)?" "\\1/" RUBY_BINDIR "${RUBY_EXECUTABLE}") install(DIRECTORY "${RUBY_BINDIR}" DESTINATION ${THLIBDIR} FILES_MATCHING PATTERN "*.dll") - - install(DIRECTORY "${FREETYPE_INCLUDE_DIR_ft2build}/../bin/" - DESTINATION ${THLIBDIR} FILES_MATCHING - PATTERN "*freetype*.dll" PATTERN "*zlib*.dll") + + set(FREETYPE_BIN_DIR "${FREETYPE_INCLUDE_DIR_ft2build}/../bin") + file(GLOB INST_FREETYPE "${FREETYPE_BIN_DIR}/*freetype*.dll" + "${FREETYPE_BIN_DIR}/*zlib*.dll") + install(PROGRAMS ${INST_FREETYPE} DESTINATION ${THLIBDIR}) set(SDL_DLL "${SDL_INCLUDE_DIR}/../lib/sdl.dll") if (EXISTS ${SDL_DLL}) Modified: trunk/spark/ChangeLog =================================================================== --- trunk/spark/ChangeLog 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/spark/ChangeLog 2013-06-19 20:55:49 UTC (rev 370) @@ -1,3 +1,15 @@ +2013-06-20 Hedayat Vatankhah <hed...@gm...> + + * lib/zeitgeist/scriptserver/rubywrapper.h: + - disalbed unsupported pragmas for MinGW + + * lib/zeitgeist/scriptserver/scriptserver.cpp: + - fixed a bug in changing current directory in Windows + + * CMakeLists.txt: + * cmake/AdditionalSearchPaths.cmake: + - fixed some problems in building Windows installer (with MinGW) + 2013-06-12 Hedayat Vatankhah <hed...@gm...> * NEWS: Modified: trunk/spark/cmake/AdditionalSearchPaths.cmake =================================================================== --- trunk/spark/cmake/AdditionalSearchPaths.cmake 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/spark/cmake/AdditionalSearchPaths.cmake 2013-06-19 20:55:49 UTC (rev 370) @@ -1,3 +1,7 @@ +# useful for cross-compilation from multiple root directories +set(CMAKE_FIND_ROOT_PATH ${CMAKE_FIND_ROOT_PATH} + "$ENV{CMAKE_ALTERNATIVE_ROOT}") + if (WIN32) set(ENV{SDLDIR} $ENV{SDLDIR} C:/library/SDL/ "C:/Program Files/SDL/" Modified: trunk/spark/lib/zeitgeist/scriptserver/rubywrapper.h =================================================================== --- trunk/spark/lib/zeitgeist/scriptserver/rubywrapper.h 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/spark/lib/zeitgeist/scriptserver/rubywrapper.h 2013-06-19 20:55:49 UTC (rev 370) @@ -41,9 +41,11 @@ #ifdef WIN32 #include <winsock2.h> +#ifndef __MINGW32__ // disable compiler warning about type cast from VALUE to RBasic* #pragma warning (disable : 4312) #endif +#endif #include <ruby.h> @@ -59,9 +61,11 @@ #undef read #undef write +#ifndef __MINGW32__ // reenable compiler warning #pragma warning (default : 4312) #endif +#endif #undef EXTERN Modified: trunk/spark/lib/zeitgeist/scriptserver/scriptserver.cpp =================================================================== --- trunk/spark/lib/zeitgeist/scriptserver/scriptserver.cpp 2013-06-19 20:40:54 UTC (rev 369) +++ trunk/spark/lib/zeitgeist/scriptserver/scriptserver.cpp 2013-06-19 20:55:49 UTC (rev 370) @@ -563,7 +563,7 @@ } #if WIN32 - if (! SetCurrentDirectory(dotDir.c_str())) + if (SetCurrentDirectory(dotDir.c_str())) #else if (chdir(dotDir.c_str()) == 0) #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |