From a925a4cab1b722a2a24b0c1d2a1925f3b766de61 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Thu, 2 Mar 2017 21:43:39 +0100 Subject: CMakeList: do not overwrite module path Currently, the CMakeList.txt completely overwrites the CMAKE_MODULE_PATH variable. This is problematic when an upper-layer buildsystem wants to set its own module path to use custom modules. For example, Buldroot [0] provides a custom platform description [1] to fix cross-compilation issue. Overwriting the module path means that this custom platform description is not found [2]. Providing such a custom platform description is what the upstream cmake devs suggest [3], quoting: If a toolchain file specifies CMAKE_SYSTEM_NAME such that a custom `Platform/MySystem.cmake` file is loaded then the latter can set them [*] as needed for the target platform. [*] offending settings causing RPATH issues during cross-compilation. So we need to append our source tree to the module path, not replace it blindly. [0] https://buildroot.org/ [1] https://git.buildroot.org/buildroot/tree/support/misc/Buildroot.cmake [2] http://autobuild.buildroot.net/results/69f/69fb2e3b549a069e2898506db918423e6742c589/build-end.log [3] http://public.kitware.com/pipermail/cmake/2017-February/065063.html Signed-off-by: "Yann E. MORIN" --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 61689b1..2c9c61a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 2.8.8) -set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) +list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) cmake_policy(SET CMP0017 OLD) # Prefer modules in our module directory project(FASTD C ASM) -- cgit v1.2.3