tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
llvmPackages_git: Fix the libcxx and libcxxabi builds
Michael Weiss
4 years ago
83bf3464
2bbf6c86
+52
-69
4 changed files
expand all
collapse all
unified
split
pkgs
development
compilers
llvm
git
libcxx
default.nix
gnu-install-dirs.patch
libcxxabi
default.nix
gnu-install-dirs.patch
+1
-4
pkgs/development/compilers/llvm/git/libcxx/default.nix
···
1
-
{ lib, stdenv, llvm_meta, src, cmake, python3, libcxxabi, fixDarwinDylibNames, version
2
, enableShared ? !stdenv.hostPlatform.isStatic
3
}:
4
···
24
nativeBuildInputs = [ cmake python3 ]
25
++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
26
27
-
buildInputs = [ libcxxabi ];
28
-
29
cmakeFlags = [
30
-
"-DLIBCXX_CXX_ABI=libcxxabi"
31
] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
32
++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
33
++ lib.optional stdenv.hostPlatform.isWasm [
···
1
+
{ lib, stdenv, llvm_meta, src, cmake, python3, fixDarwinDylibNames, version
2
, enableShared ? !stdenv.hostPlatform.isStatic
3
}:
4
···
24
nativeBuildInputs = [ cmake python3 ]
25
++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
26
0
0
27
cmakeFlags = [
0
28
] ++ lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
29
++ lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
30
++ lib.optional stdenv.hostPlatform.isWasm [
+36
-55
pkgs/development/compilers/llvm/git/libcxx/gnu-install-dirs.patch
···
1
diff --git a/CMakeLists.txt b/CMakeLists.txt
2
-
index 9bf1a02f0908..612cd4aab76c 100644
3
--- a/CMakeLists.txt
4
+++ b/CMakeLists.txt
5
@@ -28,6 +28,8 @@ set(LIBCXX_BINARY_INCLUDE_DIR "${LIBCXX_BINARY_DIR}/include/c++build")
···
9
+ include(GNUInstallDirs)
10
+
11
set(PACKAGE_NAME libcxx)
12
-
set(PACKAGE_VERSION 12.0.0)
13
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
14
-
@@ -402,7 +404,7 @@ endif ()
15
-
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
16
-
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
17
-
set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
18
-
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
19
-
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
0
0
20
if(LIBCXX_LIBDIR_SUBDIR)
21
-
string(APPEND LIBCXX_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
22
-
string(APPEND LIBCXX_INSTALL_LIBRARY_DIR /${LIBCXX_LIBDIR_SUBDIR})
23
-
@@ -410,11 +412,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
24
-
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
25
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
26
-
set(LIBCXX_HEADER_DIR ${LLVM_BINARY_DIR})
0
27
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
28
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
0
0
29
else()
30
set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
31
-
set(LIBCXX_HEADER_DIR ${CMAKE_BINARY_DIR})
0
32
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
33
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
0
0
34
endif()
35
-
36
-
file(MAKE_DIRECTORY "${LIBCXX_BINARY_INCLUDE_DIR}")
37
diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
38
-
index 5d2764e870e9..bb1ec5de6ca2 100644
39
--- a/cmake/Modules/HandleLibCXXABI.cmake
40
+++ b/cmake/Modules/HandleLibCXXABI.cmake
41
@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
42
43
if (LIBCXX_INSTALL_HEADERS)
44
install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
45
-
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dstdir}
46
-
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
47
COMPONENT cxx-headers
48
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
49
)
50
-
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
51
-
index 29a317b8ae9a..4747263cfd1b 100644
52
-
--- a/include/CMakeLists.txt
53
-
+++ b/include/CMakeLists.txt
54
-
@@ -252,7 +252,7 @@ if (LIBCXX_INSTALL_HEADERS)
55
-
foreach(file ${files})
56
-
get_filename_component(dir ${file} DIRECTORY)
57
-
install(FILES ${file}
58
-
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1/${dir}
59
-
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dir}
60
-
COMPONENT cxx-headers
61
-
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
62
-
)
63
-
@@ -260,7 +260,7 @@ if (LIBCXX_INSTALL_HEADERS)
64
-
65
-
# Install the generated header as __config.
66
-
install(FILES ${LIBCXX_BINARY_DIR}/__generated_config
67
-
- DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}include/c++/v1
68
-
+ DESTINATION ${LIBCXX_INSTALL_HEADER_PREFIX}${CMAKE_INSTALL_INCLUDEDIR}/c++/v1
69
-
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
70
-
RENAME __config
71
-
COMPONENT cxx-headers)
72
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
73
-
index 9965104cb5b2..9b55dbb1d822 100644
74
--- a/src/CMakeLists.txt
75
+++ b/src/CMakeLists.txt
76
-
@@ -352,21 +352,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY)
77
install(TARGETS cxx_shared
78
-
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
79
-
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
80
-
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
81
-
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
82
endif()
83
84
if (LIBCXX_INSTALL_STATIC_LIBRARY)
85
install(TARGETS cxx_static
86
-
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
87
-
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
88
-
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
89
-
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
90
endif()
91
92
if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
93
install(TARGETS cxx_experimental
94
-
LIBRARY DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
95
-
ARCHIVE DESTINATION ${LIBCXX_INSTALL_PREFIX}${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
96
-
- RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}bin COMPONENT cxx)
97
-
+ RUNTIME DESTINATION ${LIBCXX_INSTALL_PREFIX}${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
98
endif()
99
100
# NOTE: This install command must go after the cxx install command otherwise
···
1
diff --git a/CMakeLists.txt b/CMakeLists.txt
2
+
index 06ee1d74a03e..6c3c6f8f8d47 100644
3
--- a/CMakeLists.txt
4
+++ b/CMakeLists.txt
5
@@ -28,6 +28,8 @@ set(LIBCXX_BINARY_INCLUDE_DIR "${LIBCXX_BINARY_DIR}/include/c++build")
···
9
+ include(GNUInstallDirs)
10
+
11
set(PACKAGE_NAME libcxx)
12
+
set(PACKAGE_VERSION 13.0.0git)
13
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
14
+
@@ -409,7 +411,7 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
15
+
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE})
16
+
set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1")
17
+
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LLVM_BINARY_DIR}/include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1")
18
+
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
19
+
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
20
+
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
21
+
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "include/${LLVM_DEFAULT_TARGET_TRIPLE}/c++/v1")
22
if(LIBCXX_LIBDIR_SUBDIR)
23
+
@@ -420,14 +422,14 @@ elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
0
0
0
24
set(LIBCXX_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
25
+
set(LIBCXX_GENERATED_INCLUDE_DIR "${LLVM_BINARY_DIR}/include/c++/v1")
26
+
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}")
27
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
28
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
29
+
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
30
+
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}")
31
else()
32
set(LIBCXX_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXX_LIBDIR_SUFFIX})
33
+
set(LIBCXX_GENERATED_INCLUDE_DIR "${CMAKE_BINARY_DIR}/include/c++/v1")
34
+
set(LIBCXX_GENERATED_INCLUDE_TARGET_DIR "${LIBCXX_GENERATED_INCLUDE_DIR}")
35
- set(LIBCXX_INSTALL_LIBRARY_DIR lib${LIBCXX_LIBDIR_SUFFIX})
36
+ set(LIBCXX_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXX_LIBDIR_SUFFIX})
37
+
set(LIBCXX_INSTALL_INCLUDE_DIR "include/c++/v1")
38
+
set(LIBCXX_INSTALL_INCLUDE_TARGET_DIR "${LIBCXX_INSTALL_INCLUDE_DIR}")
39
endif()
0
0
40
diff --git a/cmake/Modules/HandleLibCXXABI.cmake b/cmake/Modules/HandleLibCXXABI.cmake
41
+
index 5a8a4a270a1a..c06bae0001aa 100644
42
--- a/cmake/Modules/HandleLibCXXABI.cmake
43
+++ b/cmake/Modules/HandleLibCXXABI.cmake
44
@@ -63,7 +63,7 @@ macro(setup_abi_lib abidefines abishared abistatic abifiles abidirs)
45
46
if (LIBCXX_INSTALL_HEADERS)
47
install(FILES "${LIBCXX_BINARY_INCLUDE_DIR}/${fpath}"
48
+
- DESTINATION include/c++/v1/${dstdir}
49
+
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/c++/v1/${dstdir}
50
COMPONENT cxx-headers
51
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
52
)
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
53
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
54
+
index 87b71f7ba334..d20a783079b7 100644
55
--- a/src/CMakeLists.txt
56
+++ b/src/CMakeLists.txt
57
+
@@ -369,21 +369,21 @@ if (LIBCXX_INSTALL_SHARED_LIBRARY)
58
install(TARGETS cxx_shared
59
+
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
60
+
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
61
+
- RUNTIME DESTINATION bin COMPONENT cxx)
62
+
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
63
endif()
64
65
if (LIBCXX_INSTALL_STATIC_LIBRARY)
66
install(TARGETS cxx_static
67
+
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
68
+
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
69
+
- RUNTIME DESTINATION bin COMPONENT cxx)
70
+
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
71
endif()
72
73
if(LIBCXX_INSTALL_EXPERIMENTAL_LIBRARY)
74
install(TARGETS cxx_experimental
75
+
LIBRARY DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
76
+
ARCHIVE DESTINATION ${LIBCXX_INSTALL_LIBRARY_DIR} COMPONENT cxx
77
+
- RUNTIME DESTINATION bin COMPONENT cxx)
78
+
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT cxx)
79
endif()
80
81
# NOTE: This install command must go after the cxx install command otherwise
+4
-1
pkgs/development/compilers/llvm/git/libcxxabi/default.nix
···
1
{ lib, stdenv, llvm_meta, cmake, python3, src, libunwind, version
2
, enableShared ? !stdenv.hostPlatform.isStatic
0
3
}:
4
5
stdenv.mkDerivation rec {
···
26
nativeBuildInputs = [ cmake python3 ];
27
buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
28
29
-
cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
0
0
30
"-DLLVM_ENABLE_LIBCXX=ON"
31
"-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
32
] ++ lib.optionals stdenv.hostPlatform.isWasm [
···
1
{ lib, stdenv, llvm_meta, cmake, python3, src, libunwind, version
2
, enableShared ? !stdenv.hostPlatform.isStatic
3
+
, libcxx
4
}:
5
6
stdenv.mkDerivation rec {
···
27
nativeBuildInputs = [ cmake python3 ];
28
buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
29
30
+
cmakeFlags = [
31
+
"-DLIBCXXABI_LIBCXX_INCLUDES=${libcxx.dev}/include/c++/v1"
32
+
] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [
33
"-DLLVM_ENABLE_LIBCXX=ON"
34
"-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
35
] ++ lib.optionals stdenv.hostPlatform.isWasm [
+11
-9
pkgs/development/compilers/llvm/git/libcxxabi/gnu-install-dirs.patch
···
1
diff --git a/CMakeLists.txt b/CMakeLists.txt
2
-
index 426c855288fc..a9812a994f53 100644
3
--- a/CMakeLists.txt
4
+++ b/CMakeLists.txt
5
@@ -27,6 +27,8 @@ set(LIBCXXABI_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
···
9
+ include(GNUInstallDirs)
10
+
11
set(PACKAGE_NAME libcxxabi)
12
-
set(PACKAGE_VERSION 11.0.0)
13
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
14
-
@@ -180,17 +182,17 @@ set(CMAKE_MODULE_PATH
15
-
16
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
17
-
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
18
-
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
19
-
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE}/c++)
0
20
if(LIBCXX_LIBDIR_SUBDIR)
21
string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
22
string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
23
-
endif()
24
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
0
25
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
26
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
27
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
28
else()
0
29
set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
30
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
31
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
32
endif()
33
34
-
set(LIBCXXABI_INSTALL_PREFIX "" CACHE STRING "Define libc++abi destination prefix.")
···
1
diff --git a/CMakeLists.txt b/CMakeLists.txt
2
+
index 1e8b73aa38cc..6f7b2a25d205 100644
3
--- a/CMakeLists.txt
4
+++ b/CMakeLists.txt
5
@@ -27,6 +27,8 @@ set(LIBCXXABI_LIBCXX_PATH "${CMAKE_CURRENT_LIST_DIR}/../libcxx" CACHE PATH
···
9
+ include(GNUInstallDirs)
10
+
11
set(PACKAGE_NAME libcxxabi)
12
+
set(PACKAGE_VERSION 11.0.0git)
13
set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
14
+
@@ -196,7 +198,7 @@ set(CMAKE_MODULE_PATH
0
15
if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
16
+
set(LIBCXXABI_HEADER_DIR ${LLVM_BINARY_DIR})
17
+
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${LLVM_DEFAULT_TARGET_TRIPLE})
18
+
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
19
+
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}/${LLVM_DEFAULT_TARGET_TRIPLE})
20
if(LIBCXX_LIBDIR_SUBDIR)
21
string(APPEND LIBCXXABI_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
22
string(APPEND LIBCXXABI_INSTALL_LIBRARY_DIR /${LIBCXXABI_LIBDIR_SUBDIR})
23
+
@@ -204,11 +206,11 @@ if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)
24
elseif(LLVM_LIBRARY_OUTPUT_INTDIR)
25
+
set(LIBCXXABI_HEADER_DIR ${LLVM_BINARY_DIR})
26
set(LIBCXXABI_LIBRARY_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR})
27
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
28
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
29
else()
30
+
set(LIBCXXABI_HEADER_DIR ${CMAKE_BINARY_DIR})
31
set(LIBCXXABI_LIBRARY_DIR ${CMAKE_BINARY_DIR}/lib${LIBCXXABI_LIBDIR_SUFFIX})
32
- set(LIBCXXABI_INSTALL_LIBRARY_DIR lib${LIBCXXABI_LIBDIR_SUFFIX})
33
+ set(LIBCXXABI_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_LIBDIR}${LIBCXXABI_LIBDIR_SUFFIX})
34
endif()
35
36
+
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBCXXABI_LIBRARY_DIR})