[lldb-dev] [3.8 Release] RC1 has been tagged

Hans Wennborg via lldb-dev lldb-dev at lists.llvm.org
Wed Jan 20 13:26:45 PST 2016


On Wed, Jan 20, 2016 at 12:18 PM, Dimitry Andric <dimitry at andric.com> wrote:
> As to the symlinks, the test-release.sh script originally checks out the sources in parallel directories, e.g.:
>
> llvm.src
> cfe.src
> compiler-rt.src
>
> and so on.  Within llvm.src, symlinks are made to point to each of these.  For some reason, on FreeBSD, this causes .cpp files under llvm.src/tools/clang/tools/extra to not be able to find their include files, and my log files show the following kind of errors:
>
> /home/dim/llvm-3.7.0/rc3/llvm.src/tools/clang/tools/extra/clang-apply-replacements/lib/Tooling/../../include/clang-apply-replacements/Tooling/ApplyReplacements.h:19:10: fatal error: 'clang/Tooling/Refactoring.h' file not found
> #include "clang/Tooling/Refactoring.h"
>          ^
> 1 error generated.
>
> I remember trying lots of things to make this work, but failing.  Apparently there is some issue with following a double symlink path, e.g. llvm.src/tools/clang is a symlink to ../../cfe.src, while llvm.src/tools/clang/tools/extra (which really is under ../../cfe.src/tools) is a symlink to ../../clang-tools-extra.src.

Oh, I thought it was a CMake vs. autoconf thing, and we were just
symlinking clang-tools-extra wrong (see r257905). I guess I jumped to
wrong conclusions there :-/

> The way I fixed this during the 3.7 test phase, is by changing test-release.sh so it exports directly into these locations:
>
> # Exporting llvm 3.7.0-rc3 sources to llvm.src
> # Exporting cfe 3.7.0-rc3 sources to llvm.src/tools/clang
> # Exporting clang-tools-extra 3.7.0-rc3 sources to llvm.src/tools/clang/tools/extra
> # Exporting compiler-rt 3.7.0-rc3 sources to llvm.src/projects/compiler-rt
> # Exporting libcxx 3.7.0-rc3 sources to llvm.src/projects/libcxx
> # Exporting libcxxabi 3.7.0-rc3 sources to llvm.src/projects/libcxxabi
> # Exporting libunwind 3.7.0-rc3 sources to llvm.src/projects/libunwind
> # Exporting test-suite 3.7.0-rc3 sources to llvm.src/projects/test-suite
>
> This is probably not so handy if you want to create tarballs of the individual components, though.

Actually, I use export.sh for creating the tarballs, so that's not a
problem. Maybe just exporting into the right directories is the way to
go.


More information about the lldb-dev mailing list