File tree Expand file tree Collapse file tree 2 files changed +30
-5
lines changed
graalpython/com.oracle.graal.python.cext Expand file tree Collapse file tree 2 files changed +30
-5
lines changed Original file line number Diff line number Diff line change @@ -365,16 +365,39 @@ set(CTYPES_SRC
365365 "${SRC_DIR} /modules/_ctypes/callproc.c"
366366 "${SRC_DIR} /modules/_ctypes/cfield.c"
367367 "${SRC_DIR} /modules/_ctypes/ctypes.h"
368- "${SRC_DIR} /modules/_ctypes/malloc_closure.c"
369368 "${SRC_DIR} /modules/_ctypes/stgdict.c"
370369)
371370native_module("_ctypes" TRUE "${CTYPES_SRC} " )
372371target_include_directories ("_ctypes" PUBLIC "${SRC_DIR} /modules/_ctypes" )
373- find_library (FFI_LIBRARY NAMES ffi)
374- if (NOT FFI_LIBRARY)
375- message (FATAL_ERROR "libffi not found" )
376- endif ()
372+ find_library (FFI_LIBRARY
373+ NAMES "ffi.lib" "libffi.a"
374+ PATHS "${LIBFFI_DIST} "
375+ REQUIRED
376+ NO_DEFAULT_PATH
377+ NO_PACKAGE_ROOT_PATH
378+ NO_CMAKE_PATH
379+ NO_CMAKE_ENVIRONMENT_PATH
380+ NO_SYSTEM_ENVIRONMENT_PATH
381+ NO_CMAKE_SYSTEM_PATH
382+ NO_CMAKE_INSTALL_PREFIX
383+ )
384+ find_path (FFI_INCLUDE
385+ NAMES "ffi.h"
386+ PATHS "${LIBFFI_DIST} "
387+ PATH_SUFFIXES "include"
388+ REQUIRED
389+ NO_DEFAULT_PATH
390+ NO_PACKAGE_ROOT_PATH
391+ NO_CMAKE_PATH
392+ NO_CMAKE_ENVIRONMENT_PATH
393+ NO_SYSTEM_ENVIRONMENT_PATH
394+ NO_CMAKE_SYSTEM_PATH
395+ NO_CMAKE_INSTALL_PREFIX
396+ )
377397target_link_libraries ("_ctypes" PRIVATE ${FFI_LIBRARY} )
398+
399+ target_include_directories ("_ctypes" BEFORE PRIVATE ${FFI_INCLUDE} )
400+
378401if (WIN32 )
379402 target_compile_definitions ("_ctypes" PRIVATE
380403 MS_WIN32
Original file line number Diff line number Diff line change 703703 "TRUFFLE_NFI_H_INC" : "<path:com.oracle.truffle.nfi.native>/include" ,
704704 "GRAALPY_PARENT_DIR" : "<suite_parent:graalpython>" ,
705705 "GRAALPY_EXT" : "<graalpy_ext>" ,
706+ "LIBFFI_DIST" : "<output_root:truffle:LIBFFI_DIST>/<os>-<arch>/<multitarget_libc_selection>/"
706707 },
707708 "results" : [
708709 "bin/<lib:python-native>" ,
725726 "buildDependencies" : [
726727 "graalpy-pyconfig" ,
727728 "com.oracle.graal.python" ,
729+ "truffle:LIBFFI_DIST" ,
728730 ],
729731 },
730732
You can’t perform that action at this time.
0 commit comments