mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-24 14:43:37 +00:00
7869d16545
Also begin to start work on cross compilation, though that will have to
be finished later.
The patches are based on the first version of
https://reviews.llvm.org/D99484. It's very annoying to do the
back-porting but the review has uncovered nothing super major so I'm
fine sticking with what I've got.
Beyond making the outputs work, I also strove to re-sync the packages,
as they have been drifting pointlessly apart for some time.
----
Other misc notes, highly incomplete
- lvm-config-native and llvm-config are put in `dev` because they are
tools just for build time.
- Clang no longer has an lld dep. That was introduced in
db29857eb3
, but if clang needs help
finding lld when it is used we should just pass it flags / put in the
resource dir. Providing it at build time increases critical path
length for no good reason.
----
A note on `nativeCC`:
`stdenv` takes tools from the previous stage, so:
1. `pkgsBuildBuild`: `(?1, x, x)`
2. `pkgsBuildBuild.stdenv.cc`: `(?0, ?1, x)`
while:
1. `pkgsBuildBuild`: `(?1, x, x)`
2. `pkgsBuildBuild.targetPackages`: `(x, x, ?2)`
3. `pkgsBuildBuild.targetPackages.stdenv.cc`: `(?1, x, x)`
26 lines
1.0 KiB
Diff
26 lines
1.0 KiB
Diff
diff --git i/src/cpp/core/libclang/LibClang.cpp w/src/cpp/core/libclang/LibClang.cpp
|
|
index ec12a3a1ff..8c81b633ae 100644
|
|
--- i/src/cpp/core/libclang/LibClang.cpp
|
|
+++ w/src/cpp/core/libclang/LibClang.cpp
|
|
@@ -54,7 +54,7 @@ std::vector<std::string> defaultCompileArgs(LibraryVersion version)
|
|
|
|
// we need to add in the associated libclang headers as
|
|
// they are not discovered / used by default during compilation
|
|
- FilePath llvmPath = s_libraryPath.parent().parent();
|
|
+ FilePath llvmPath("@libclang@");
|
|
boost::format fmt("%1%/lib/clang/%2%/include");
|
|
fmt % llvmPath.absolutePath() % version.asString();
|
|
std::string includePath = fmt.str();
|
|
@@ -77,10 +77,7 @@ std::vector<std::string> systemClangVersions()
|
|
#elif defined(__unix__)
|
|
// default set of versions
|
|
clangVersions = {
|
|
- "/usr/lib/libclang.so",
|
|
- "/usr/lib/llvm/libclang.so",
|
|
- "/usr/lib64/libclang.so",
|
|
- "/usr/lib64/llvm/libclang.so",
|
|
+ "@libclang.so@"
|
|
};
|
|
|
|
// iterate through the set of available 'llvm' directories
|