parent
5e5a21aadd
commit
4c902d675b
@ -542,7 +542,7 @@ If the library type is not specified, ``MODULE`` is assumed.
|
||||
was introduced. Specifying only major version ``3`` is equivalent to ``3.2``.
|
||||
|
||||
When option ``WITH_SOABI`` is also specified, the module suffix will include
|
||||
the ``Python3_SOSABI`` value, if any.
|
||||
the ``Python_SOSABI`` value, if any.
|
||||
#]=======================================================================]
|
||||
|
||||
|
||||
|
@ -579,7 +579,7 @@ function (_PYTHON_GET_CONFIG_VAR _PYTHON_PGCV_VALUE NAME)
|
||||
endif()
|
||||
endif()
|
||||
elseif (NAME STREQUAL "SOSABI")
|
||||
execute_process (COMMAND ${_${_PYTHON_PREFIX}_INTERPRETER_LAUNCHER} "${_${_PYTHON_PREFIX}_EXECUTABLE}" -c "import sys\nimport re\nimport importlib\nsys.stdout.write(next(filter(lambda x: re.search('^\\.abi', x), importlib.machinery.EXTENSION_SUFFIXES)))"
|
||||
execute_process (COMMAND ${_${_PYTHON_PREFIX}_INTERPRETER_LAUNCHER} "${_${_PYTHON_PREFIX}_EXECUTABLE}" -c "import sys\nimport re\nimport importlib.machinery\nsys.stdout.write(next(filter(lambda x: re.search('^\\.abi', x), importlib.machinery.EXTENSION_SUFFIXES)))"
|
||||
RESULT_VARIABLE _result
|
||||
OUTPUT_VARIABLE _values
|
||||
ERROR_QUIET
|
||||
|
@ -1,4 +1,4 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
cmake_minimum_required(VERSION 3.7)
|
||||
|
||||
project(TestPython3SABIModule LANGUAGES C)
|
||||
|
||||
@ -35,12 +35,16 @@ if(NOT TARGET Python3::SABIModule)
|
||||
message(SEND_ERROR "Python3::SABIModule not found")
|
||||
endif()
|
||||
|
||||
if (Python3_VERSION VERSION_GREATER_EQUAL "3.2" AND NOT Python3_SOSABI)
|
||||
message(FATAL_ERROR "Python3_SOSABI unexpectedly not defined")
|
||||
endif()
|
||||
|
||||
Python3_add_library (spam3 MODULE USE_SABI 3 WITH_SOABI ../spam.c)
|
||||
target_compile_definitions (spam3 PRIVATE PYTHON3)
|
||||
|
||||
if (Python3_SOSABI)
|
||||
get_property (suffix TARGET spam3 PROPERTY SUFFIX)
|
||||
if (NOT suffix MATCHES "^.${Python3_SOSABI}")
|
||||
if (NOT suffix MATCHES "^\\.${Python3_SOSABI}")
|
||||
message(FATAL_ERROR "Module suffix do not include Python3_SOSABI")
|
||||
endif()
|
||||
endif()
|
||||
|
Loading…
Reference in New Issue
Block a user