lysnikolaou commented on code in PR #43606:
URL: https://github.com/apache/arrow/pull/43606#discussion_r1711212606


##########
cpp/cmake_modules/UseCython.cmake:
##########
@@ -184,4 +184,24 @@ function(cython_add_module _name pyx_target_name 
generated_files)
   add_dependencies(${_name} ${pyx_target_name})
 endfunction()
 
+execute_process(COMMAND ${PYTHON_EXECUTABLE} -m cython --version
+                OUTPUT_VARIABLE CYTHON_version_output
+                ERROR_VARIABLE CYTHON_version_error
+                RESULT_VARIABLE CYTHON_version_result
+                OUTPUT_STRIP_TRAILING_WHITESPACE
+                ERROR_STRIP_TRAILING_WHITESPACE)
+if(NOT ${CYTHON_version_result} EQUAL 0)
+  set(_error_msg "Command \"${PYTHON_EXECUTABLE} -m cython --version\" failed 
with")
+  set(_error_msg "${_error_msg} output:\n${CYTHON_version_error}")
+  message(SEND_ERROR "${_error_msg}")
+else()
+  if("${CYTHON_version_output}" MATCHES "^[Cc]ython version ([^,]+)")
+    set(CYTHON_VERSION "${CMAKE_MATCH_1}")
+  else()
+    if("${CYTHON_version_error}" MATCHES "^[Cc]ython version ([^,]+)")
+      set(CYTHON_VERSION "${CMAKE_MATCH_1}")
+    endif()
+  endif()
+endif()

Review Comment:
   > Can we require Cython 3.1.0a0 or later for Python 3.13 and we always 
enable the flag with Python 3.13?
   
   We can do that. However, we'll still need CMake code to get the Python 
version, so there's still going to be some extra CMake stuff, which will 
probably be the same in terms of maintenance cost as the current version, right?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to