|
|
@@ -1,16 +1,45 @@
|
|
|
set(CMAKE_CONFIGURATION_TYPES Debug)
|
|
|
|
|
|
+# Test regular tree grouping.
|
|
|
set(SRC_FILES
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/Dir/foo.cpp
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/Dir/DirNested/foo_nested.cpp
|
|
|
)
|
|
|
|
|
|
+source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${SRC_FILES})
|
|
|
+
|
|
|
+
|
|
|
+# Test files that are not present at configuration time.
|
|
|
+set(GENERATED_SRC_FILES
|
|
|
+ ${CMAKE_CURRENT_BINARY_DIR}/Generated/generated.cpp
|
|
|
+)
|
|
|
+
|
|
|
+file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/Generated)
|
|
|
+
|
|
|
+if(WIN32)
|
|
|
+ add_custom_command(OUTPUT ${GENERATED_SRC_FILES}
|
|
|
+ COMMAND echo. 2>${CMAKE_CURRENT_BINARY_DIR}\\Generated\\generated.cpp
|
|
|
+ )
|
|
|
+else()
|
|
|
+ add_custom_command(OUTPUT ${GENERATED_SRC_FILES}
|
|
|
+ COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/Generated/generated.cpp
|
|
|
+ )
|
|
|
+endif()
|
|
|
+
|
|
|
+source_group(TREE ${CMAKE_CURRENT_BINARY_DIR} FILES ${GENERATED_SRC_FILES})
|
|
|
+
|
|
|
+
|
|
|
+# Test prefixed tree grouping.
|
|
|
set(PREFIXED_SRC_FILES
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/Prefixed/bar.cpp
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/Prefixed/PrefixedNested/bar_nested.cpp
|
|
|
)
|
|
|
|
|
|
-add_custom_target(SourceGroupTree SOURCES ${SRC_FILES} ${PREFIXED_SRC_FILES})
|
|
|
+add_custom_target(SourceGroupTree
|
|
|
+ SOURCES
|
|
|
+ ${SRC_FILES}
|
|
|
+ ${GENERATED_SRC_FILES}
|
|
|
+ ${PREFIXED_SRC_FILES}
|
|
|
+)
|
|
|
|
|
|
-source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${SRC_FILES})
|
|
|
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR}/Prefixed PREFIX SourcesPrefix FILES ${PREFIXED_SRC_FILES})
|