aboutsummaryrefslogtreecommitdiff
path: root/find-modules/FindPythonModuleGeneration.cmake
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2017-01-13 18:25:40 +0000
committerStephen Kelly <steveire@gmail.com>2017-01-13 18:52:50 +0000
commit115ab483d8dc368324136512a5f093f1d5bfdce3 (patch)
treecf137085cfecb7a8c813dd85d3950830d38683b6 /find-modules/FindPythonModuleGeneration.cmake
parent4332f9eea11b5911f0b03c90df310a48e22114a5 (diff)
downloadextra-cmake-modules-115ab483d8dc368324136512a5f093f1d5bfdce3.tar.gz
extra-cmake-modules-115ab483d8dc368324136512a5f093f1d5bfdce3.tar.bz2
Bindings: Try to find libclang4 before trying to find libclang3
The LLVM project has picked a new version scheme http://blog.llvm.org/2016/12/llvms-new-versioning-scheme.html which means that major version numbers will be bumped more regularly, the minor version will remain at zero, and the patch version will be bumped. We will have to see how distros respond in terms of file naming.
Diffstat (limited to 'find-modules/FindPythonModuleGeneration.cmake')
-rw-r--r--find-modules/FindPythonModuleGeneration.cmake25
1 files changed, 16 insertions, 9 deletions
diff --git a/find-modules/FindPythonModuleGeneration.cmake b/find-modules/FindPythonModuleGeneration.cmake
index 88f553dd..30fb5125 100644
--- a/find-modules/FindPythonModuleGeneration.cmake
+++ b/find-modules/FindPythonModuleGeneration.cmake
@@ -179,21 +179,28 @@ if (NOT GPB_PYTHON2_COMMAND)
endif()
if (NOT libclang_LIBRARY)
- set(_LIBCLANG3_MAX_VERSION 16)
- set(_LIBCLANG3_MIN_VERSION 8)
+ set(_LIBCLANG_MAX_MAJOR_VERSION 7)
+ set(_LIBCLANG_MIN_MAJOR_VERSION 4)
- find_library(libclang_LIBRARY clang-3.${_LIBCLANG3_MAX_VERSION})
+ find_library(libclang_LIBRARY clang-${_LIBCLANG_MAX_MAJOR_VERSION}.0)
if (libclang_LIBRARY)
- message(FATAL_ERROR "The max libclang-3 version in ${CMAKE_FIND_PACKAGE_NAME} must be updated.")
+ message(FATAL_ERROR "The max libclang version in ${CMAKE_FIND_PACKAGE_NAME} must be updated.")
endif()
- set(_LIBCLANG3_FIND_VERSION ${_LIBCLANG3_MAX_VERSION})
- while(NOT libclang_LIBRARY AND NOT _LIBCLANG3_FIND_VERSION EQUAL _LIBCLANG3_MIN_VERSION)
- math(EXPR _LIBCLANG3_FIND_VERSION "${_LIBCLANG3_FIND_VERSION} - 1")
- set(_GPB_CLANG_SUFFIX 3.${_LIBCLANG3_FIND_VERSION})
- find_library(libclang_LIBRARY clang-3.${_LIBCLANG3_FIND_VERSION})
+ set(_LIBCLANG_FIND_VERSION ${_LIBCLANG_MAX_MAJOR_VERSION})
+ while(NOT libclang_LIBRARY AND NOT _LIBCLANG_FIND_VERSION EQUAL _LIBCLANG_MIN_MAJOR_VERSION)
+ math(EXPR _LIBCLANG_FIND_VERSION "${_LIBCLANG_FIND_VERSION} - 1")
+ set(_GPB_CLANG_SUFFIX ${_LIBCLANG_FIND_VERSION}.0)
+ find_library(libclang_LIBRARY clang-${_LIBCLANG_FIND_VERSION}.0)
endwhile()
+
+ if (NOT libclang_LIBRARY)
+ find_library(libclang_LIBRARY clang-3.9)
+ if (NOT libclang_LIBRARY)
+ find_library(libclang_LIBRARY clang-3.8)
+ endif()
+ endif()
else()
string(REGEX MATCH ".*clang-([0-9]+\\.[0-9]+).*" _GPB_CLANG_SUFFIX ${libclang_LIBRARY})
set(_GPB_CLANG_SUFFIX ${CMAKE_MATCH_1})