Skip to content

Conversation

@henryiii
Copy link
Contributor

@henryiii henryiii commented Nov 2, 2022

  • minuit2 6.26.10
  • root 6.26.10

(Both need to be bumped at the same time)

  • Have you followed the guidelines for contributing?
  • Have you ensured that your commits follow the commit style guide?
  • Have you checked that there aren't other open pull requests for the same formula update/change?
  • Have you built your formula locally with brew install --build-from-source <formula>, where <formula> is the name of the formula you're submitting?
  • Is your test running fine brew test <formula>, where <formula> is the name of the formula you're submitting?
  • Does your build pass brew audit --strict <formula> (after doing brew install --build-from-source <formula>)? If this is a new formula, does it pass brew audit --new <formula>?

I got reports of ACLiC being broken on a "recent" macOS, and tried it on macOS 13, and it seems this is broken (actually more than just ACLiC might be, I get messages about missing libraries). I added a test recommended by the ROOT team, as well as a check for ACLiC. I can't test this locally because it fails building for me on MacOS 13. Hopefully this is a good step forward for non-13 macOS.

@henryiii henryiii force-pushed the henryiii/chore/root6.26.08 branch from b8077f0 to e4aa586 Compare November 3, 2022 01:56
@cho-m cho-m added the long build Set a long timeout for formula testing label Nov 3, 2022
@henryiii
Copy link
Contributor Author

henryiii commented Nov 3, 2022

Looks like libncurses is gone in macOS 13? I even had a report of it being missing from the latest macOS 12. The comment in the ncurses formula is no longer correct for macOS > X, where X is 13 or maybe less. Anyway, we can fix the XRootD issue by just using the existing formatula and not rebuilding XRootD. :)

No, wait a minute, we do use it, why is it building it again?

@henryiii henryiii force-pushed the henryiii/chore/root6.26.08 branch from e4aa586 to e0c2db6 Compare November 3, 2022 15:49
@henryiii
Copy link
Contributor Author

henryiii commented Nov 4, 2022

FYI, the recommendation is to set all built-ins to off (except LLVM & Clang). This is what the conda-forge package uses:

      -Dbuiltin_afterimage=OFF
      -Dbuiltin_cfitsio=OFF
      -Dbuiltin_davix=OFF
      -Dbuiltin_fftw3=OFF
      -Dbuiltin_freetype=OFF
      -Dbuiltin_ftgl=OFF
      -Dbuiltin_gl2ps=OFF
      -Dbuiltin_glew=OFF
      -Dbuiltin_gsl=OFF
      -Dbuiltin_lz4=OFF
      -Dbuiltin_lzma=OFF
      -Dbuiltin_nlohmannjson=OFF
      -Dbuiltin_openssl=OFF
      
      -Dbuiltin_openui5=ON
      -Dbuiltin_pcre=OFF
      -Dbuiltin_tbb=OFF
      -Dbuiltin_unuran=OFF
      -Dbuiltin_vc=OFF
      -Dbuiltin_vdt=OFF
      -Dbuiltin_xrootd=OFF
      -Dbuiltin_xxhash=OFF
      -Dbuiltin_zlib=OFF
      -Dbuiltin_zstd=OFF

      -Dbuiltin_llvm=ON
      -Dbuiltin_clang=ON

I can't test locally yet due to the macOS 13 issue I'm having, so not adding those in CI just yet.

@henryiii
Copy link
Contributor Author

henryiii commented Nov 4, 2022

Ah, I can test the configuration step at least. Don't trigger a run yet, I'm going to try to work on the config.

@henryiii henryiii force-pushed the henryiii/chore/root6.26.08 branch from c018528 to 9d0cb22 Compare November 4, 2022 19:46
@Bo98
Copy link
Member

Bo98 commented Nov 4, 2022

Looks like libncurses is gone in macOS 13?

Should be still there. The headers certainly are still in the SDK.

