summaryrefslogtreecommitdiff
path: root/tests/CMakeLists.txt
diff options
context:
space:
mode:
authorRama Krishnan Raghupathy <ramarag@microsoft.com>2015-03-06 18:15:55 -0800
committerRama Krishnan Raghupathy <ramarag@microsoft.com>2015-03-06 18:15:55 -0800
commit2a1f5a35ad3678f9175a0c937eeb07a29c65ba8a (patch)
treeb0a65a0a4785e4deb39ec1eed8eba4ddff486b79 /tests/CMakeLists.txt
parent182d4e2ef3bea406de49147bb732767fa6190f93 (diff)
downloadcoreclr-2a1f5a35ad3678f9175a0c937eeb07a29c65ba8a.tar.gz
coreclr-2a1f5a35ad3678f9175a0c937eeb07a29c65ba8a.tar.bz2
coreclr-2a1f5a35ad3678f9175a0c937eeb07a29c65ba8a.zip
With This change the tests build all the native components first and then builds the managed components. The managed components can refer to the native projects by the following construct in the .csproj
<ProjectReference Include="CMakeLists.txt"> [tfs-changeset: 1427574]
Diffstat (limited to 'tests/CMakeLists.txt')
-rw-r--r--tests/CMakeLists.txt31
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
new file mode 100644
index 0000000000..f2d444c436
--- /dev/null
+++ b/tests/CMakeLists.txt
@@ -0,0 +1,31 @@
+# Require at least version 2.8.12 of CMake
+cmake_minimum_required(VERSION 2.8.12)
+
+set(INC_PLATFORM_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src/Common/Platform)
+if (WIN32)
+ add_definitions(-DWINDOWS=1)
+endif()
+
+MACRO(SUBDIRLIST result curdir)
+ FILE(GLOB children RELATIVE ${curdir} ${curdir}/*)
+ SET(dirlist "")
+ FOREACH(child ${children})
+ IF(IS_DIRECTORY ${curdir}/${child})
+ LIST(APPEND dirlist ${child})
+ ENDIF()
+ ENDFOREACH()
+ SET(${result} ${dirlist})
+ENDMACRO()
+
+MACRO(ADDSUBDIR_REC curdir)
+ SUBDIRLIST(SUB_DIRS ${curdir})
+ FOREACH(subdir ${SUB_DIRS})
+ if(EXISTS "${curdir}/${subdir}/CMakeLists.txt")
+ ADD_SUBDIRECTORY(${curdir}/${subdir})
+ else()
+ ADDSUBDIR_REC(${curdir}/${subdir})
+ endif(EXISTS "${curdir}/${subdir}/CMakeLists.txt")
+ ENDFOREACH()
+ENDMACRO()
+
+ADDSUBDIR_REC(${CMAKE_CURRENT_SOURCE_DIR})