From 2c8a55f82bd6cb4b4855ee428d3e7e30d17d12bb Mon Sep 17 00:00:00 2001 From: PatTheMav Date: Mon, 12 Sep 2022 18:57:33 +0200 Subject: [PATCH] cmake: Fix rundir installation accepting DESTDIR environment variable The environment variable DESTDIR is commonly used to specify an install- time prefix for installation of build artifacts (e.g. for staging an installation in a temporary directory while keeping the overall prefixes intact). This variable should be ignored by all targets but the install target, which requires us to set it to an empty string/path when we use `install` to set up our rundir. --- cmake/Modules/ObsHelpers.cmake | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/cmake/Modules/ObsHelpers.cmake b/cmake/Modules/ObsHelpers.cmake index b83a16694..a5df070f4 100644 --- a/cmake/Modules/ObsHelpers.cmake +++ b/cmake/Modules/ObsHelpers.cmake @@ -57,9 +57,9 @@ function(setup_binary_target target) TARGET ${target} POST_BUILD COMMAND - "${CMAKE_COMMAND}" --install .. --config $ --prefix - ${OBS_OUTPUT_DIR}/$ --component obs_${target} > - "$,nul,/dev/null>" + "${CMAKE_COMMAND}" -E env DESTDIR= "${CMAKE_COMMAND}" --install .. + --config $ --prefix ${OBS_OUTPUT_DIR}/$ --component + obs_${target} > "$,nul,/dev/null>" COMMENT "Installing OBS rundir" VERBATIM) @@ -91,9 +91,9 @@ function(setup_plugin_target target) TARGET ${target} POST_BUILD COMMAND - "${CMAKE_COMMAND}" --install .. --config $ --prefix - ${OBS_OUTPUT_DIR}/$ --component obs_${target} > - "$,nul,/dev/null>" + "${CMAKE_COMMAND}" -E env DESTDIR= "${CMAKE_COMMAND}" --install .. + --config $ --prefix ${OBS_OUTPUT_DIR}/$ --component + obs_${target} > "$,nul,/dev/null>" COMMENT "Installing ${target} to OBS rundir" VERBATIM) @@ -131,9 +131,9 @@ function(setup_script_plugin_target target) TARGET ${target} POST_BUILD COMMAND - "${CMAKE_COMMAND}" --install .. --config $ --prefix - ${OBS_OUTPUT_DIR}/$ --component obs_${target} > - "$,nul,/dev/null>" + "${CMAKE_COMMAND}" -E env DESTDIR= "${CMAKE_COMMAND}" --install .. + --config $ --prefix ${OBS_OUTPUT_DIR}/$ --component + obs_${target} > "$,nul,/dev/null>" COMMENT "Installing ${target} to OBS rundir" VERBATIM) @@ -201,9 +201,9 @@ function(setup_obs_app target) TARGET ${target} POST_BUILD COMMAND - "${CMAKE_COMMAND}" --install .. --config $ --prefix - ${OBS_OUTPUT_DIR}/$ --component obs_rundir > - "$,nul,/dev/null>" + "${CMAKE_COMMAND}" -E env DESTDIR= "${CMAKE_COMMAND}" --install .. + --config $ --prefix ${OBS_OUTPUT_DIR}/$ --component + obs_rundir > "$,nul,/dev/null>" COMMENT "Installing OBS rundir" VERBATIM) endfunction() @@ -540,9 +540,9 @@ function(_install_obs_datatarget target destination) TARGET ${target} POST_BUILD COMMAND - "${CMAKE_COMMAND}" --install .. --config $ --prefix - ${OBS_OUTPUT_DIR}/$ --component obs_${target} > - "$,nul,/dev/null>" + "${CMAKE_COMMAND}" -E env DESTDIR= "${CMAKE_COMMAND}" --install .. + --config $ --prefix ${OBS_OUTPUT_DIR}/$ --component + obs_${target} > "$,nul,/dev/null>" COMMENT "Installing ${target} to OBS rundir" VERBATIM) endfunction()