diff --git a/devel/nanobind/Makefile b/devel/nanobind/Makefile index 4156b6684695..7d67b3cc09e8 100644 --- a/devel/nanobind/Makefile +++ b/devel/nanobind/Makefile @@ -1,71 +1,71 @@ PORTNAME= nanobind DISTVERSIONPREFIX= v -DISTVERSION= 3.0.1 +DISTVERSION= 3.1.0 CATEGORIES= devel MAINTAINER= yuri@FreeBSD.org COMMENT= Tiny and efficient C++/Python bindings (C++ version) WWW= https://nanobind.readthedocs.io/en/latest/ \ https://github.com/wjakob/nanobind LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= robin-map>0:devel/robin-map RUN_DEPENDS= robin-map>0:devel/robin-map -TEST_DEPENDS= eigen>0:math/eigen3 \ - gmake:devel/gmake \ +TEST_DEPENDS= gmake:devel/gmake \ pytest:devel/py-pytest@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}jax>0:math/py-jax@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}numpy>0:math/py-numpy@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}scipy>0:science/py-scipy@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}typing-extensions>0:devel/py-typing-extensions@${PY_FLAVOR} # ${PYTHON_PKGNAMEPREFIX}tensorflow>0:science/py-tensorflow@${PY_FLAVORA} # tensorflow tests crash the python process -USES= cmake:testing localbase python:test +USES= cmake:testing eigen:3,run,test localbase python:test USE_GITHUB= yes GH_ACCOUNT= wjakob CMAKE_ARGS= -DNB_INSTALL_DATADIR=${PREFIX} CMAKE_ON= NB_CREATE_INSTALL_RULES CMAKE_OFF= NB_USE_SUBMODULE_DEPS \ NB_TEST_FREE_THREADED \ NB_TEST \ CMAKE_SKIP_INSTALL_RULES CMAKE_TESTING_ON= NB_TEST CMAKE_TESTING_TARGET= copy-tests CXXFLAGS+= -I${WRKSRC}/include \ -I${PYTHON_INCLUDEDIR} INSTALL_TARGET= install TEST_WRKSRC= ${BUILD_WRKSRC}/tests +TEST_ARGS= --disable-plugin-autoload \ + --ignore test_tensorflow.py # tensorflow tests crash: Fatal Python error: Segmentation fault, need to investigate NO_ARCH= yes post-install: # workaround for https://github.com/wjakob/nanobind/issues/1300 @${RM} \ ${STAGEDIR}${PREFIX}/cmake/darwin-ld-cpython.sym \ ${STAGEDIR}${PREFIX}/cmake/darwin-ld-pypy.sym \ ${STAGEDIR}${PREFIX}/cmake/darwin-python-path.py # correct path to the src directory in cmake file @${REINPLACE_CMD} -i '' -e 's|$${NB_DIR}/src/|${DATADIR}/src/|g' \ ${STAGEDIR}${PREFIX}/cmake/nanobind-config.cmake post-test: @cd ${TEST_WRKSRC} && \ - pytest . + ${SETENV} ${TEST_ENV} pytest ${TEST_ARGS} . -# tests as of 3.0.1: -# Results (46.19s): -# 610 passed -# 1 failed -# - test_inter_module.py:26 test02_reload_module -# 92 skipped +# tests as of 3.1.0: +# Results (39.15s): +# 628 passed +# 86 skipped +# 1 warning (pynvml FutureWarning from torch, imported by tensorflow) # cmake installs files into non-standard locations, see https://github.com/wjakob/nanobind/issues/810 # hostile upstream, do not create bug reports .include diff --git a/devel/nanobind/distinfo b/devel/nanobind/distinfo index 55ac7d5a6a65..79d40a9d0ef4 100644 --- a/devel/nanobind/distinfo +++ b/devel/nanobind/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1789104380 -SHA256 (wjakob-nanobind-v3.0.1_GH0.tar.gz) = 34ded7cf2292f08a92c45490a095e76334a57751bbae03a8c83241803bf19623 -SIZE (wjakob-nanobind-v3.0.1_GH0.tar.gz) = 1080674 +TIMESTAMP = 1790105156 +SHA256 (wjakob-nanobind-v3.1.0_GH0.tar.gz) = 39659890a112e84e7263e4a263c71dd2621f866f7a4386ce95ef410e6c0e5c2f +SIZE (wjakob-nanobind-v3.1.0_GH0.tar.gz) = 1083479 diff --git a/devel/nanobind/files/patch-CMakeLists.txt b/devel/nanobind/files/patch-CMakeLists.txt index b9786ba5751e..62415fe80672 100644 --- a/devel/nanobind/files/patch-CMakeLists.txt +++ b/devel/nanobind/files/patch-CMakeLists.txt @@ -1,14 +1,14 @@ ---- CMakeLists.txt.orig 2024-12-05 23:06:19 UTC +--- CMakeLists.txt.orig 2026-09-18 15:58:10 UTC +++ CMakeLists.txt -@@ -73,9 +73,9 @@ if(NB_CREATE_INSTALL_RULES AND NOT CMAKE_SKIP_INSTALL_ +@@ -70,9 +70,9 @@ if(NB_CREATE_INSTALL_RULES AND NOT CMAKE_SKIP_INSTALL_ # Normally these would be configurable by the user, but we can't allow that # because the lookup paths are hard-coded in 'cmake/nanobind-config.cmake' set(NB_INSTALL_INC_DIR "${NB_INSTALL_DATADIR}/include") - set(NB_INSTALL_SRC_DIR "${NB_INSTALL_DATADIR}/src") + set(NB_INSTALL_SRC_DIR "${NB_INSTALL_DATADIR}/share/nanobind/src") set(NB_INSTALL_EXT_DIR "${NB_INSTALL_DATADIR}/ext") - set(NB_INSTALL_MODULE_DIR "${NB_INSTALL_DATADIR}") + set(NB_INSTALL_MODULE_DIR "${NB_INSTALL_DATADIR}/share/nanobind") set(NB_INSTALL_CMAKE_DIR "${NB_INSTALL_DATADIR}/cmake") install( diff --git a/devel/nanobind/files/patch-cmake_nanobind-config.cmake b/devel/nanobind/files/patch-cmake_nanobind-config.cmake index 2b1d48319810..70c6e1e249d3 100644 --- a/devel/nanobind/files/patch-cmake_nanobind-config.cmake +++ b/devel/nanobind/files/patch-cmake_nanobind-config.cmake @@ -1,20 +1,20 @@ -- remove -mtls-dialect=gnu2 since it breaks generated binaries -- and they can't be loaded with unknown relocation entry types ---- cmake/nanobind-config.cmake.orig 2026-09-11 05:35:01 UTC +--- cmake/nanobind-config.cmake.orig 2026-09-18 15:58:10 UTC +++ cmake/nanobind-config.cmake -@@ -108,10 +108,10 @@ set(NB_OPT_SIZE $,$,$