On Mon, Mar 16 2020, Jeremie Courreges-Anglas <j...@wxcvbn.org> wrote:
[...] > I took a look some days/weeks ago, sadly I didn't note down > why the switch wasn't straightforward. Maybe I was just busy with > something else. Looks like a bunch of python files import __future__ so > this looks promising. I got curious about which problems could result from the current deps layout. So here's an attempt to switch all the llvm subpackages to python3. While here: - also byte-compile the .py files in the lldb subpackage. compileall.py tripped up over symbolication.py so process this file with 2to3 - drop gtest from PLIST and rdeps. To be committed seperately, but might as well ride this change. make update works fine with a py-llvm->py3-llvm quirks entry. import lldb, lldb.formatters, lldb.runtime, lldb.utils, clang and clang.cindex don't explode in flight, scan-view also works fine, hmaptool and git-clang-formatter *seem* to be happy. Feedback / oks welcome. Index: Makefile =================================================================== RCS file: /cvs/ports/devel/llvm/Makefile,v retrieving revision 1.245 diff -u -p -r1.245 Makefile --- Makefile 15 Mar 2020 19:33:32 -0000 1.245 +++ Makefile 18 Mar 2020 13:28:06 -0000 @@ -16,11 +16,11 @@ DISTNAME = llvm-${LLVM_V}.src PKGNAME = llvm-${LLVM_V} PKGSPEC-main = llvm-=${LLVM_V} PKGNAME-main = llvm-${LLVM_V} -PKGNAME-python = py-llvm-${LLVM_V} +PKGNAME-python = py3-llvm-${LLVM_V} PKGNAME-lldb = lldb-${LLVM_V} -REVISION-main = 8 -REVISION-python = 0 -REVISION-lldb = 1 +REVISION-main = 9 +REVISION-python = 1 +REVISION-lldb = 2 CATEGORIES = devel @@ -49,13 +49,13 @@ MULTI_PACKAGES = -main -python -lldb COMPILER = base-clang ports-gcc MODULES = devel/cmake \ lang/python +MODPY_VERSION = ${MODPY_DEFAULT_VERSION_3} TEST_DEPENDS = devel/dejagnu \ shells/bash BUILD_DEPENDS += devel/swig \ - textproc/py-sphinx \ - textproc/py-recommonmark -RUN_DEPENDS += devel/gtest + textproc/py-sphinx${MODPY_FLAVOR} \ + textproc/py-recommonmark${MODPY_FLAVOR} .include <bsd.port.arch.mk> @@ -79,7 +79,7 @@ WANTLIB-lldb += curses edit form panel # XXX linked against libLLVM-x.so, should be LIB_DEPENDS RUN_DEPENDS-lldb = ${BUILD_PKGPATH},-main RUN_DEPENDS-lldb += ${MODPY_RUN_DEPENDS} \ - devel/py-six + devel/py-six${MODPY_FLAVOR} LIB_DEPENDS-lldb = ${LIB_DEPENDS} CONFIGURE_STYLE = cmake @@ -127,6 +127,7 @@ post-extract: mv ${WRKDIR}/cfe-${LLVM_V}.src ${WRKSRC}/tools/clang mv ${WRKDIR}/lld-${LLVM_V}.src ${WRKSRC}/tools/lld mv ${WRKDIR}/lldb-${LLVM_V}.src ${WRKSRC}/tools/lldb + ${LOCALBASE}/bin/2to3 -w ${WRKSRC}/tools/lldb/examples/python/symbolication.py pre-configure: @${SUBST_CMD} ${WRKSRC}/tools/clang/lib/Driver/ToolChains/OpenBSD.cpp \ @@ -134,8 +135,10 @@ pre-configure: -@ln -s ${MODPY_BIN} ${WRKDIR}/bin/python post-build: - cd ${WRKSRC}/docs && make -f Makefile.sphinx man - cd ${WRKSRC}/tools/clang/docs && make -f Makefile.sphinx man + cd ${WRKSRC}/docs && \ + make -f Makefile.sphinx man SPHINXBUILD="sphinx-build${MODPY_BIN_SUFFIX}" + cd ${WRKSRC}/tools/clang/docs && \ + make -f Makefile.sphinx man SPHINXBUILD="sphinx-build${MODPY_BIN_SUFFIX}" post-install: ${INSTALL_DATA_DIR} \ @@ -143,7 +146,7 @@ post-install: ${INSTALL_DATA} ${WRKSRC}/tools/clang/bindings/python/clang/* \ ${PREFIX}/lib/python${MODPY_VERSION}/site-packages/clang ${MODPY_BIN} ${MODPY_LIBDIR}/compileall.py \ - ${PREFIX}/lib/python${MODPY_VERSION}/site-packages/clang + ${PREFIX}/lib/python${MODPY_VERSION}/site-packages/ ${INSTALL_DATA} ${WRKSRC}/docs/_build/man/* \ ${PREFIX}/man/man1 ${INSTALL_DATA} ${WRKSRC}/tools/clang/docs/_build/man/clang.1 \ Index: pkg/PLIST-lldb =================================================================== RCS file: /cvs/ports/devel/llvm/pkg/PLIST-lldb,v retrieving revision 1.4 diff -u -p -r1.4 PLIST-lldb --- pkg/PLIST-lldb 6 Mar 2020 14:39:57 -0000 1.4 +++ pkg/PLIST-lldb 18 Mar 2020 13:28:06 -0000 @@ -608,15 +608,29 @@ include/lldb/lldb-versioning.h @static-lib lib/liblldbUtilityHelpers.a lib/python${MODPY_VERSION}/site-packages/lldb/ lib/python${MODPY_VERSION}/site-packages/lldb/__init__.py +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/lldb/${MODPY_PYCACHE}/ +lib/python${MODPY_VERSION}/site-packages/lldb/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/${MODPY_PYCACHE}embedded_interpreter.${MODPY_PYC_MAGIC_TAG}pyc @so lib/python${MODPY_VERSION}/site-packages/lldb/_lldb.so lib/python${MODPY_VERSION}/site-packages/lldb/embedded_interpreter.py lib/python${MODPY_VERSION}/site-packages/lldb/formatters/ lib/python${MODPY_VERSION}/site-packages/lldb/formatters/Logger.py lib/python${MODPY_VERSION}/site-packages/lldb/formatters/__init__.py +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/lldb/formatters/${MODPY_PYCACHE}/ +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/${MODPY_PYCACHE}Logger.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/${MODPY_PYCACHE}attrib_fromdict.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/${MODPY_PYCACHE}cache.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/${MODPY_PYCACHE}metrics.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/${MODPY_PYCACHE}synth.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/lldb/formatters/attrib_fromdict.py lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cache.py lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cpp/ lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cpp/__init__.py +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cpp/${MODPY_PYCACHE}/ +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cpp/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cpp/${MODPY_PYCACHE}gnu_libstdcpp.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cpp/${MODPY_PYCACHE}libcxx.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cpp/gnu_libstdcpp.py lib/python${MODPY_VERSION}/site-packages/lldb/formatters/cpp/libcxx.py lib/python${MODPY_VERSION}/site-packages/lldb/formatters/metrics.py @@ -624,6 +638,11 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/lldb/lldb-argdumper lib/python${MODPY_VERSION}/site-packages/lldb/runtime/ lib/python${MODPY_VERSION}/site-packages/lldb/runtime/__init__.py +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/lldb/runtime/${MODPY_PYCACHE}/ +lib/python${MODPY_VERSION}/site-packages/lldb/runtime/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/lldb/utils/ lib/python${MODPY_VERSION}/site-packages/lldb/utils/__init__.py +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/lldb/utils/${MODPY_PYCACHE}/ +lib/python${MODPY_VERSION}/site-packages/lldb/utils/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/lldb/utils/${MODPY_PYCACHE}symbolication.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/lldb/utils/symbolication.py Index: pkg/PLIST-main =================================================================== RCS file: /cvs/ports/devel/llvm/pkg/PLIST-main,v retrieving revision 1.16 diff -u -p -r1.16 PLIST-main --- pkg/PLIST-main 6 Mar 2020 14:39:57 -0000 1.16 +++ pkg/PLIST-main 18 Mar 2020 13:28:06 -0000 @@ -2455,8 +2455,6 @@ lib/cmake/llvm/VersionFromVCS.cmake @static-lib lib/libclangStaticAnalyzerCore.a @static-lib lib/libclangStaticAnalyzerFrontend.a @static-lib lib/libclangTooling.a -@comment lib/libgtest.a -@comment lib/libgtest_main.a @static-lib lib/libclangToolingASTDiff.a @static-lib lib/libclangToolingCore.a @static-lib lib/libclangToolingInclusions.a Index: pkg/PLIST-python =================================================================== RCS file: /cvs/ports/devel/llvm/pkg/PLIST-python,v retrieving revision 1.5 diff -u -p -r1.5 PLIST-python --- pkg/PLIST-python 6 Mar 2020 14:39:57 -0000 1.5 +++ pkg/PLIST-python 18 Mar 2020 13:28:06 -0000 @@ -1,8 +1,9 @@ @comment $OpenBSD: PLIST-python,v 1.5 2020/03/06 14:39:57 jca Exp $ lib/python${MODPY_VERSION}/site-packages/clang/ lib/python${MODPY_VERSION}/site-packages/clang/__init__.py -lib/python${MODPY_VERSION}/site-packages/clang/__init__.pyc +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/clang/${MODPY_PYCACHE}/ +lib/python${MODPY_VERSION}/site-packages/clang/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/clang/${MODPY_PYCACHE}cindex.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/clang/${MODPY_PYCACHE}enumerations.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/clang/cindex.py -lib/python${MODPY_VERSION}/site-packages/clang/cindex.pyc lib/python${MODPY_VERSION}/site-packages/clang/enumerations.py -lib/python${MODPY_VERSION}/site-packages/clang/enumerations.pyc -- jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE