From 05080690006ffaac3ae42518c240b05445dea57b Mon Sep 17 00:00:00 2001 From: Erik Jensen Date: Fri, 31 May 2024 13:06:45 +0100 Subject: devel/root: Unbreak aarch64 and plist fixes - Unbreak aarch64 (tested on 15, 140, 133) - Fix plist related to python version used PR: 278110 --- devel/root/Makefile | 13 +++++++---- ...cling_lib_Interpreter_Interpreter.cpp.15aarch64 | 20 ++++++++++++++++ ...ter-cling-include-cling-std__fbsd14.0.modulemap | 2 +- ...ter-cling-include-cling-std__fbsd15.0.modulemap | 2 +- devel/root/pkg-plist | 27 +++++++++++----------- 5 files changed, 43 insertions(+), 21 deletions(-) create mode 100644 devel/root/files/extra-patch-interpreter_cling_lib_Interpreter_Interpreter.cpp.15aarch64 diff --git a/devel/root/Makefile b/devel/root/Makefile index e1782e634e92..1487e057a0a8 100644 --- a/devel/root/Makefile +++ b/devel/root/Makefile @@ -1,5 +1,6 @@ PORTNAME= root DISTVERSION= 6.30.06 +PORTREVISION= 1 CATEGORIES= devel science math parallel python MASTER_SITES= https://root.cern/download/ DISTFILES= ${PORTNAME}_v${DISTVERSION}.source${EXTRACT_SUFX} @@ -56,7 +57,7 @@ python_OLD_CMD+= "/usr/bin/env @python@" # Flags and environment variables for building CMAKE_ARGS= -DCMAKE_CXX_STANDARD=17 CMAKE_ON= gnuinstall soversion mathmore -CMAKE_OFF= builtin_gtest clad +CMAKE_OFF= builtin_davix builtin_gtest clad davix CONFIGURE_WRKSRC?= ${WRKDIR}/.build MAKE_ENV+= ROOTSYS=${CONFIGURE_WRKSRC} @@ -107,7 +108,8 @@ X11_CMAKE_BOOL= x11 .include -PLIST_SUB+= SHLIB_SHVER="${DISTVERSION:R}" \ +PLIST_SUB+= PYVER="${PYTHON_VER:S/./_/}" \ + SHLIB_SHVER="${DISTVERSION:R}" \ SHLIB_VER="${DISTVERSION}" # Some .modulemap, .pcm and .idx files are not installed on aarch64, a few .pcm files are exclusive to aarch64 and files LIBRARY.pcm are renamed libLIBRARY_rdict.pcm on aarch64 @@ -117,6 +119,9 @@ PLIST_SUB+= NOT_INSTALLED_ON_AARCH64="@comment " ONLY_INSTALLED_ON_AARCH64="" AA PLIST_SUB+= NOT_INSTALLED_ON_AARCH64="" ONLY_INSTALLED_ON_AARCH64="@comment " AARCH64_PCM_PREFIX="" AARCH64_PCM_SUFFIX="" .endif +.if ${OPSYS} == FreeBSD && ${ARCH} == "aarch64" && ${OSVERSION} > 1499999 +EXTRA_PATCHES= ${PATCHDIR}/extra-patch-interpreter_cling_lib_Interpreter_Interpreter.cpp.15aarch64 +.endif # std_config.pcm exclusive to FreeBSD 14 .if ${OPSYS} == FreeBSD && (1400000 <= ${OSVERSION} && ${OSVERSION} < 1500000) PLIST_SUB+= ONLY_INSTALLED_ON_FBSD14="" @@ -134,8 +139,6 @@ post-patch: # The following two files should not be staged. This happens even when PYROOT option is OFF. post-install: - ${RM} ${STAGEDIR}${PREFIX}/lib/root/__pycache__/cmdLineUtils.cpython-39.pyc - ${RM} ${STAGEDIR}${PREFIX}/lib/root/__pycache__/cmdLineUtils.cpython-39.opt-1.pyc - ${RMDIR} ${STAGEDIR}${PREFIX}/lib/root/__pycache__ + ${RM} -r ${STAGEDIR}${PREFIX}/lib/root/__pycache__ .include diff --git a/devel/root/files/extra-patch-interpreter_cling_lib_Interpreter_Interpreter.cpp.15aarch64 b/devel/root/files/extra-patch-interpreter_cling_lib_Interpreter_Interpreter.cpp.15aarch64 new file mode 100644 index 000000000000..7bb8ce171b3d --- /dev/null +++ b/devel/root/files/extra-patch-interpreter_cling_lib_Interpreter_Interpreter.cpp.15aarch64 @@ -0,0 +1,20 @@ +--- interpreter/cling/lib/Interpreter/Interpreter.cpp.orig 2024-05-19 10:35:56 UTC ++++ interpreter/cling/lib/Interpreter/Interpreter.cpp +@@ -492,7 +492,7 @@ namespace cling { + Strm << "#define __dso_handle ((void*)" << ThisP << ")\n"; + + // C atexit, std::atexit +- Strm << Linkage << " int atexit(void(*f)()) " << Attr; ++ Strm << Linkage << " int atexit(void(*f)()) throw () " << Attr; + if (EmitDefinitions) + Strm << " { return __cxa_atexit((void(*)(void*))f, 0, __dso_handle); }\n"; + else +@@ -501,7 +501,7 @@ namespace cling { + + // C++ 11 at_quick_exit, std::at_quick_exit + if (LangOpts.CPlusPlus && LangOpts.CPlusPlus11) { +- Strm << LinkageCxx << " int at_quick_exit(void(*f)()) " << Attr; ++ Strm << LinkageCxx << " int at_quick_exit(void(*f)()) throw () " << Attr; + if (EmitDefinitions) + Strm + << " { return __cxa_atexit((void(*)(void*))f, 0, __dso_handle); }\n"; diff --git a/devel/root/files/interpreter-cling-include-cling-std__fbsd14.0.modulemap b/devel/root/files/interpreter-cling-include-cling-std__fbsd14.0.modulemap index bfe10929e70f..c8510f954f0e 100644 --- a/devel/root/files/interpreter-cling-include-cling-std__fbsd14.0.modulemap +++ b/devel/root/files/interpreter-cling-include-cling-std__fbsd14.0.modulemap @@ -1,5 +1,5 @@ // FreeBSD port maintainer note: -// Taken from +// Taken from // https://github.com/freebsd/freebsd-src/blob/release/14.0.0/lib/libc%2B%2B/module.modulemap // on 2024-05-15. diff --git a/devel/root/files/interpreter-cling-include-cling-std__fbsd15.0.modulemap b/devel/root/files/interpreter-cling-include-cling-std__fbsd15.0.modulemap index a92ccd7a589a..813b04a5b7c2 100644 --- a/devel/root/files/interpreter-cling-include-cling-std__fbsd15.0.modulemap +++ b/devel/root/files/interpreter-cling-include-cling-std__fbsd15.0.modulemap @@ -1,5 +1,5 @@ // FreeBSD port maintainer note: -// Taken from +// Taken from // https://github.com/freebsd/freebsd-src/blob/main/lib/libc%2B%2B/module.modulemap // on 2024-05-15. // Outer "module std [system] { }" block has been added. diff --git a/devel/root/pkg-plist b/devel/root/pkg-plist index 69c367b8bb56..629594d73243 100644 --- a/devel/root/pkg-plist +++ b/devel/root/pkg-plist @@ -3793,9 +3793,9 @@ lib/root/libHtml.so.%%SHLIB_VER%% lib/root/libImt.so lib/root/libImt.so.%%SHLIB_SHVER%% lib/root/libImt.so.%%SHLIB_VER%% -%%PYROOT%%lib/root/libJupyROOT3_9.so -%%PYROOT%%lib/root/libJupyROOT3_9.so.%%SHLIB_SHVER%% -%%PYROOT%%lib/root/libJupyROOT3_9.so.%%SHLIB_VER%% +%%PYROOT%%lib/root/libJupyROOT%%PYVER%%.so +%%PYROOT%%lib/root/libJupyROOT%%PYVER%%.so.%%SHLIB_SHVER%% +%%PYROOT%%lib/root/libJupyROOT%%PYVER%%.so.%%SHLIB_VER%% %%ONLY_INSTALLED_ON_AARCH64%%lib/root/libMLP.rootmap lib/root/libMLP.so lib/root/libMLP.so.%%SHLIB_SHVER%% @@ -3828,7 +3828,6 @@ lib/root/libMultiProc.so.%%SHLIB_VER%% lib/root/libNet.so lib/root/libNet.so.%%SHLIB_SHVER%% lib/root/libNet.so.%%SHLIB_VER%% -%%ONLY_INSTALLED_ON_AARCH64%%lib/root/libNetx.rootmap %%ONLY_INSTALLED_ON_AARCH64%%lib/root/libNetxNG.rootmap lib/root/libNetxNG.so lib/root/libNetxNG.so.%%SHLIB_SHVER%% @@ -3990,9 +3989,9 @@ lib/root/libROOTDataFrame.so.%%SHLIB_VER%% %%ROOT7%%lib/root/libROOTObjectDraw7Provider.so %%ROOT7%%lib/root/libROOTObjectDraw7Provider.so.%%SHLIB_SHVER%% %%ROOT7%%lib/root/libROOTObjectDraw7Provider.so.%%SHLIB_VER%% -%%PYROOT%%lib/root/libROOTPythonizations3_9.so -%%PYROOT%%lib/root/libROOTPythonizations3_9.so.%%SHLIB_SHVER%% -%%PYROOT%%lib/root/libROOTPythonizations3_9.so.%%SHLIB_VER%% +%%PYROOT%%lib/root/libROOTPythonizations%%PYVER%%.so +%%PYROOT%%lib/root/libROOTPythonizations%%PYVER%%.so.%%SHLIB_SHVER%% +%%PYROOT%%lib/root/libROOTPythonizations%%PYVER%%.so.%%SHLIB_VER%% %%ONLY_INSTALLED_ON_AARCH64%%lib/root/libROOTTMVASofie.rootmap lib/root/libROOTTMVASofie.so lib/root/libROOTTMVASofie.so.%%SHLIB_SHVER%% @@ -4142,12 +4141,12 @@ lib/root/libcomplexDict.rootmap lib/root/libcomplexDict.so lib/root/libcomplexDict.so.%%SHLIB_SHVER%% lib/root/libcomplexDict.so.%%SHLIB_VER%% -%%PYROOT%%lib/root/libcppyy3_9.so -%%PYROOT%%lib/root/libcppyy3_9.so.%%SHLIB_SHVER%% -%%PYROOT%%lib/root/libcppyy3_9.so.%%SHLIB_VER%% -%%PYROOT%%lib/root/libcppyy_backend3_9.so -%%PYROOT%%lib/root/libcppyy_backend3_9.so.%%SHLIB_SHVER%% -%%PYROOT%%lib/root/libcppyy_backend3_9.so.%%SHLIB_VER%% +%%PYROOT%%lib/root/libcppyy%%PYVER%%.so +%%PYROOT%%lib/root/libcppyy%%PYVER%%.so.%%SHLIB_SHVER%% +%%PYROOT%%lib/root/libcppyy%%PYVER%%.so.%%SHLIB_VER%% +%%PYROOT%%lib/root/libcppyy_backend%%PYVER%%.so +%%PYROOT%%lib/root/libcppyy_backend%%PYVER%%.so.%%SHLIB_SHVER%% +%%PYROOT%%lib/root/libcppyy_backend%%PYVER%%.so.%%SHLIB_VER%% lib/root/libdequeDict.rootmap lib/root/libdequeDict.so lib/root/libdequeDict.so.%%SHLIB_SHVER%% @@ -4210,7 +4209,7 @@ lib/root/libvectorDict.so.%%SHLIB_SHVER%% lib/root/libvectorDict.so.%%SHLIB_VER%% %%NOT_INSTALLED_ON_AARCH64%%lib/root/modules.idx %%NOT_INSTALLED_ON_AARCH64%%lib/root/std.pcm -%%ONLY_INSTALLED_ON_FBSD14%%lib/root/std_config.pcm +%%ONLY_INSTALLED_ON_FBSD14%%%%NOT_INSTALLED_ON_AARCH64%%lib/root/std_config.pcm %%PORTDOCS%%%%DOCSDIR%%/CREDITS %%PORTDOCS%%%%DOCSDIR%%/DEVELOPMENT.md %%PORTDOCS%%%%DOCSDIR%%/INSTALL -- cgit v1.2.3