git: 15f823d4c101 - main - science/psi4: Correct installed file hierarchy; Alter the test target
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 26 Nov 2022 21:25:37 UTC
The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=15f823d4c1015cc69163a3e8ac486c41701cb012 commit 15f823d4c1015cc69163a3e8ac486c41701cb012 Author: Yuri Victorovich <yuri@FreeBSD.org> AuthorDate: 2022-11-26 21:09:18 +0000 Commit: Yuri Victorovich <yuri@FreeBSD.org> CommitDate: 2022-11-26 21:25:34 +0000 science/psi4: Correct installed file hierarchy; Alter the test target The testsuite fails due to various Python-related issues. Most tests succeed when run individually. --- science/psi4/Makefile | 27 +++++++++++++++++++-------- science/psi4/pkg-plist | 1 - 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/science/psi4/Makefile b/science/psi4/Makefile index a68a4f6e7fb9..be1a21263073 100644 --- a/science/psi4/Makefile +++ b/science/psi4/Makefile @@ -1,5 +1,6 @@ PORTNAME= psi4 DISTVERSION= 1.6.1.20221122 +PORTREVISION= 1 CATEGORIES= science # quantum-chemistry EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} @@ -21,6 +22,7 @@ LIB_DEPENDS= libgg.so:math/gau2grid \ libxc.so:science/libxc RUN_DEPENDS= ${PY_DEPENDS} \ libint2-psi4>0:science/libint2-psi4 +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR} USES= blaslapack:openblas cmake compiler:c++17-lang eigen:3 fortran localbase:ldflags python:3.8+ @@ -29,14 +31,18 @@ GH_TAGNAME= 0889d6d34 CMAKE_ARGS= -DLibxc_DIR=${LOCALBASE} \ -DFREEBSD_PYTHON_VER=${PYTHON_VER} \ - -DPython_EXECUTABLE=${PYTHON_CMD} + -DPython_EXECUTABLE=${PYTHON_CMD} \ + -DPYMOD_INSTALL_LIBDIR=${PYTHONPREFIX_SITELIBDIR:S|${PREFIX}/lib||} CONFIGURE_ENV= FREEBSD_PYTHON_VER=${PYTHON_VER} LDFLAGS+= -lexecinfo # for backtrace_symbols TEST_ENV= ${MAKE_ENV} \ PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}:${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/psi4/tests \ - PSIDATADIR=${STAGEDIR}${DATADIR} + PSIDATADIR=${STAGEDIR}${DATADIR} \ + PSIPATH=${STAGEDIR}${DATADIR}/basis + +BINARY_ALIAS= python=${PYTHON_CMD} # only for tests post-patch: # correct the default data dir @@ -58,17 +64,22 @@ do-install: # project fails to install itself into a stage directory due to a co ${FIND} ${STAGEDIR} -type d -empty -delete # set executable flag ${CHMOD} +x ${STAGEDIR}${PREFIX}/bin/psi4 - # move python module to a proper place - ${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} - ${MV} ${STAGEDIR}${PREFIX}/lib/psi4 ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} - ${RLN} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/psi4 ${STAGEDIR}${PREFIX}/lib/psi4 # for the path-calculating logic in psi4/__init__.py # correct version number @${REINPLACE_CMD} -i '' -e "s|__version__ = 'undefined'|__version__ = '${DISTVERSION}'|" \ ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/psi4/metadata.py @${REINPLACE_CMD} -i '' -e "s|__version_long = 'undefined+11'|__version_long = '${DISTVERSION}'|" \ ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/psi4/metadata.py -do-test: # based on https://psicode.org/psi4manual/master/build_planning.html#faq-minutetests - most tests fail due to path mismatches - @cd ${WRKSRC}/tests/isapt2 && ${SETENV} ${TEST_ENV} pytest +do-test: + # based on https://psicode.org/psi4manual/master/build_planning.html#faq-minutetests + #@cd ${WRKSRC}/tests/cc36 && ${SETENV} ${TEST_ENV} pytest # pytest-based tests fail, see https://github.com/psi4/psi4/issues/2802 + + # run samples as tests, this also fails down the line: https://github.com/psi4/psi4/issues/2803 + @cd ${WRKSRC} && ( \ + for f in $$(${FIND} samples/cc24 -name test.in | ${XARGS} dirname); do \ + echo "===> runing test in $$f"; \ + (cd $$f && ${SETENV} ${TEST_ENV} ${STAGEDIR}${PREFIX}/bin/psi4 test.in) \ + done \ + ) .include <bsd.port.mk> diff --git a/science/psi4/pkg-plist b/science/psi4/pkg-plist index adce8cae69e7..35658fe0a23e 100644 --- a/science/psi4/pkg-plist +++ b/science/psi4/pkg-plist @@ -145,7 +145,6 @@ include/psi4/psi4-dec.h include/psi4/psifiles.h include/psi4/pybind11.h include/psi4/times.h -lib/psi4 %%PYTHON_SITELIBDIR%%/psi4/__init__.py %%PYTHON_SITELIBDIR%%/psi4/core%%PYTHON_EXT_SUFFIX%%.so %%PYTHON_SITELIBDIR%%/psi4/driver/__init__.py