-
Notifications
You must be signed in to change notification settings - Fork 11k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CMake][Release] Enable CMAKE_POSITION_INDEPENDENT_CODE #90139
Conversation
Set this in the cache file directly instead of via the test-release.sh script so that the release builds can be reproduced with just the cache file.
@llvm/pr-subscribers-clang Author: Tom Stellard (tstellar) ChangesSet this in the cache file directly instead of via the test-release.sh script so that the release builds can be reproduced with just the cache file. Full diff: https://github.com/llvm/llvm-project/pull/90139.diff 2 Files Affected:
diff --git a/clang/cmake/caches/Release.cmake b/clang/cmake/caches/Release.cmake
index c164d5497275f3..c0bfcbdfc1c2ae 100644
--- a/clang/cmake/caches/Release.cmake
+++ b/clang/cmake/caches/Release.cmake
@@ -82,6 +82,7 @@ set(LLVM_ENABLE_PROJECTS ${STAGE1_PROJECTS} CACHE STRING "")
# stage2-instrumented and Final Stage Config:
# Options that need to be set in both the instrumented stage (if we are doing
# a pgo build) and the final stage.
+set_instrument_and_final_stage_var(CMAKE_POSITION_INDEPENDENT_CODE "ON" STRING)
set_instrument_and_final_stage_var(LLVM_ENABLE_LTO "${LLVM_RELEASE_ENABLE_LTO}" STRING)
if (LLVM_RELEASE_ENABLE_LTO)
set_instrument_and_final_stage_var(LLVM_ENABLE_LLD "ON" BOOL)
diff --git a/llvm/utils/release/test-release.sh b/llvm/utils/release/test-release.sh
index 4314b565e11b03..050004aa08c493 100755
--- a/llvm/utils/release/test-release.sh
+++ b/llvm/utils/release/test-release.sh
@@ -353,8 +353,7 @@ function build_with_cmake_cache() {
env CC="$c_compiler" CXX="$cxx_compiler" \
cmake -G "$generator" -B $CMakeBuildDir -S $SrcDir/llvm \
-C $SrcDir/clang/cmake/caches/Release.cmake \
- -DCLANG_BOOTSTRAP_PASSTHROUGH="CMAKE_POSITION_INDEPENDENT_CODE;LLVM_LIT_ARGS" \
- -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
+ -DCLANG_BOOTSTRAP_PASSTHROUGH="LLVM_LIT_ARGS" \
-DLLVM_LIT_ARGS="-j $NumJobs $LitVerbose" \
$ExtraConfigureFlags
2>&1 | tee $LogDir/llvm.configure-$Flavor.log
|
/cherry-pick 53ff002 |
Failed to cherry-pick: 53ff002 https://github.com/llvm/llvm-project/actions/runs/8863031679 Please manually backport the fix and push it to your github fork. Once this is done, please create a pull request |
Set this in the cache file directly instead of via the test-release.sh script so that the release builds can be reproduced with just the cache file. (cherry picked from commit 53ff002)
Set this in the cache file directly instead of via the test-release.sh script so that the release builds can be reproduced with just the cache file. (cherry picked from commit 53ff002)
This was backported to the release branch: b7e2397. |
Set this in the cache file directly instead of via the test-release.sh script so that the release builds can be reproduced with just the cache file.