summaryrefslogtreecommitdiffstats
path: root/Tests/MacroTest
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/MacroTest')
-rw-r--r--Tests/MacroTest/CMakeLists.txt5
-rw-r--r--Tests/MacroTest/context.cmake10
2 files changed, 15 insertions, 0 deletions
diff --git a/Tests/MacroTest/CMakeLists.txt b/Tests/MacroTest/CMakeLists.txt
index d0220ff..7ec50c7 100644
--- a/Tests/MacroTest/CMakeLists.txt
+++ b/Tests/MacroTest/CMakeLists.txt
@@ -86,3 +86,8 @@ ELSE(SOME_CHECK)
ENDIF(SOME_CHECK)
ADD_EXECUTABLE(MacroTest macroTest.c)
+
+MACRO(GET_CURRENT_FILE var)
+ SET(${var} ${CMAKE_CURRENT_LIST_FILE})
+ENDMACRO(GET_CURRENT_FILE)
+INCLUDE(context.cmake)
diff --git a/Tests/MacroTest/context.cmake b/Tests/MacroTest/context.cmake
new file mode 100644
index 0000000..f4d7035
--- /dev/null
+++ b/Tests/MacroTest/context.cmake
@@ -0,0 +1,10 @@
+GET_CURRENT_FILE(current_file)
+IF(NOT "${current_file}" STREQUAL "${CMAKE_CURRENT_LIST_FILE}")
+ MESSAGE(FATAL_ERROR
+ "Macro file context is broken. Expected:\n"
+ " ${CMAKE_CURRENT_LIST_FILE}\n"
+ "but got:\n"
+ " ${current_file}\n"
+ "from the macro."
+ )
+ENDIF(NOT "${current_file}" STREQUAL "${CMAKE_CURRENT_LIST_FILE}")