diff options
author | Wu Yingcong <yingcong.wu@intel.com> | 2024-06-20 05:00:19 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-20 07:00:19 -0500 |
commit | 89841137fbb3686673b86af3434bf3ba12993d6d (patch) | |
tree | 19b7c8cf9bc50e6fd7b46578ede72c6cbbf5c669 | |
parent | 993c12b3177554d7915cde501fe5bddaa95dadae (diff) | |
download | llvm-89841137fbb3686673b86af3434bf3ba12993d6d.zip llvm-89841137fbb3686673b86af3434bf3ba12993d6d.tar.gz llvm-89841137fbb3686673b86af3434bf3ba12993d6d.tar.bz2 |
[offload][cmake] always define pythonize_bool macro (#96028)
I use the following cmake config to build offload and openmp
```
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="clang;openmp" -DLLVM_ENABLE_RUNTIMES="offload" -DLLVM_LIT_ARGS="-vv -a" -DLLVM_ENABLE_ASSERTIONS=ON ../llvm
```
and got the following error:
```
CMake Error at /tmp/build-llvm/llvm/offload/CMakeLists.txt:321 (pythonize_bool):
Unknown CMake command "pythonize_bool".
```
After some search I find out that the "correct" way to build this is
putting openmp and offload to the ENABLE_RUNTIMES like
```
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="clang" -DLLVM_ENABLE_RUNTIMES="openmp;offload" -DLLVM_LIT_ARGS="-vv -a" -DLLVM_ENABLE_ASSERTIONS=ON ../llvm
```
.
But since we don't forbid to config them using openmp as PROJECT and
offload as RUNTIME, then we probably support it. The fix is to always
define the pythonize_bool macro. For cmake, it is okay to redefine a
macro, it does not cause a warning or else.
-rw-r--r-- | offload/CMakeLists.txt | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/offload/CMakeLists.txt b/offload/CMakeLists.txt index ead2aed..4cd97a6 100644 --- a/offload/CMakeLists.txt +++ b/offload/CMakeLists.txt @@ -282,15 +282,15 @@ if(OPENMP_STANDALONE_BUILD) ${LLVM_LIBRARY_DIRS} REQUIRED ) +endif() - macro(pythonize_bool var) - if (${var}) - set(${var} True) - else() - set(${var} False) - endif() - endmacro() +macro(pythonize_bool var) +if (${var}) + set(${var} True) +else() + set(${var} False) endif() +endmacro() if(OPENMP_STANDALONE_BUILD OR TARGET omp) # Check LIBOMP_HAVE_VERSION_SCRIPT_FLAG |