git: 8aafb5f26d63 - main - science/py-spglib: Build using PEP517 tools instead of cmake
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 12 Feb 2024 20:07:36 UTC
The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=8aafb5f26d638d8bfd4b14d4d83a5ce04f47e46f commit 8aafb5f26d638d8bfd4b14d4d83a5ce04f47e46f Author: Yuri Victorovich <yuri@FreeBSD.org> AuthorDate: 2024-02-12 08:08:37 +0000 Commit: Yuri Victorovich <yuri@FreeBSD.org> CommitDate: 2024-02-12 20:07:33 +0000 science/py-spglib: Build using PEP517 tools instead of cmake --- science/py-spglib/Makefile | 16 ++++------ science/py-spglib/files/patch-CMakeLists.txt | 42 -------------------------- science/py-spglib/files/patch-spglib_spglib.py | 31 ------------------- science/py-spglib/files/quick-test.py | 39 ------------------------ science/py-spglib/pkg-plist | 3 -- 5 files changed, 6 insertions(+), 125 deletions(-) diff --git a/science/py-spglib/Makefile b/science/py-spglib/Makefile index b9208a124902..044f6101b4ed 100644 --- a/science/py-spglib/Makefile +++ b/science/py-spglib/Makefile @@ -1,6 +1,7 @@ PORTNAME= spglib DISTVERSIONPREFIX= v DISTVERSION= 2.3.1 +PORTREVISION= 1 CATEGORIES= science python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,18 +13,17 @@ LICENSE= BSD3CLAUSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools_scm>0:devel/py-setuptools_scm@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}scikit-build-core>0:devel/py-scikit-build-core@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyproject-metadata>0:devel/py-pyproject-metadata@${PY_FLAVOR} \ + cmake:devel/cmake-core \ ${PYNUMPY} -LIB_DEPENDS= libsymspg.so:science/spglib RUN_DEPENDS= ${PYNUMPY} -USES= cmake python -USE_PYTHON= flavors pytest # tests fail to run, see https://github.com/spglib/spglib/issues/192 +USES= python +USE_PYTHON= pep517 autoplist pytest # tests fail to run, see https://github.com/spglib/spglib/issues/192 USE_GITHUB= yes CMAKE_ARGS= -DPython3_EXECUTABLE=${PYTHON_CMD} -WRKSRC_SUBDIR= python - MAKE_ENV= SETUPTOOLS_SCM_PRETEND_VERSION=${DISTVERSION} TEST_WRKSRC= ${WRKSRC} @@ -33,10 +33,6 @@ post-patch: ##@cd ${WRKSRC} && ${RLN} ../test . #@cd ${WRKSRC} && ${CP} -r ../test . # workaround for https://github.com/spglib/spglib/issues/429 - @${REINPLACE_CMD} -i '' -e 's|^from ._version import|#&|' ${WRKSRC}/spglib/__init__.py - # patch in the correct symspg lib - @${REINPLACE_CMD} -i '' \ - -e 's|, bundled_lib)|, "${LOCALBASE}/lib/libsymspg.so")|' \ - ${WRKSRC}/spglib/spglib.py + @${REINPLACE_CMD} -i '' -e 's|^from ._version import|#&|' ${WRKSRC}/python/spglib/__init__.py .include <bsd.port.mk> diff --git a/science/py-spglib/files/patch-CMakeLists.txt b/science/py-spglib/files/patch-CMakeLists.txt deleted file mode 100644 index 7c42c23d1d4b..000000000000 --- a/science/py-spglib/files/patch-CMakeLists.txt +++ /dev/null @@ -1,42 +0,0 @@ ---- CMakeLists.txt.orig 2024-02-11 01:27:19 UTC -+++ CMakeLists.txt -@@ -1,8 +1,13 @@ -+cmake_minimum_required(VERSION 3.15) -+ -+find_package(Spglib REQUIRED) -+find_package(Python3 COMPONENTS REQUIRED Interpreter Development.Module NumPy) -+ - Python3_add_library(Spglib_python MODULE WITH_SOABI _spglib.c) - set_target_properties(Spglib_python PROPERTIES - OUTPUT_NAME _spglib) - target_link_libraries(Spglib_python PRIVATE -- Spglib_symspg Python3::NumPy) -+ Spglib::symspg Python3::NumPy) - if (NOT Python_INSTALL_DIR) - if (SKBUILD) - # If built with scikit-build-core, let it handle the installation -@@ -12,16 +17,16 @@ endif () - set(Python_INSTALL_DIR ${Python3_SITEARCH}/spglib) - endif () - endif () --if (SPGLIB_INSTALL) -+if (TRUE) - # TODO: Cmake forces to install PUBLIC_HEADER when defined - # https://gitlab.kitware.com/cmake/cmake/-/issues/24326 -- install(TARGETS Spglib_symspg -- LIBRARY DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Runtime -- NAMELINK_COMPONENT Spglib_Development -- ARCHIVE DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Development -- PUBLIC_HEADER DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Development -- RUNTIME DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Runtime -- ) -+ #install(TARGETS Spglib_symspg -+ # LIBRARY DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Runtime -+ # NAMELINK_COMPONENT Spglib_Development -+ # ARCHIVE DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Development -+ # PUBLIC_HEADER DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Development -+ # RUNTIME DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Runtime -+ #) - install(TARGETS Spglib_python - LIBRARY DESTINATION ${Python_INSTALL_DIR} COMPONENT Spglib_Runtime - ) diff --git a/science/py-spglib/files/patch-spglib_spglib.py b/science/py-spglib/files/patch-spglib_spglib.py deleted file mode 100644 index bbe9f70d0a64..000000000000 --- a/science/py-spglib/files/patch-spglib_spglib.py +++ /dev/null @@ -1,31 +0,0 @@ ---- spglib/spglib.py.orig 2024-02-11 17:45:53 UTC -+++ spglib/spglib.py -@@ -46,17 +46,17 @@ except ImportError: - import re - from ctypes import cdll - -- bundled_lib = next( -- filter( -- lambda fl: re.match(".*symspg\\..*", fl), -- sorted(os.listdir(os.path.dirname(__file__))), -- ), -- None, -- ) -- if not bundled_lib: -- raise FileNotFoundError( -- "Spglib C library is not installed and no bundled version was detected" -- ) -+ #bundled_lib = next( -+ # filter( -+ # lambda fl: re.match(".*symspg\\..*", fl), -+ # sorted(os.listdir(os.path.dirname(__file__))), -+ # ), -+ # None, -+ #) -+ #if not bundled_lib: -+ # raise FileNotFoundError( -+ # "Spglib C library is not installed and no bundled version was detected" -+ # ) - cdll.LoadLibrary(os.path.join(os.path.dirname(__file__), bundled_lib)) - from spglib import _spglib as spg # type: ignore[attr-defined] - diff --git a/science/py-spglib/files/quick-test.py b/science/py-spglib/files/quick-test.py deleted file mode 100644 index c73b1e342b42..000000000000 --- a/science/py-spglib/files/quick-test.py +++ /dev/null @@ -1,39 +0,0 @@ -import numpy as np -import spglib - -lattice = np.array([[0.0, 0.5, 0.5], - [0.5, 0.0, 0.5], - [0.5, 0.5, 0.0]]) * 5.4 -positions = [[0.875, 0.875, 0.875], - [0.125, 0.125, 0.125]] -numbers= [1,] * 2 -cell = (lattice, positions, numbers) -print(spglib.get_spacegroup(cell, symprec=1e-5)) -mesh = [8, 8, 8] - -# -# Gamma centre mesh -# -mapping, grid = spglib.get_ir_reciprocal_mesh(mesh, cell, is_shift=[0, 0, 0]) - -# All k-points and mapping to ir-grid points -for i, (ir_gp_id, gp) in enumerate(zip(mapping, grid)): - print("%3d ->%3d %s" % (i, ir_gp_id, gp.astype(float) / mesh)) - -# Irreducible k-points -print("Number of ir-kpoints: %d" % len(np.unique(mapping))) -print(grid[np.unique(mapping)] / np.array(mesh, dtype=float)) - -# -# With shift -# -mapping, grid = spglib.get_ir_reciprocal_mesh(mesh, cell, is_shift=[1, 1, 1]) - -# All k-points and mapping to ir-grid points -for i, (ir_gp_id, gp) in enumerate(zip(mapping, grid)): - print("%3d ->%3d %s" % (i, ir_gp_id, (gp + [0.5, 0.5, 0.5]) / mesh)) - -# Irreducible k-points -print("Number of ir-kpoints: %d" % len(np.unique(mapping))) -print((grid[np.unique(mapping)] + [0.5, 0.5, 0.5]) / mesh) - diff --git a/science/py-spglib/pkg-plist b/science/py-spglib/pkg-plist deleted file mode 100644 index 55a2e8a2dc92..000000000000 --- a/science/py-spglib/pkg-plist +++ /dev/null @@ -1,3 +0,0 @@ -%%PYTHON_SITELIBDIR%%/spglib/__init__.py -%%PYTHON_SITELIBDIR%%/spglib/_spglib%%PYTHON_EXT_SUFFIX%%.so -%%PYTHON_SITELIBDIR%%/spglib/spglib.py