aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xcmake/modules/AddLLVM.cmake16
1 files changed, 11 insertions, 5 deletions
diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
index 43ee9a08b2..cfb876e076 100755
--- a/cmake/modules/AddLLVM.cmake
+++ b/cmake/modules/AddLLVM.cmake
@@ -155,14 +155,20 @@ macro(add_llvm_external_project name)
endif()
endmacro(add_llvm_external_project)
-# Generic support for adding a unittest.
-function(add_unittest test_suite test_name)
+# Returns directory where unittest should reside.
+function(get_unittest_directory dir)
if (CMAKE_BUILD_TYPE)
- set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
- ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE})
+ set(result ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE})
else()
- set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
+ set(result ${CMAKE_CURRENT_BINARY_DIR})
endif()
+ set(${dir} ${result} PARENT_SCOPE)
+endfunction()
+
+# Generic support for adding a unittest.
+function(add_unittest test_suite test_name)
+ get_unittest_directory(OUTPUT_DIR)
+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${OUTPUT_DIR})
if( NOT LLVM_BUILD_TESTS )
set(EXCLUDE_FROM_ALL ON)
endif()