diff options
Diffstat (limited to 'math/py-topologic')
-rw-r--r-- | math/py-topologic/Makefile | 26 | ||||
-rw-r--r-- | math/py-topologic/distinfo | 6 | ||||
-rw-r--r-- | math/py-topologic/files/patch-CMakeLists.txt | 38 |
3 files changed, 57 insertions, 13 deletions
diff --git a/math/py-topologic/Makefile b/math/py-topologic/Makefile index b0d03f7b23ed..c0120d79b79b 100644 --- a/math/py-topologic/Makefile +++ b/math/py-topologic/Makefile @@ -1,7 +1,6 @@ PORTNAME= topologic DISTVERSIONPREFIX= v -DISTVERSION= 0.6.0 -PORTREVISION= 3 +DISTVERSION= 6.0.2 CATEGORIES= math PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} PKGNAMESUFFIX= -space-modeling-library @@ -13,8 +12,8 @@ WWW= https://topologic.app/ LICENSE= AGPLv3 LICENSE_FILE= ${WRKSRC}/../LICENSE -LIB_DEPENDS= libTopologicCore.so:math/topologic \ - libTKernel.so:cad/opencascade +BUILD_DEPENDS= pybind11>0:devel/pybind11 +LIB_DEPENDS= libTopologicCore.so:math/topologic USES= cmake compiler:c++17-lang localbase:ldflags python @@ -22,17 +21,24 @@ USE_GITHUB= yes GH_ACCOUNT= wassimj GH_PROJECT= Topologic -WRKSRC_SUBDIR= Python-Bindings +WRKSRC_SUBDIR= TopologicPythonBindings -CXXFLAGS+= -I${LOCALBASE}/include/OpenCASCADE +CXXFLAGS+= -I${LOCALBASE}/include/OpenCASCADE \ + -I${LOCALBASE}/include/TopologicCore +LDFLAGS+= -L${LOCALBASE}/lib/TopologicCore -PLIST_FILES= ${PYTHON_SITELIBDIR}/topologic${PYTHON_EXT_SUFFIX}.so +PLIST_FILES= ${PYTHON_SITELIBDIR}/topologic_core${PYTHON_EXT_SUFFIX}.so + +TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} do-install: # workaround for https://github.com/wassimj/Topologic/issues/34 ${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} - ${INSTALL_LIB} ${BUILD_WRKSRC}/topologic${PYTHON_EXT_SUFFIX}.so ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} + ${INSTALL_LIB} ${BUILD_WRKSRC}/topologic_core${PYTHON_EXT_SUFFIX}.so ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} -do-test: install - ${PYTHON_CMD} ${WRKSRC}/test/topologictest01.py +do-test: +.for tst in topologictest01 topologictest02 + ${ECHO} "====> Running test ${tst}" + ${SETENV} ${TEST_ENV} ${PYTHON_CMD} ${WRKSRC}/test/${tst}.py +.endfor .include <bsd.port.mk> diff --git a/math/py-topologic/distinfo b/math/py-topologic/distinfo index 3350d9e594fe..c332b42ebe53 100644 --- a/math/py-topologic/distinfo +++ b/math/py-topologic/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1650340528 -SHA256 (wassimj-Topologic-v0.6.0_GH0.tar.gz) = 48f7f96c9d1552aa8bc1cf3336c0713aa8c1db3e42842a982e4748756d4107c9 -SIZE (wassimj-Topologic-v0.6.0_GH0.tar.gz) = 3848281 +TIMESTAMP = 1714893793 +SHA256 (wassimj-Topologic-v6.0.2_GH0.tar.gz) = 5a56c4847879e43d82e28db4d7f113e68d0f19bd9532aefcebeb6df92441058f +SIZE (wassimj-Topologic-v6.0.2_GH0.tar.gz) = 274112 diff --git a/math/py-topologic/files/patch-CMakeLists.txt b/math/py-topologic/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..15cf231be73b --- /dev/null +++ b/math/py-topologic/files/patch-CMakeLists.txt @@ -0,0 +1,38 @@ +--- CMakeLists.txt.orig 2024-05-04 20:00:40 UTC ++++ CMakeLists.txt +@@ -4,9 +4,7 @@ set(PROJECT_NAMESPACE Topologic)
+ set(PROJECT_NAMESPACE Topologic)
+
+
+-# Import pybind11
+-set(PYBIND11_FINDPYTHON ON)
+-add_subdirectory(pybind11)
++find_Package(pybind11 REQUIRED)
+
+
+ # Source groups
+@@ -50,12 +48,14 @@ target_include_directories(${PROJECT_NAME} PRIVATE ${P + target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR}/include)
+
+ # Import TopologicCore from parent dir when not building from global project
++if (FALSE)
+ if(NOT TARGET ${PROJECT_NAMESPACE}::TopologicCore)
+ add_subdirectory(${PROJECT_SOURCE_DIR}/../TopologicCore ${PROJECT_BINARY_DIR}/TopologicCore)
+ endif()
++endif()
+
+ # Dependency: TopologicCore
+-target_link_libraries(${PROJECT_NAME} PRIVATE ${PROJECT_NAMESPACE}::TopologicCore)
++target_link_libraries(${PROJECT_NAME} PRIVATE TopologicCore)
+
+
+ # install definitions
+@@ -66,7 +66,7 @@ install(TARGETS ${PROJECT_NAME}
+
+ # set install rpaths to origin if TopologicCore is built as a shared lib
+ # in this case TopologicCore is expected to be copied into the TopologicPythonBindings install dir post-install
+-get_property(TopologicCore_TARGET_TYPE TARGET TopologicCore PROPERTY TYPE)
++set(TopologicCore_TARGET_TYPE SHARED_LIBRARY)
+ if (${TopologicCore_TARGET_TYPE} STREQUAL SHARED_LIBRARY)
+ if(NOT CMAKE_INSTALL_RPATH)
+ if(NOT APPLE)
|