|
|
@@ -558,18 +558,19 @@ function (_PYTHON_GET_VERSION)
|
|
|
if (_PGV_LIBRARY)
|
|
|
# retrieve version and abi from library name
|
|
|
if (_${_PYTHON_PREFIX}_LIBRARY_RELEASE)
|
|
|
+ get_filename_component (library_name "${_${_PYTHON_PREFIX}_LIBRARY_RELEASE}" NAME)
|
|
|
# extract version from library name
|
|
|
- if (_${_PYTHON_PREFIX}_LIBRARY_RELEASE MATCHES "python([23])([0-9]+)")
|
|
|
+ if (library_name MATCHES "python([23])([0-9]+)")
|
|
|
set (${_PGV_PREFIX}VERSION_MAJOR "${CMAKE_MATCH_1}" PARENT_SCOPE)
|
|
|
set (${_PGV_PREFIX}VERSION_MINOR "${CMAKE_MATCH_2}" PARENT_SCOPE)
|
|
|
set (${_PGV_PREFIX}VERSION "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}" PARENT_SCOPE)
|
|
|
set (${_PGV_PREFIX}ABI "" PARENT_SCOPE)
|
|
|
- elseif (_${_PYTHON_PREFIX}_LIBRARY_RELEASE MATCHES "python([23])\\.([0-9]+)([dmu]*)")
|
|
|
+ elseif (library_name MATCHES "python([23])\\.([0-9]+)([dmu]*)")
|
|
|
set (${_PGV_PREFIX}VERSION_MAJOR "${CMAKE_MATCH_1}" PARENT_SCOPE)
|
|
|
set (${_PGV_PREFIX}VERSION_MINOR "${CMAKE_MATCH_2}" PARENT_SCOPE)
|
|
|
set (${_PGV_PREFIX}VERSION "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}" PARENT_SCOPE)
|
|
|
set (${_PGV_PREFIX}ABI "${CMAKE_MATCH_3}" PARENT_SCOPE)
|
|
|
- elseif (_${_PYTHON_PREFIX}_LIBRARY_RELEASE MATCHES "pypy(3)?")
|
|
|
+ elseif (library_name MATCHES "pypy(3)?-c")
|
|
|
set (version "${CMAKE_MATCH_1}")
|
|
|
if (version EQUAL "3")
|
|
|
set (${_PGV_PREFIX}VERSION_MAJOR "3" PARENT_SCOPE)
|