@@ -55,55 +55,23 @@ IF (NOT ZLIB_FOUND)
55
55
DOWNLOAD "http://zlib.net/${USED_ZLIB_VERSION} .tar.gz"
56
56
"${CMAKE_CURRENT_BINARY_DIR} /zlib.tar.gz"
57
57
SHOW_PROGRESS )
58
+ ELSEIF ()
59
+ MESSAGE (STATUS "Checking zlib.tar.gz ... found" )
60
+ ENDIF ()
61
+ IF (NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR} /${USED_ZLIB_VERSION} " )
58
62
EXECUTE_PROCESS (COMMAND ${CMAKE_COMMAND} -E tar xzf
59
63
${CMAKE_CURRENT_BINARY_DIR} /zlib.tar.gz
60
64
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} )
61
65
MESSAGE (STATUS "unpacked zlib.tar.gz" )
62
- ELSEIF ()
63
- MESSAGE (STATUS "Checking zlib.tar.gz ... found" )
64
66
ENDIF ()
67
+
65
68
# we can't use patch command, as long as all of environments do
66
69
# not have it. so do the same trick as boehm gc.
67
70
SET (ZLIB_SRC_DIR ${CMAKE_CURRENT_BINARY_DIR} /${USED_ZLIB_VERSION} )
68
71
MESSAGE (STATUS "zlib source directory ${ZLIB_SRC_DIR} " )
69
- IF (NOT EXISTS ${ZLIB_SRC_DIR} /CMakeLists.txt.in)
70
- FILE (RENAME ${ZLIB_SRC_DIR} /CMakeLists.txt
71
- ${ZLIB_SRC_DIR} /CMakeLists.txt.in)
72
- ENDIF ()
73
- FILE (READ ${ZLIB_SRC_DIR} /CMakeLists.txt.in ZLIB_BUILD_LINES)
74
- # convert lines to list
75
- STRING (REGEX REPLACE ";" "\\\\ ;" ZLIB_BUILD_LINES "${ZLIB_BUILD_LINES} " )
76
- STRING (REGEX REPLACE "\n " ";" ZLIB_BUILD_LINES "${ZLIB_BUILD_LINES} " )
77
- # recreate CMakeLists.txt
78
- FILE (WRITE ${ZLIB_SRC_DIR} /CMakeLists.txt
79
- "# generated by Sagittarius build process\n " )
80
- IF (WINDOWS_SUPPORT)
81
- FILE (APPEND ${ZLIB_SRC_DIR} /CMakeLists.txt "set(SKIP_INSTALL_ALL TRUE)\n " )
82
- ENDIF ()
83
- FOREACH (line ${ZLIB_BUILD_LINES} )
84
- # this must be a bug on zlib but can't do anything so just modify.
85
- IF (line STREQUAL "if(NOT MINGW)" )
86
- FILE (APPEND ${ZLIB_SRC_DIR} /CMakeLists.txt "if(MSVC)\n " )
87
- ELSEIF (line MATCHES "^cmake_minimum_required" )
88
- FILE (APPEND ${ZLIB_SRC_DIR} /CMakeLists.txt
89
- "cmake_minimum_required(VERSION 2.8.12)\n " )
90
- ELSE ()
91
- FILE (APPEND ${ZLIB_SRC_DIR} /CMakeLists.txt "${line} \n " )
92
- ENDIF ()
93
- IF (line MATCHES "^include_directories" )
94
- # add extra
95
- FILE (APPEND ${ZLIB_SRC_DIR} /CMakeLists.txt
96
- "include_directories(\$ {CMAKE_CURRENT_SOURCE_DIR})\n " )
97
- ENDIF ()
98
- ENDFOREACH ()
99
- IF (WINDOWS_SUPPORT)
100
- FILE (APPEND ${ZLIB_SRC_DIR} /CMakeLists.txt
101
- "install(TARGETS zlib DESTINATION .)\n " )
102
- ENDIF ()
103
- # this will duplicate so delete it
104
- FILE (REMOVE ${ZLIB_SRC_DIR} /zconf.h)
105
- # CMake add C_FLAGS to RC_FLAGS. how stupid it is, eh?
72
+
106
73
SET (ZLIB_BUILD_EXAMPLES OFF ) # disable example build, we don't need it
74
+ SET (SKIP_INSTALL_ALL TRUE )
107
75
ADD_SUBDIRECTORY (${ZLIB_SRC_DIR} zlib)
108
76
INCLUDE_DIRECTORIES (${ZLIB_SRC_DIR} )
109
77
# for zconf.h
0 commit comments