From 4e0045cc9b00ed18a7b8981d468a9d01eb4f6780 Mon Sep 17 00:00:00 2001 From: Nathan Chancellor Date: Tue, 30 Mar 2021 21:08:18 -0700 Subject: [PATCH] libc: Default LIBC_INSTALL_PREFIX to ${CMAKE_INSTALL_PREFIX} b22f448c21e718a3b6 added a rule to install libllvmlibc.a to ${LIBC_INSTALL_PREFIX}/${LIBC_INSTALL_LIBRARY_DIR}, which will be /lib by default, which is disruptive to builds that stay within a user's /home holder: $ ninja install ... -- Installing: /lib/libllvmlibc.a CMake Error at projects/libc/lib/cmake_install.cmake:54 (file): file INSTALL cannot copy file "/home/nathan/cbl/github/tc-build/build/llvm/stage1/projects/libc/lib/libllvmlibc.a" to "/lib/libllvmlibc.a": Permission denied. Call Stack (most recent call first): projects/libc/cmake_install.cmake:51 (include) projects/cmake_install.cmake:47 (include) cmake_install.cmake:76 (include) ... Change LIBC_INSTALL_PREFIX's default value to ${CMAKE_INSTALL_PREFIX} so that 'ninja install' does not attempt to install anything outside of the user's requested installation location. Differential Revision: https://reviews.llvm.org/D99636 Reviewed By: sivachandra Signed-off-by: Nathan Chancellor --- libc/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libc/CMakeLists.txt b/libc/CMakeLists.txt index 7054bfc..61cc5a1 100644 --- a/libc/CMakeLists.txt +++ b/libc/CMakeLists.txt @@ -14,7 +14,7 @@ set(LIBC_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}) # Path libc/scripts directory. set(LIBC_BUILD_SCRIPTS_DIR "${LIBC_SOURCE_DIR}/utils/build_scripts") -set(LIBC_INSTALL_PREFIX "" CACHE STRING "Define libc destination prefix.") +set(LIBC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Define libc destination prefix.") set(LIBC_TARGET_OS ${CMAKE_SYSTEM_NAME}) string(TOLOWER ${LIBC_TARGET_OS} LIBC_TARGET_OS) -- 2.7.4