Skip to content

Commit 961413d

Browse files
committed
Fix PCRE2 build for Windows, with Ninja and Makefiles generator.
Also, suppress pcre2 warning, it is external project, its warnings should not bother us.
1 parent 3734439 commit 961413d

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

cmake/pcre.cmake

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,24 @@ MACRO(BUNDLE_PCRE2)
1111
FOREACH(lib pcre2-posix pcre2-8)
1212
ADD_LIBRARY(${lib} STATIC IMPORTED GLOBAL)
1313
ADD_DEPENDENCIES(${lib} pcre2)
14-
IF(WIN32) # same condition as in pcre2 CMakeLists.txt that adds "d"
15-
SET(file ${dir}/src/pcre2-build/${CMAKE_CFG_INTDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}${lib}${CMAKE_STATIC_LIBRARY_SUFFIX})
16-
SET_TARGET_PROPERTIES(${lib} PROPERTIES IMPORTED_LOCATION_DEBUG ${dir}/src/pcre2-build/Debug/${lib}d.lib)
14+
SET(file ${dir}/src/pcre2-build/${CMAKE_CFG_INTDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}${lib}${CMAKE_STATIC_LIBRARY_SUFFIX})
15+
IF(WIN32)
16+
# Debug libary name.
17+
# Same condition as in pcre2 CMakeLists.txt that adds "d"
18+
SET(file_d ${dir}/src/pcre2-build/${CMAKE_CFG_INTDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}${lib}d${CMAKE_STATIC_LIBRARY_SUFFIX})
19+
SET_TARGET_PROPERTIES(${lib} PROPERTIES IMPORTED_LOCATION_DEBUG ${file_d})
1720
ELSE()
18-
SET(file ${dir}/src/pcre2-build/${CMAKE_STATIC_LIBRARY_PREFIX}${lib}${CMAKE_STATIC_LIBRARY_SUFFIX})
19-
SET(byproducts ${byproducts} BUILD_BYPRODUCTS ${file})
21+
SET(file_d)
2022
ENDIF()
23+
SET(byproducts ${byproducts} BUILD_BYPRODUCTS ${file} ${file_d})
2124
SET_TARGET_PROPERTIES(${lib} PROPERTIES IMPORTED_LOCATION ${file})
2225
ENDFOREACH()
2326
FOREACH(v "" "_DEBUG" "_RELWITHDEBINFO" "_RELEASE" "_MINZISEREL")
2427
STRING(REPLACE "/WX" "" pcre2_flags${v} "${CMAKE_C_FLAGS${v}}")
28+
IF(MSVC)
29+
# Suppress a warning
30+
STRING(APPEND pcre2_flags${v} " /wd4244 " )
31+
ENDIF()
2532
ENDFOREACH()
2633
ExternalProject_Add(
2734
pcre2

0 commit comments

Comments
 (0)