From ff1076ca3333db4b23d0c05e80d271c44af00260 Mon Sep 17 00:00:00 2001 From: Oliver Thomson Brown Date: Tue, 28 Oct 2025 11:42:33 +0000 Subject: [PATCH 1/3] docs/cmake.md: fixed formatting of non-default options for mt and distribution --- docs/cmake.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/cmake.md b/docs/cmake.md index 9240b679..b07dbd4a 100644 --- a/docs/cmake.md +++ b/docs/cmake.md @@ -36,8 +36,8 @@ make | `VERBOSE_LIB_NAME` | (`OFF`), `ON` | When turned on `LIB_NAME` will be modified according to the other configuration options chosen. For example compiling QuEST with multithreading, distribution, and double precision with `VERBOSE_LIB_NAME` turned on creates `libQuEST-fp2+mt+mpi.so`. | | `FLOAT_PRECISION` | (`2`), `1`, `4` | Determines which floating-point precision QuEST will use: double, single, or quad. *Note: Quad precision is not supported when also compiling for GPU.* | | `BUILD_EXAMPLES` | (`OFF`), `ON` | Determines whether the example programs will be built alongside QuEST. Note that `min_example` is always built. | -| `ENABLE_MULTITHREADING` | (`ON`), OFF | Determines whether QuEST will be built with support for parallelisation with OpenMP. | -| `ENABLE_DISTRIBUTION` | (`OFF`), ON | Determines whether QuEST will be built with support for parallelisation with MPI. | +| `ENABLE_MULTITHREADING` | (`ON`), `OFF` | Determines whether QuEST will be built with support for parallelisation with OpenMP. | +| `ENABLE_DISTRIBUTION` | (`OFF`), `ON` | Determines whether QuEST will be built with support for parallelisation with MPI. | | `ENABLE_CUDA` | (`OFF`), `ON` | Determines whether QuEST will be built with support for NVIDIA GPU acceleration. If turned on, `CMAKE_CUDA_ARCHITECTURES` should probably also be set. | | `ENABLE_CUQUANTUM` | (`OFF`), `ON` | Determines whether QuEST will make use of the NVIDIA CuQuantum library. Cannot be turned on if `ENABLE_CUDA` is off. | | `ENABLE_HIP` | (`OFF`), `ON` | Determines whether QuEST will be built with support for AMD GPU acceleration. If turned on, `CMAKE_HIP_ARCHITECTURES` should probably also be set. | From 4b8f82656f4469fcf5ff5fdc9dfe63e82246e4d0 Mon Sep 17 00:00:00 2001 From: Oliver Thomson Brown Date: Tue, 28 Oct 2025 11:54:41 +0000 Subject: [PATCH 2/3] cmake: wrapped user source install in if(INSTALL_BINARIES) --- CMakeLists.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7831a17e..5d308795 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -625,7 +625,11 @@ if (USER_SOURCE AND OUTPUT_EXE) add_executable(${OUTPUT_EXE} ${USER_SOURCE}) target_link_libraries(${OUTPUT_EXE} PUBLIC QuEST) - install(TARGETS ${OUTPUT_EXE} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + + if (INSTALL_BINARIES) + install(TARGETS ${OUTPUT_EXE} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + endif() + setup_quest_rpath(${OUTPUT_EXE}) endif() From d1dd6e336d635202f597fed8771c69a4b294a2d4 Mon Sep 17 00:00:00 2001 From: Oliver Thomson Brown Date: Tue, 28 Oct 2025 11:57:14 +0000 Subject: [PATCH 3/3] docs/cmake.md: added INSTALL_BINARIES option --- docs/cmake.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/cmake.md b/docs/cmake.md index b07dbd4a..d3c23ee4 100644 --- a/docs/cmake.md +++ b/docs/cmake.md @@ -36,6 +36,7 @@ make | `VERBOSE_LIB_NAME` | (`OFF`), `ON` | When turned on `LIB_NAME` will be modified according to the other configuration options chosen. For example compiling QuEST with multithreading, distribution, and double precision with `VERBOSE_LIB_NAME` turned on creates `libQuEST-fp2+mt+mpi.so`. | | `FLOAT_PRECISION` | (`2`), `1`, `4` | Determines which floating-point precision QuEST will use: double, single, or quad. *Note: Quad precision is not supported when also compiling for GPU.* | | `BUILD_EXAMPLES` | (`OFF`), `ON` | Determines whether the example programs will be built alongside QuEST. Note that `min_example` is always built. | +| `INSTALL_BINARIES` | (`OFF`), `ON` | Determines whether compiled binaries such as the examples will be installed as well as the QuEST library. | | `ENABLE_MULTITHREADING` | (`ON`), `OFF` | Determines whether QuEST will be built with support for parallelisation with OpenMP. | | `ENABLE_DISTRIBUTION` | (`OFF`), `ON` | Determines whether QuEST will be built with support for parallelisation with MPI. | | `ENABLE_CUDA` | (`OFF`), `ON` | Determines whether QuEST will be built with support for NVIDIA GPU acceleration. If turned on, `CMAKE_CUDA_ARCHITECTURES` should probably also be set. |