CMake构建F2Py模块的辅助工具
项目描述
f2py-cmake
这为使用F2Py提供了辅助工具。使用
include(UseF2Py)
您必须事先找到Python解释器。这将定义一个 F2Py::F2Py
目标(以及匹配的 F2PY_EXECUTABLE
变量)。它还将提供以下辅助函数
f2py_object_library(<name> <type>)
f2py_generate_module(<module> <files>...
[F2PY_ARGS <args> ...]
[F77 | F90]
[NOLOWER]
[OUTPUT_DIR <OutputDir>]
[OUTPUT_VARIABLE <OutputVariable>]
)
示例
find_package(
Python
COMPONENTS Interpreter Development.Module NumPy
REQUIRED)
include(UseF2Py)
# Create the F2Py `numpyobject` library.
f2py_object_library(f2py_object OBJECT)
f2py_generate_module(fibby fib1.f OUTPUT_VARIABLE fibby_files)
python_add_library(fibby MODULE "${fibby_files}" WITH_SOABI)
target_link_library(fibby PRIVATE f2py_object)
scikit-build-core
要使用此包与scikit-build-core一起使用,您需要将其包含在构建需求中
[build-system]
requires = ["scikit-build-core", "numpy", "f2py-cmake"]
build-backend = "scikit_build_core.build"
供应商
您还可以将UseF2Py供应商集成到您的包中。这避免了在构建时需要依赖项,并保护您免受此包更改的影响,但代价是需要手动重新供应商以获取错误修复和/或改进。此机制也适用于您希望在scikit-build-core之外直接构建的情况。
您应该创建一个CMake辅助目录,例如cmake
。像这样将其添加到您的CMakeLists.txt
文件中:
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
然后,您可以将其文件供应商放入那个文件夹中。
pipx run f2py-cmake vendor cmake
致谢
本工作的支持由NSF资助计划OAC-2209877提供。本文中表达的意见、发现、结论或建议是作者的观点,不一定反映国家科学基金会的观点。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
f2py_cmake-0.1.2.tar.gz (17.6 kB 查看哈希值)
构建分发
f2py_cmake-0.1.2-py3-none-any.whl (15.1 kB 查看哈希值)
关闭
f2py_cmake-0.1.2.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3abeecf331b57142b1e1b8f7a9e1ccae6b78c522db1257ba044b7ede03e5e32f |
|
MD5 | 0ce034c41dbbf637e3c32630afae8409 |
|
BLAKE2b-256 | a16609f8709c59406c091935d28838744a19d4a972b67adbd0252db3abeb6be3 |
关闭
f2py_cmake-0.1.2-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6c33adfdac8e339e116420c1bc3810eaad286196fc1cb6298ef3666fe09537fc |
|
MD5 | 83bb8d70a301beb4f4d5573bbe4c95b3 |
|
BLAKE2b-256 | a9126514121ef3ae7cd4f3e99ce0fa738ec9e54d910c0513c060fe14d861e175 |