@henryiii henryiii force-pushed the henryiii/chore/root6.26.08 branch 2 times, most recently from ff79a4b to d16f4a5 Compare November 4, 2022 20:04
@henryiii
Copy link
Contributor Author

henryiii commented Nov 4, 2022

Trying a local build, but the updated formula doesn't auto-download things that are missing, and fixed the issue with it not finding xrootd. The reported list of features at the end is the same (minus some "builtin" reports). Based loosely on setup https://gitweb.gentoo.org/repo/gentoo.git/tree/sci-physics/root/root-6.26.08.ebuild#n167 and conda-forge.

Should be still there. The headers certainly are still in the SDK.

I don't see it in /usr/lib, though?

@Bo98
Copy link
Member

Bo98 commented Nov 4, 2022

Ah I see your problem: https://github.com/root-project/root/blob/25e425ff1186e9c9287d26467b66dce3b4cbf108/core/metacling/src/TCling.cxx#L3255-L3278

These paths changed in Ventura to /System/Volumes/Preboot/Cryptexes/OS/System/Library/dyld/dyld_shared_cache_arm64e or something.

If possible, I recommend not reading those internal files. The official way to do it is the _dyld_shared_cache_contains_path function.

I don't see it in /usr/lib, though?

System libraries haven't been there since Big Sur (macOS 11).

@henryiii
Copy link
Contributor Author

henryiii commented Nov 4, 2022

Someone's working on fixing ROOT on macOS 13. I passed on the info. Thanks!!!

@chenrui333 chenrui333 changed the title root 6.26.08 root minuit2 6.26.08 Nov 12, 2022
@chenrui333 chenrui333 added the in progress Stale bot should stay away label Nov 18, 2022
@chenrui333
Copy link
Member

Let us know when we can do the rerun, mark the PR as in progress

@henryiii
Copy link
Contributor Author

ROOT just fixed the issues with macOS 13 & released 6.26.10 a day or two ago. I'll update to that, I can also test locally now that Xcode is out.

@henryiii
Copy link
Contributor Author

I've updated, but local builds are failing with:

FAILED: lib/libNetxNG.so
: && /usr/local/Homebrew/Library/Homebrew/shims/mac/super/clang++ -std=c++17 -Wc++11-narrowing -Wsign-compare -Wsometimes-uninitialized -Wconditional-uninitialized -Wheader-guard -Warray-bounds -Wcomment -Wtautological-compare -Wstrncat-size -Wloop-analysis -Wbool-conversion -m64 -pipe -W -Wall -Woverloaded-virtual -fsigned-char -fno-common -Qunused-arguments -pthread -stdlib=libc++ -O3 -DNDEBUG -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.sdk -dynamiclib -Wl,-headerpad_max_install_names -m64 -single_module -Wl,-dead_strip_dylibs -Wl,-rpath,/usr/local/Cellar/root/6.26.10/lib/root -o lib/libNetxNG.so -install_name @rpath/libNetxNG.so net/netxng/CMakeFiles/G__NetxNG.dir/G__NetxNG.cxx.o net/netxng/CMakeFiles/NetxNG.dir/src/TNetXNGFile.cxx.o net/netxng/CMakeFiles/NetxNG.dir/src/TNetXNGFileStager.cxx.o net/netxng/CMakeFiles/NetxNG.dir/src/TNetXNGSystem.cxx.o net/netxng/CMakeFiles/NetxNG.dir/src/RRawFileNetXNG.cxx.o  -Wl,-rpath,/tmp/root-20221118-97723-17dfg1n/root-6.26.10/builddir/lib  lib/libNet.so  lib/libRIO.so  lib/libThread.so  /usr/local/lib/libXrdUtils.dylib  /usr/local/lib/libXrdClient.dylib  /usr/local/lib/libXrdCl.dylib  lib/libCore.so && :
Undefined symbols for architecture x86_64:
  "XrdCl::StatInfo::~StatInfo()", referenced from:
      TNetXNGFile::GetSize() const in TNetXNGFile.cxx.o
      TNetXNGSystem::GetPathInfo(char const*, FileStat_t&) in TNetXNGSystem.cxx.o
      TNetXNGSystem::Unlink(char const*) in TNetXNGSystem.cxx.o
      ROOT::Internal::RRawFileNetXNG::GetSizeImpl() in RRawFileNetXNG.cxx.o
  "XrdCl::StatInfo::GetModTime() const", referenced from:
      TNetXNGSystem::GetPathInfo(char const*, FileStat_t&) in TNetXNGSystem.cxx.o
  "XrdCl::StatInfo::GetId() const", referenced from:
      TNetXNGSystem::GetPathInfo(char const*, FileStat_t&) in TNetXNGSystem.cxx.o
  "XrdCl::StatInfo::GetSize() const", referenced from:
      TNetXNGFile::GetSize() const in TNetXNGFile.cxx.o
      TNetXNGSystem::GetPathInfo(char const*, FileStat_t&) in TNetXNGSystem.cxx.o
      ROOT::Internal::RRawFileNetXNG::GetSizeImpl() in RRawFileNetXNG.cxx.o
  "XrdCl::StatInfo::GetFlags() const", referenced from:
      TNetXNGSystem::GetPathInfo(char const*, FileStat_t&) in TNetXNGSystem.cxx.o
  "XrdCl::StatInfo::TestFlags(unsigned int) const", referenced from:
      TNetXNGSystem::GetPathInfo(char const*, FileStat_t&) in TNetXNGSystem.cxx.o
      TNetXNGSystem::Unlink(char const*) in TNetXNGSystem.cxx.o
