Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 2 additions & 28 deletions src/cython_cmake/cmake/UseCython.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#
# Cython_compile_pyx(<pyx_file1> [<pyx_file2> ...]
# [LANGUAGE C | CXX]
# [LANGUAGE_LEVEL 2 | 3 | 3str]
# [CYTHON_ARGS <args> ...]
# [OUTPUT_VARIABLE <OutputVariable>])
#
# Options:
Expand All @@ -19,15 +19,6 @@
# generated, unless the C language is not enabled for the project; in this
# case, a C++ file is generated by default.
#
# ``LANGUAGE_LEVEL [2 | 3 | 3str]``
# Force compilation using either Python-2, Python-3 or Python-3str syntax and
# code semantics.
# By default, Python-3str syntax and semantics are used if the major version
# of Python found is 3 and Cython >=3 is used. Otherwise, Python-2 syntax and
# semantics are used.
# Using the Python-3str syntax and semantics means there cython does not assume
# unicode is used by by default for string literals under Python 2
#
# ``CYTHON_ARGS <args>``
# Specify additional arguments for the cythonization process.
#
Expand Down Expand Up @@ -76,7 +67,7 @@

function(Cython_compile_pyx)
set(_options )
set(_one_value LANGUAGE_LEVEL LANGUAGE OUTPUT_VARIABLE)
set(_one_value LANGUAGE OUTPUT_VARIABLE)
set(_multi_value CYTHON_ARGS)

cmake_parse_arguments(_args
Expand Down Expand Up @@ -112,22 +103,6 @@ function(Cython_compile_pyx)
set(_language_arg ${_language_${_language}_arg})
set(_language_extension ${_language_${_language}_extension})

# Set language level
set(_language_level ${_args_LANGUAGE_LEVEL})
if(NOT _args_LANGUAGE_LEVEL)
set(_language_level "3str")
else()
if(NOT _language_level MATCHES "^(2|3|3str)$")
message(FATAL_ERROR "LANGUAGE_LEVEL must be one of 2, 3, or 3str")
endif()
endif()

set(_language_level_2_arg "-2")
set(_language_level_3_arg "-3")
set(_language_level_3str_arg "--3str")

set(_language_level_arg "${_language_level_${_language_level}_arg}")

# Generated depfile is expected to have the ".dep" extension and be located along
# side the generated source file.
set(_depfile ${generated_file}.dep)
Expand All @@ -153,7 +128,6 @@ function(Cython_compile_pyx)
COMMAND ${CYTHON_EXECUTABLE}
ARGS
${_language_arg}
${_language_level_arg}
${_args_CYTHON_ARGS}
${_depfile_arg}
${pyx_location}
Expand Down