From 78f7de3ad57f411225843b062b5d0921d53f1241 Mon Sep 17 00:00:00 2001 From: Ben Boeckel <ben.boeckel@kitware.com> Date: Wed, 7 Nov 2018 10:35:01 -0500 Subject: [PATCH] FindSQLite3: backport from CMake 3.14 --- CMake/FindSQLite3.cmake | 22 ---------- CMake/patches/99/FindSQLite3.cmake | 66 ++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+), 22 deletions(-) delete mode 100644 CMake/FindSQLite3.cmake create mode 100644 CMake/patches/99/FindSQLite3.cmake diff --git a/CMake/FindSQLite3.cmake b/CMake/FindSQLite3.cmake deleted file mode 100644 index 7933ba7cc3a..00000000000 --- a/CMake/FindSQLite3.cmake +++ /dev/null @@ -1,22 +0,0 @@ -find_path(SQLite3_INCLUDE_DIR NAMES sqlite3.h) - -get_filename_component(POSSIBLE_SQLite_ROOT "${SQLite3_INCLUDE_DIR}" DIRECTORY) - -find_library(SQLite3_LIBRARY - NAMES sqlite3 - HINTS ${POSSIBLE_SQLite_ROOT}/lib - ${POSSIBLE_SQLite_ROOT}/lib64) - - -set(SQLite3_LIBRARIES ${SQLite3_LIBRARY}) - -add_library(sqlite3::sqlite3 UNKNOWN IMPORTED) -set_target_properties(sqlite3::sqlite3 - PROPERTIES - IMPORTED_LOCATION ${SQLite3_LIBRARY} - INTERFACE_INCLUDE_DIRECTORIES ${SQLite3_INCLUDE_DIR}) - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(SQLite3 DEFAULT_MSG SQLite3_LIBRARY SQLite3_INCLUDE_DIR) - -mark_as_advanced(SQLite3_INCLUDE_DIR SQLite3_LIBRARY) diff --git a/CMake/patches/99/FindSQLite3.cmake b/CMake/patches/99/FindSQLite3.cmake new file mode 100644 index 00000000000..c144ca1d8fb --- /dev/null +++ b/CMake/patches/99/FindSQLite3.cmake @@ -0,0 +1,66 @@ +# Distributed under the OSI-approved BSD 3-Clause License. See accompanying +# file Copyright.txt or https://cmake.org/licensing for details. + +#[=======================================================================[.rst: +FindSQLite3 +----------- + +Find the SQLite libraries, v3 + +IMPORTED targets +^^^^^^^^^^^^^^^^ + +This module defines the following :prop_tgt:`IMPORTED` target: + +``SQLite::SQLite3`` + +Result variables +^^^^^^^^^^^^^^^^ + +This module will set the following variables if found: + +``SQLite3_INCLUDE_DIRS`` + where to find sqlite3.h, etc. +``SQLite3_LIBRARIES`` + the libraries to link against to use SQLite3. +``SQLite3_VERSION`` + version of the SQLite3 library found +``SQLite3_FOUND`` + TRUE if found + +#]=======================================================================] + +# Look for the necessary header +find_path(SQLite3_INCLUDE_DIR NAMES sqlite3.h) +mark_as_advanced(SQLite3_INCLUDE_DIR) + +# Look for the necessary library +find_library(SQLite3_LIBRARY NAMES sqlite3 sqlite) +mark_as_advanced(SQLite3_LIBRARY) + +# Extract version information from the header file +if(SQLite3_INCLUDE_DIR) + file(STRINGS ${SQLite3_INCLUDE_DIR}/sqlite3.h _ver_line + REGEX "^#define SQLITE_VERSION *\"[0-9]+\\.[0-9]+\\.[0-9]+\"" + LIMIT_COUNT 1) + string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" + SQLite3_VERSION "${_ver_line}") + unset(_ver_line) +endif() + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(SQLite3 + REQUIRED_VARS SQLite3_INCLUDE_DIR SQLite3_LIBRARY + VERSION_VAR SQLite3_VERSION) + +# Create the imported target +if(SQLite3_FOUND) + set(SQLite3_INCLUDE_DIRS ${SQLite3_INCLUDE_DIR}) + set(SQLite3_LIBRARIES ${SQLite3_LIBRARY}) + if(NOT TARGET SQLite::SQLite3) + add_library(SQLite::SQLite3 UNKNOWN IMPORTED) + set_target_properties(SQLite::SQLite3 PROPERTIES + IMPORTED_LOCATION "${SQLite3_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${SQLite3_INCLUDE_DIR}") + endif() +endif() -- GitLab