ld: symbol(s) not found for architecture x86_64

Checking with the ROOT team.

@henryiii henryiii mentioned this pull request Nov 22, 2022
6 tasks
@henryiii henryiii changed the title root minuit2 6.26.08 root minuit2 6.26.10 Nov 22, 2022
@henryiii
Copy link
Contributor Author

Could you trigger a build just to see if this also shows up (and where)? The ROOT team hasn't seen this failure before. It might be due to my xrootd build being from macOS 12 and the new build being on 13.

@chenrui333
Copy link
Member

Could you trigger a build just to see if this also shows up (and where)? The ROOT team hasn't seen this failure before. It might be due to my xrootd build being from macOS 12 and the new build being on 13.

doing that now.

@chenrui333 chenrui333 added CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. CI-no-fail-fast Continue CI tests despite failing GitHub Actions matrix builds. labels Nov 29, 2022
@chenrui333 chenrui333 force-pushed the henryiii/chore/root6.26.08 branch from 5a92e8f to 1bae9ce Compare November 29, 2022 05:03
@chenrui333 chenrui333 added the CI-requeued PR has been re-added to the queue label Nov 29, 2022
@chenrui333
Copy link
Member

some audit failures

  root:
    * Libraries were compiled with a flat namespace.
      This can cause linker errors due to name collisions, and
      is often due to a bug in detecting the macOS version.
        /opt/homebrew/Cellar/root/6.26.10/lib/root/libCling.so
        /opt/homebrew/Cellar/root/6.26.10/lib/root/libJupyROOT3_10.so
        /opt/homebrew/Cellar/root/6.26.10/lib/root/libROOTPythonizations3_10.so
        /opt/homebrew/Cellar/root/6.26.10/lib/root/libROOTTPython.so
        /opt/homebrew/Cellar/root/6.26.10/lib/root/libcppyy3_10.so

@github-actions github-actions bot added automerge-skip `brew pr-automerge` will skip this pull request and removed CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. labels Jul 1, 2023
@cho-m
Copy link
Member

cho-m commented Jul 1, 2023

Building bundled LLVM is hitting various issues. I'm guessing Linux failure is due to llvm@15 headers getting mixed. Not sure on macOS failure but could be some SDK mixing.

