cmake-zlib-static.patch 1.2 KB

1234567891011121314151617181920212223242526272829
  1. --- CMakeLists.txt.orig 2013-04-28 17:57:10.000000000 -0500
  2. +++ CMakeLists.txt 2015-12-03 12:53:52.371087900 -0600
  3. @@ -7,6 +7,7 @@
  4. option(ASM686 "Enable building i686 assembly implementation")
  5. option(AMD64 "Enable building amd64 assembly implementation")
  6. +option(WITH_STATIC "Static runtime on Windows" OFF)
  7. set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation directory for executables")
  8. set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries")
  9. @@ -66,6 +67,17 @@
  10. include_directories(${CMAKE_CURRENT_SOURCE_DIR})
  11. endif()
  12. +if(WITH_STATIC AND (MSVC OR MSYS))
  13. + # http://www.cmake.org/Wiki/CMake_FAQ#Dynamic_Replace
  14. + foreach(flag_var
  15. + CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE
  16. + CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO)
  17. + if(${flag_var} MATCHES "/MD")
  18. + string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
  19. + endif(${flag_var} MATCHES "/MD")
  20. + endforeach(flag_var)
  21. +endif()
  22. +
  23. if(NOT CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR)
  24. # If we're doing an out of source build and the user has a zconf.h
  25. # in their source tree...