d07377fdf7
Similar to other system libraries, use the builtin version on Windows and macOS and try to find the system library on Unix. Find the correct PCRE2 library based on the code point width that will be used.
51 lines
2.1 KiB
CMake
51 lines
2.1 KiB
CMake
#############################################################################
|
|
# Name: build/cmake/lib/regex.cmake
|
|
# Purpose: Use external or internal regex lib
|
|
# Author: Tobias Taschner
|
|
# Created: 2016-09-25
|
|
# Copyright: (c) 2016 wxWidgets development team
|
|
# Licence: wxWindows licence
|
|
#############################################################################
|
|
|
|
if(wxUSE_REGEX STREQUAL "builtin")
|
|
# TODO: implement building PCRE2 via its CMake file, using
|
|
# add_subdirectory or ExternalProject_Add
|
|
wx_add_builtin_library(wxregex
|
|
3rdparty/pcre/src/pcre2_auto_possess.c
|
|
3rdparty/pcre/src/pcre2_compile.c
|
|
3rdparty/pcre/src/pcre2_config.c
|
|
3rdparty/pcre/src/pcre2_context.c
|
|
3rdparty/pcre/src/pcre2_convert.c
|
|
3rdparty/pcre/src/pcre2_dfa_match.c
|
|
3rdparty/pcre/src/pcre2_error.c
|
|
3rdparty/pcre/src/pcre2_extuni.c
|
|
3rdparty/pcre/src/pcre2_find_bracket.c
|
|
3rdparty/pcre/src/pcre2_jit_compile.c
|
|
3rdparty/pcre/src/pcre2_maketables.c
|
|
3rdparty/pcre/src/pcre2_match.c
|
|
3rdparty/pcre/src/pcre2_match_data.c
|
|
3rdparty/pcre/src/pcre2_newline.c
|
|
3rdparty/pcre/src/pcre2_ord2utf.c
|
|
3rdparty/pcre/src/pcre2_pattern_info.c
|
|
3rdparty/pcre/src/pcre2_script_run.c
|
|
3rdparty/pcre/src/pcre2_serialize.c
|
|
3rdparty/pcre/src/pcre2_string_utils.c
|
|
3rdparty/pcre/src/pcre2_study.c
|
|
3rdparty/pcre/src/pcre2_substitute.c
|
|
3rdparty/pcre/src/pcre2_substring.c
|
|
3rdparty/pcre/src/pcre2_tables.c
|
|
3rdparty/pcre/src/pcre2_ucd.c
|
|
3rdparty/pcre/src/pcre2_valid_utf.c
|
|
3rdparty/pcre/src/pcre2_xclass.c
|
|
3rdparty/pcre/src/pcre2_chartables.c
|
|
)
|
|
set(REGEX_LIBRARIES wxregex)
|
|
set(REGEX_INCLUDE_DIRS ${wxSOURCE_DIR}/3rdparty/pcre/src/wx)
|
|
target_compile_definitions(wxregex PRIVATE __WX__ HAVE_CONFIG_H)
|
|
target_include_directories(wxregex PRIVATE ${wxSETUP_HEADER_PATH} ${wxSOURCE_DIR}/include ${REGEX_INCLUDE_DIRS})
|
|
elseif(wxUSE_REGEX)
|
|
find_package(PCRE2 REQUIRED)
|
|
set(REGEX_LIBRARIES ${PCRE2_LIBRARIES})
|
|
set(REGEX_INCLUDE_DIRS ${PCRE2_INCLUDE_DIRS})
|
|
endif()
|