Would need someone to look into what is causing this.

Alternatively, could try using Homebrew's llvm@13 instead but will need root-project/root#12153. This will lead to multiple LLVM versions on Linux but that is probably okay given we don't even have Linux bottle right now.


EDIT: Hit build failure locally with llvm@13. Haven't had chance to look into:

[5463/8779] /opt/homebrew/Library/Homebrew/shims/mac/super/clang++ -DCLING_VERSION="ROOT_1.0~dev" -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/builddir/interpreter/cling/lib/Interpreter -I/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/cling/lib/Interpreter -I/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/cling/include -I/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/builddir/interpreter/cling/include -isystem /tmp/root-20230701-99712-1fmz3yk/root-6.28.04/builddir/interpreter/llvm/src/tools/clang/include -isystem /tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/llvm/src/tools/clang/include -std=c++17 -Wc++11-narrowing -Wsign-compare -Wsometimes-uninitialized -Wconditional-uninitialized -Wheader-guard -Warray-bounds -Wcomment -Wtautological-compare -Wstrncat-size -Wloop-analysis -Wbool-conversion -m64 -pipe -W -Wall -Woverloaded-virtual -fsigned-char -fno-common -Qunused-arguments -pthread -stdlib=libc++  -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -fdiagnostics-color  -fno-strict-aliasing -Wwrite-strings -Wno-shadow -Wno-unused-parameter -Wno-deprecated-declarations -fPIC -fno-common -Woverloaded-virtual -Wno-nested-anon-types -Wno-covered-switch-default -Wno-unused-local-typedef -fno-rtti -O3 -DNDEBUG -std=c++17 -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.sdk -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT interpreter/cling/lib/Interpreter/CMakeFiles/obj.clingInterpreter.dir/AutoloadCallback.cpp.o -MF interpreter/cling/lib/Interpreter/CMakeFiles/obj.clingInterpreter.dir/AutoloadCallback.cpp.o.d -o interpreter/cling/lib/Interpreter/CMakeFiles/obj.clingInterpreter.dir/AutoloadCallback.cpp.o -c /tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/cling/lib/Interpreter/AutoloadCallback.cpp
FAILED: interpreter/cling/lib/Interpreter/CMakeFiles/obj.clingInterpreter.dir/AutoloadCallback.cpp.o
/opt/homebrew/Library/Homebrew/shims/mac/super/clang++ -DCLING_VERSION="ROOT_1.0~dev" -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/builddir/interpreter/cling/lib/Interpreter -I/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/cling/lib/Interpreter -I/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/cling/include -I/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/builddir/interpreter/cling/include -isystem /tmp/root-20230701-99712-1fmz3yk/root-6.28.04/builddir/interpreter/llvm/src/tools/clang/include -isystem /tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/llvm/src/tools/clang/include -std=c++17 -Wc++11-narrowing -Wsign-compare -Wsometimes-uninitialized -Wconditional-uninitialized -Wheader-guard -Warray-bounds -Wcomment -Wtautological-compare -Wstrncat-size -Wloop-analysis -Wbool-conversion -m64 -pipe -W -Wall -Woverloaded-virtual -fsigned-char -fno-common -Qunused-arguments -pthread -stdlib=libc++  -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -fdiagnostics-color  -fno-strict-aliasing -Wwrite-strings -Wno-shadow -Wno-unused-parameter -Wno-deprecated-declarations -fPIC -fno-common -Woverloaded-virtual -Wno-nested-anon-types -Wno-covered-switch-default -Wno-unused-local-typedef -fno-rtti -O3 -DNDEBUG -std=c++17 -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.sdk -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT interpreter/cling/lib/Interpreter/CMakeFiles/obj.clingInterpreter.dir/AutoloadCallback.cpp.o -MF interpreter/cling/lib/Interpreter/CMakeFiles/obj.clingInterpreter.dir/AutoloadCallback.cpp.o.d -o interpreter/cling/lib/Interpreter/CMakeFiles/obj.clingInterpreter.dir/AutoloadCallback.cpp.o -c /tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/cling/lib/Interpreter/AutoloadCallback.cpp
In file included from /tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/cling/lib/Interpreter/AutoloadCallback.cpp:14:
In file included from /opt/homebrew/opt/llvm@13/include/clang/Sema/Sema.h:17:
In file included from /opt/homebrew/opt/llvm@13/include/clang/AST/ASTConcept.h:18:
In file included from /opt/homebrew/opt/llvm@13/include/clang/AST/Expr.h:19:
In file included from /opt/homebrew/opt/llvm@13/include/clang/AST/Decl.h:19:
In file included from /opt/homebrew/opt/llvm@13/include/clang/AST/DeclBase.h:18:
In file included from /opt/homebrew/opt/llvm@13/include/clang/AST/DeclarationName.h:16:
In file included from /opt/homebrew/opt/llvm@13/include/clang/AST/Type.h:21:
In file included from /opt/homebrew/opt/llvm@13/include/clang/AST/NestedNameSpecifier.h:18:
In file included from /opt/homebrew/opt/llvm@13/include/clang/Basic/Diagnostic.h:22:
/opt/homebrew/opt/llvm@13/include/llvm/ADT/DenseMap.h:128:16: warning: variable 'NumEntries' set but not used [-Wunused-but-set-variable]
      unsigned NumEntries = getNumEntries();
               ^
