| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- #
- #
- # Locate pcre2
- #
- # This module accepts the following environment variables:
- #
- # PCRE2_DIR or PCRE2_ROOT - Specify the location of PCRE2
- #
- # This module defines the following CMake variables:
- #
- # PCRE2_FOUND - True if libpcre2 is found
- # PCRE2_LIBRARY - A variable pointing to the PCRE2 library
- # PCRE2_INCLUDE_DIR - Where to find the headers
- #=============================================================================
- # Inspired by FindGDAL
- #
- # Distributed under the OSI-approved BSD License (the "License");
- # see accompanying file Copyright.txt for details.
- #
- # This software is distributed WITHOUT ANY WARRANTY; without even the
- # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- # See COPYING-CMAKE-SCRIPTS for more information.
- #=============================================================================
- # This makes the presumption that you are include pcre2.h like
- #
- #include "pcre2.h"
- if (DEFINED PCRE2_ROOT AND NOT PCRE2_ROOT)
- set (PCRE2_LIBRARY "" CACHE INTERNAL "")
- set (PCRE2_INCLUDE_DIR "" CACHE INTERNAL "")
- return ()
- endif (DEFINED PCRE2_ROOT AND NOT PCRE2_ROOT)
- if (UNIX AND NOT PCRE2_FOUND)
- # Use pcre2-config to obtain the library location and name, something like
- # -L/sw/lib -lpcre2-8)
- find_program (PCRE2_CONFIG pcre2-config
- HINTS
- ${PCRE2_DIR}
- ${PCRE2_ROOT}
- $ENV{PCRE2_DIR}
- $ENV{PCRE2_ROOT}
- PATH_SUFFIXES bin
- PATHS
- /sw # Fink
- /opt/local # DarwinPorts
- /opt/csw # Blastwave
- /opt
- /usr/local
- )
- if (PCRE2_CONFIG)
- execute_process (COMMAND ${PCRE2_CONFIG} --cflags
- ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE
- OUTPUT_VARIABLE PCRE2_CONFIG_CFLAGS)
- if (PCRE2_CONFIG_CFLAGS)
- string (REGEX MATCHALL "-I[^ ]+" _pcre2_dashI ${PCRE2_CONFIG_CFLAGS})
- string (REGEX REPLACE "-I" "" _pcre2_includepath "${_pcre2_dashI}")
- string (REGEX REPLACE "-I[^ ]+" "" _pcre2_cflags_other ${PCRE2_CONFIG_CFLAGS})
- endif (PCRE2_CONFIG_CFLAGS)
- execute_process (COMMAND ${PCRE2_CONFIG} --libs8
- ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE
- OUTPUT_VARIABLE PCRE2_CONFIG_LIBS)
- if (PCRE2_CONFIG_LIBS)
- string (REGEX MATCHALL "-l[^ ]+" _pcre2_dashl ${PCRE2_CONFIG_LIBS})
- string (REGEX REPLACE "-l" "" _pcre2_lib "${_pcre2_dashl}")
- string (REGEX MATCHALL "-L[^ ]+" _pcre2_dashL ${PCRE2_CONFIG_LIBS})
- string (REGEX REPLACE "-L" "" _pcre2_libpath "${_pcre2_dashL}")
- endif (PCRE2_CONFIG_LIBS)
- endif (PCRE2_CONFIG)
- endif (UNIX AND NOT PCRE2_FOUND)
- find_path (PCRE2_INCLUDE_DIR pcre2.h
- HINTS
- ${_pcre2_includepath}
- ${PCRE2_DIR}
- ${PCRE2_ROOT}
- $ENV{PCRE2_DIR}
- $ENV{PCRE2_ROOT}
- PATH_SUFFIXES
- include/pcre2
- include/PCRE2
- include
- PATHS
- ~/Library/Frameworks/pcre2.framework/Headers
- /Library/Frameworks/pcre2.framework/Headers
- /sw # Fink
- /opt/local # DarwinPorts
- /opt/csw # Blastwave
- /opt
- /usr/local
- )
- find_library (PCRE2_LIBRARY
- NAMES ${_pcre2_lib} pcre2-8 PCRE2
- HINTS
- ${PCRE2_DIR}
- ${PCRE2_ROOT}
- $ENV{PCRE2_DIR}
- $ENV{PCRE2_ROOT}
- ${_pcre2_libpath}
- PATH_SUFFIXES lib
- PATHS
- ~/Library/Frameworks/pcre2.framework
- /Library/Frameworks/pcre2.framework
- /sw
- /opt/local
- /opt/csw
- /opt
- /usr/local
- )
- include (FindPackageHandleStandardArgs)
- find_package_handle_standard_args (PCRE2 DEFAULT_MSG PCRE2_LIBRARY PCRE2_INCLUDE_DIR)
- set (PCRE2_LIBRARIES ${PCRE2_LIBRARY})
- set (PCRE2_INCLUDE_DIRS ${PCRE2_INCLUDE_DIR})
|