diff --git a/scripts/cmake/conan/conan.cmake b/scripts/cmake/conan/conan.cmake
index d492478a75328e42804d6ce502f4c35eac4ed768..2a51d3ffb6c4ad98d9806aed51bc11c28102db40 100644
--- a/scripts/cmake/conan/conan.cmake
+++ b/scripts/cmake/conan/conan.cmake
@@ -200,7 +200,7 @@ endfunction()
 
 
 macro(parse_arguments)
-  set(options BASIC_SETUP CMAKE_TARGETS UPDATE)
+  set(options BASIC_SETUP CMAKE_TARGETS UPDATE KEEP_RPATHS)
   set(oneValueArgs CONANFILE)
   set(multiValueArgs REQUIRES OPTIONS IMPORTS BUILD CONAN_COMMAND)
   cmake_parse_arguments(ARGUMENTS "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
@@ -328,9 +328,17 @@ macro(conan_cmake_run)
 
     if(ARGUMENTS_BASIC_SETUP)
       if(ARGUMENTS_CMAKE_TARGETS)
-        conan_basic_setup(TARGETS)
+        if(ARGUMENTS_KEEP_RPATHS)
+            conan_basic_setup(TARGETS KEEP_RPATHS)
+        else()
+            conan_basic_setup(TARGETS)
+        endif()
       else()
-        conan_basic_setup()
+        if(ARGUMENTS_KEEP_RPATHS)
+            conan_basic_setup(KEEP_RPATHS)
+        else()
+            conan_basic_setup()
+        endif()
       endif()
     endif()
 endmacro()