/tmp/root-20230701-99712-1fmz3yk/root-6.28.04/interpreter/cling/lib/Interpreter/AutoloadCallback.cpp:129:61: error: too many arguments to function call, expected at most 12, have 14
                                               /*OpenFile*/ false,
                                                            ^~~~~~
/opt/homebrew/opt/llvm@13/include/clang/Lex/Preprocessor.h:2015:3: note: 'LookupFile' declared here
  LookupFile(SourceLocation FilenameLoc, StringRef Filename, bool isAngled,
  ^
1 warning and 1 error generated.

@cho-m
Copy link
Member

cho-m commented Jul 2, 2023

Sadly Root is mixing some code from different LLVM versions so can't use llvm@13.

I think macOS failure is -I/opt/homebrew/opt/util-linux/include added by superenv mixing uuid.h headers.

@cho-m cho-m force-pushed the henryiii/chore/root6.26.08 branch from 1e8bf28 to a820e70 Compare July 2, 2023 04:22
@cho-m cho-m added CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. openssl-3-migration Related to switching to an OpenSSL 3 dependency and removed upstream issue An upstream issue report is needed build failure CI fails while building the software labels Jul 2, 2023
@github-actions github-actions bot removed the CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. label Jul 2, 2023
@cho-m cho-m added the ready to merge PR can be merged once CI is green label Jul 2, 2023
@p-linnane p-linnane removed automerge-skip `brew pr-automerge` will skip this pull request CI-no-fail-fast Continue CI tests despite failing GitHub Actions matrix builds. labels Jul 2, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Jul 2, 2023

@github-actions github-actions bot added the CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. label Jul 2, 2023
@BrewTestBot BrewTestBot enabled auto-merge July 2, 2023 19:11
@BrewTestBot BrewTestBot added this pull request to the merge queue Jul 2, 2023
Merged via the queue into Homebrew:master with commit eb76d67 Jul 2, 2023
@github-actions github-actions bot added the outdated PR was locked due to age label Aug 2, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 2, 2023
@chenrui333 chenrui333 added the python Python use is a significant feature of the PR or issue label Oct 10, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. long build Set a long timeout for formula testing openssl-3-migration Related to switching to an OpenSSL 3 dependency outdated PR was locked due to age python Python use is a significant feature of the PR or issue python-3.11-migration ready to merge PR can be merged once CI is green

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants