[llvm] REAPPLY [ORC] Add automatic shared library resolver for unresolved symbols. #148410 (PR #164551)

via llvm-commits llvm-commits at lists.llvm.org
Sat Oct 25 05:43:55 PDT 2025


dyung wrote:

> Could anyone provide some insight into this path difference issue?
> 
> ```
> Script:
> --
> /Volumes/ExternalSSD/buildbot-root/aarch64-darwin/build/unittests/ExecutionEngine/Orc/./OrcJITTests --gtest_filter=LibraryResolverIT.PathResolverResolvesKnownPaths
> --
> /Users/buildbot/buildbot-root/aarch64-darwin/llvm-project/llvm/unittests/ExecutionEngine/Orc/LibraryResolverTest.cpp:661: Failure
> Expected equality of these values:
>   *DirPath
>     Which is: "/Users/buildbot/buildbot-root2/aarch64-darwin/llvm-project/llvm/unittests/ExecutionEngine/Orc/Inputs-e1e002"
>   BaseDir
>     Which is: "/Users/buildbot/buildbot-root/aarch64-darwin/llvm-project/llvm/unittests/ExecutionEngine/Orc/Inputs-e1e002"
> ```

This is my bot. To avoid putting too much wear on the built-in SSD, I use symlinks in the file system to give the appearance of everything being on the same drive/path, but put the build directories either on an external SSD (this specific example), or on a RAM disk (other Mac bots). I achieve this by using symlinks. Here is some output that might be useful:
```
% ls -la buildbot-root
lrwxr-xr-x  1 buildbot  staff  34 Aug 23 00:06 buildbot-root -> /Volumes/ExternalSSD/buildbot-root
...
% pwd
/Users/buildbot/buildbot-root/aarch64-darwin
% ls -la
total 0
drwxr-xr-x   4 buildbot  staff  128 Oct 25 07:53 .
drwxr-xr-x  10 buildbot  staff  320 Oct 23 18:28 ..
drwx------  29 buildbot  staff  928 Oct 25 08:08 build
lrwxr-xr-x   1 buildbot  staff   58 Aug 23 00:06 llvm-project -> /Users/buildbot/buildbot-root2/aarch64-darwin/llvm-project
```
Essentially the buildbot directory is at ~/buildbot-worker which is symlinked to /Volumes/ExternalSSD/buildbot-root. Within that location though, the actual sources are symlinked back to a directory on the builtin SSD located at /Users/buildbot/buildbot-root2/aarch64-darwin/llvm-project (this is mainly read-only so I'm not so worried about SSD wear), while the build directory is contained on the external SSD.

Hope this helps and let me know if you have any questions.

https://github.com/llvm/llvm-project/pull/164551


More information about the llvm-commits mailing list