From 4ac9ee10ade455d50c5ca687876f30fd9e0b640a Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Tue, 21 Jul 2020 13:41:04 -0400
Subject: Tests: Rename test RunCMake.{interface_library => InterfaceLibrary}

Our RunCMake.<lower-case> namespace is meant for testing individual
CMake language commands.
---
 Tests/RunCMake/CMakeLists.txt                      |  2 +-
 Tests/RunCMake/InterfaceLibrary/CMakeLists.txt     |  3 +
 .../IMPORTED_LIBNAME-bad-value-result.txt          |  1 +
 .../IMPORTED_LIBNAME-bad-value-stderr.txt          | 44 +++++++++++
 .../IMPORTED_LIBNAME-bad-value.cmake               |  6 ++
 .../IMPORTED_LIBNAME-non-iface-result.txt          |  1 +
 .../IMPORTED_LIBNAME-non-iface-stderr.txt          | 45 +++++++++++
 .../IMPORTED_LIBNAME-non-iface.cmake               | 17 +++++
 .../IMPORTED_LIBNAME-non-imported-result.txt       |  1 +
 .../IMPORTED_LIBNAME-non-imported-stderr.txt       | 21 +++++
 .../IMPORTED_LIBNAME-non-imported.cmake            |  5 ++
 Tests/RunCMake/InterfaceLibrary/RunCMakeTest.cmake | 13 ++++
 .../add_custom_command-TARGET-result.txt           |  1 +
 .../add_custom_command-TARGET-stderr.txt           |  5 ++
 .../add_custom_command-TARGET.cmake                |  6 ++
 .../InterfaceLibrary/genex_link-result.txt         |  1 +
 Tests/RunCMake/InterfaceLibrary/genex_link.cmake   | 22 ++++++
 .../InterfaceLibrary/global-interface-result.txt   |  1 +
 .../InterfaceLibrary/global-interface-stderr.txt   |  9 +++
 .../InterfaceLibrary/global-interface.cmake        |  2 +
 .../InterfaceLibrary/invalid_name-result.txt       |  1 +
 .../InterfaceLibrary/invalid_name-stderr.txt       | 15 ++++
 Tests/RunCMake/InterfaceLibrary/invalid_name.cmake |  6 ++
 .../InterfaceLibrary/invalid_signature-result.txt  |  1 +
 .../InterfaceLibrary/invalid_signature-stderr.txt  | 89 ++++++++++++++++++++++
 .../InterfaceLibrary/invalid_signature.cmake       | 20 +++++
 .../RunCMake/InterfaceLibrary/no_shared_libs.cmake |  5 ++
 .../InterfaceLibrary/target_commands-result.txt    |  1 +
 .../InterfaceLibrary/target_commands-stderr.txt    | 47 ++++++++++++
 .../InterfaceLibrary/target_commands.cmake         | 13 ++++
 .../RunCMake/InterfaceLibrary/whitelist-result.txt |  1 +
 .../RunCMake/InterfaceLibrary/whitelist-stderr.txt | 19 +++++
 Tests/RunCMake/InterfaceLibrary/whitelist.cmake    | 25 ++++++
 Tests/RunCMake/interface_library/CMakeLists.txt    |  3 -
 .../IMPORTED_LIBNAME-bad-value-result.txt          |  1 -
 .../IMPORTED_LIBNAME-bad-value-stderr.txt          | 44 -----------
 .../IMPORTED_LIBNAME-bad-value.cmake               |  6 --
 .../IMPORTED_LIBNAME-non-iface-result.txt          |  1 -
 .../IMPORTED_LIBNAME-non-iface-stderr.txt          | 45 -----------
 .../IMPORTED_LIBNAME-non-iface.cmake               | 17 -----
 .../IMPORTED_LIBNAME-non-imported-result.txt       |  1 -
 .../IMPORTED_LIBNAME-non-imported-stderr.txt       | 21 -----
 .../IMPORTED_LIBNAME-non-imported.cmake            |  5 --
 .../RunCMake/interface_library/RunCMakeTest.cmake  | 13 ----
 .../add_custom_command-TARGET-result.txt           |  1 -
 .../add_custom_command-TARGET-stderr.txt           |  5 --
 .../add_custom_command-TARGET.cmake                |  6 --
 .../interface_library/genex_link-result.txt        |  1 -
 Tests/RunCMake/interface_library/genex_link.cmake  | 22 ------
 .../interface_library/global-interface-result.txt  |  1 -
 .../interface_library/global-interface-stderr.txt  |  9 ---
 .../interface_library/global-interface.cmake       |  2 -
 .../interface_library/invalid_name-result.txt      |  1 -
 .../interface_library/invalid_name-stderr.txt      | 15 ----
 .../RunCMake/interface_library/invalid_name.cmake  |  6 --
 .../interface_library/invalid_signature-result.txt |  1 -
 .../interface_library/invalid_signature-stderr.txt | 89 ----------------------
 .../interface_library/invalid_signature.cmake      | 20 -----
 .../interface_library/no_shared_libs.cmake         |  5 --
 .../interface_library/target_commands-result.txt   |  1 -
 .../interface_library/target_commands-stderr.txt   | 47 ------------
 .../interface_library/target_commands.cmake        | 13 ----
 .../interface_library/whitelist-result.txt         |  1 -
 .../interface_library/whitelist-stderr.txt         | 19 -----
 Tests/RunCMake/interface_library/whitelist.cmake   | 25 ------
 65 files changed, 448 insertions(+), 448 deletions(-)
 create mode 100644 Tests/RunCMake/InterfaceLibrary/CMakeLists.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/RunCMakeTest.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/genex_link-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/genex_link.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/global-interface-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/global-interface-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/global-interface.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/invalid_name-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/invalid_name-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/invalid_name.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/invalid_signature-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/invalid_signature-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/invalid_signature.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/no_shared_libs.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/target_commands-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/target_commands-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/target_commands.cmake
 create mode 100644 Tests/RunCMake/InterfaceLibrary/whitelist-result.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/whitelist-stderr.txt
 create mode 100644 Tests/RunCMake/InterfaceLibrary/whitelist.cmake
 delete mode 100644 Tests/RunCMake/interface_library/CMakeLists.txt
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value.cmake
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface.cmake
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported.cmake
 delete mode 100644 Tests/RunCMake/interface_library/RunCMakeTest.cmake
 delete mode 100644 Tests/RunCMake/interface_library/add_custom_command-TARGET-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/add_custom_command-TARGET-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/add_custom_command-TARGET.cmake
 delete mode 100644 Tests/RunCMake/interface_library/genex_link-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/genex_link.cmake
 delete mode 100644 Tests/RunCMake/interface_library/global-interface-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/global-interface-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/global-interface.cmake
 delete mode 100644 Tests/RunCMake/interface_library/invalid_name-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/invalid_name-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/invalid_name.cmake
 delete mode 100644 Tests/RunCMake/interface_library/invalid_signature-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/invalid_signature-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/invalid_signature.cmake
 delete mode 100644 Tests/RunCMake/interface_library/no_shared_libs.cmake
 delete mode 100644 Tests/RunCMake/interface_library/target_commands-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/target_commands-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/target_commands.cmake
 delete mode 100644 Tests/RunCMake/interface_library/whitelist-result.txt
 delete mode 100644 Tests/RunCMake/interface_library/whitelist-stderr.txt
 delete mode 100644 Tests/RunCMake/interface_library/whitelist.cmake

diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
index 422d475..36b016f 100644
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
@@ -394,7 +394,7 @@ add_RunCMake_test(while)
 add_RunCMake_test(CMP0004)
 add_RunCMake_test(TargetPolicies)
 add_RunCMake_test(alias_targets)
-add_RunCMake_test(interface_library)
+add_RunCMake_test(InterfaceLibrary)
 add_RunCMake_test(no_install_prefix)
 add_RunCMake_test(configure_file)
 add_RunCMake_test(CTestTimeout -DTIMEOUT=${CTestTestTimeout_TIME})
diff --git a/Tests/RunCMake/InterfaceLibrary/CMakeLists.txt b/Tests/RunCMake/InterfaceLibrary/CMakeLists.txt
new file mode 100644
index 0000000..74b3ff8
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/CMakeLists.txt
@@ -0,0 +1,3 @@
+cmake_minimum_required(VERSION 3.3)
+project(${RunCMake_TEST} NONE)
+include(${RunCMake_TEST}.cmake)
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value-result.txt b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value-stderr.txt b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value-stderr.txt
new file mode 100644
index 0000000..454c655
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value-stderr.txt
@@ -0,0 +1,44 @@
+^CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property value
+
+    -flag
+
+  may not start with '-'.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property value
+
+    item1;item2
+
+  may not contain ';'.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property value
+
+    /path/to/item1
+
+  may not contain '/'.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property value
+
+    \\path\\to\\item1
+
+  may not contain '\\'.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property value
+
+    c:\\path\\to\\item1
+
+  may not contain ':'.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value.cmake b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value.cmake
new file mode 100644
index 0000000..1af65b4
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-bad-value.cmake
@@ -0,0 +1,6 @@
+add_library(MyTarget INTERFACE IMPORTED)
+set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME -flag)
+set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME item1 item2)
+set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME /path/to/item1)
+set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME \\path\\to\\item1)
+set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME c:\\path\\to\\item1)
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface-result.txt b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface-stderr.txt b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface-stderr.txt
new file mode 100644
index 0000000..3a329d2
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface-stderr.txt
@@ -0,0 +1,45 @@
+^CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
+  targets.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property may not be APPENDed.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME_DEBUG property may be set only on imported INTERFACE
+  library targets.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME_DEBUG property may not be APPENDed.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
+  targets.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
+  targets.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
+  targets.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
+  targets.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface.cmake b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface.cmake
new file mode 100644
index 0000000..fe6841a
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-iface.cmake
@@ -0,0 +1,17 @@
+add_custom_target(MyCustom)
+set_property(TARGET MyCustom PROPERTY IMPORTED_LIBNAME item1)
+set_property(TARGET MyCustom APPEND PROPERTY IMPORTED_LIBNAME item2)
+set_property(TARGET MyCustom PROPERTY IMPORTED_LIBNAME_DEBUG item1)
+set_property(TARGET MyCustom APPEND PROPERTY IMPORTED_LIBNAME_DEBUG item2)
+
+add_library(MyStatic STATIC IMPORTED)
+set_property(TARGET MyStatic PROPERTY IMPORTED_LIBNAME item1)
+
+add_library(MyShared SHARED IMPORTED)
+set_property(TARGET MyShared PROPERTY IMPORTED_LIBNAME item1)
+
+add_library(MyModule MODULE IMPORTED)
+set_property(TARGET MyModule PROPERTY IMPORTED_LIBNAME item1)
+
+add_executable(MyExe IMPORTED)
+set_property(TARGET MyExe PROPERTY IMPORTED_LIBNAME item1)
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported-result.txt b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported-stderr.txt b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported-stderr.txt
new file mode 100644
index 0000000..e9d94cf
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported-stderr.txt
@@ -0,0 +1,21 @@
+^CMake Error at IMPORTED_LIBNAME-non-imported.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
+  targets.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-imported.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME property may not be APPENDed.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-imported.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME_DEBUG property may be set only on imported INTERFACE
+  library targets.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)
++
+CMake Error at IMPORTED_LIBNAME-non-imported.cmake:[0-9]+ \(set_property\):
+  IMPORTED_LIBNAME_DEBUG property may not be APPENDed.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported.cmake b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported.cmake
new file mode 100644
index 0000000..07a67d7
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/IMPORTED_LIBNAME-non-imported.cmake
@@ -0,0 +1,5 @@
+add_library(MyTarget INTERFACE)
+set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME item1)
+set_property(TARGET MyTarget APPEND PROPERTY IMPORTED_LIBNAME item2)
+set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME_DEBUG item1)
+set_property(TARGET MyTarget APPEND PROPERTY IMPORTED_LIBNAME_DEBUG item2)
diff --git a/Tests/RunCMake/InterfaceLibrary/RunCMakeTest.cmake b/Tests/RunCMake/InterfaceLibrary/RunCMakeTest.cmake
new file mode 100644
index 0000000..5a6af1d
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/RunCMakeTest.cmake
@@ -0,0 +1,13 @@
+include(RunCMake)
+
+run_cmake(invalid_name)
+run_cmake(target_commands)
+run_cmake(no_shared_libs)
+run_cmake(whitelist)
+run_cmake(invalid_signature)
+run_cmake(global-interface)
+run_cmake(genex_link)
+run_cmake(add_custom_command-TARGET)
+run_cmake(IMPORTED_LIBNAME-bad-value)
+run_cmake(IMPORTED_LIBNAME-non-iface)
+run_cmake(IMPORTED_LIBNAME-non-imported)
diff --git a/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET-result.txt b/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET-stderr.txt b/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET-stderr.txt
new file mode 100644
index 0000000..c095262
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET-stderr.txt
@@ -0,0 +1,5 @@
+CMake Error at add_custom_command-TARGET.cmake:4 \(add_custom_command\):
+  Target "iface" is an INTERFACE library that may not have PRE_BUILD,
+  PRE_LINK, or POST_BUILD commands.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET.cmake b/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET.cmake
new file mode 100644
index 0000000..a5136ef
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/add_custom_command-TARGET.cmake
@@ -0,0 +1,6 @@
+
+add_library(iface INTERFACE)
+
+add_custom_command(TARGET iface
+  COMMAND "${CMAKE_COMMAND}" -E echo test
+)
diff --git a/Tests/RunCMake/InterfaceLibrary/genex_link-result.txt b/Tests/RunCMake/InterfaceLibrary/genex_link-result.txt
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/genex_link-result.txt
@@ -0,0 +1 @@
+0
diff --git a/Tests/RunCMake/InterfaceLibrary/genex_link.cmake b/Tests/RunCMake/InterfaceLibrary/genex_link.cmake
new file mode 100644
index 0000000..0dbf029
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/genex_link.cmake
@@ -0,0 +1,22 @@
+
+cmake_minimum_required(VERSION 2.8.12.20131125 FATAL_ERROR)
+
+project(genex_link)
+
+set(_main_cpp ${CMAKE_CURRENT_BINARY_DIR}/main.cpp)
+file(WRITE ${_main_cpp}
+  "int main(int argc, char** argv) { return 0; }\n"
+)
+
+add_library(foo::bar INTERFACE IMPORTED)
+set_target_properties(foo::bar
+  PROPERTIES
+    INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}"
+    # When not using a generator expression here, no error is generated
+    INTERFACE_LINK_LIBRARIES "$<$<NOT:$<CONFIG:DEBUG>>:foo_bar.lib>"
+)
+
+add_executable(main ${_main_cpp})
+target_include_directories(main PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}")
+
+target_link_libraries(main foo::bar)
diff --git a/Tests/RunCMake/InterfaceLibrary/global-interface-result.txt b/Tests/RunCMake/InterfaceLibrary/global-interface-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/global-interface-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/global-interface-stderr.txt b/Tests/RunCMake/InterfaceLibrary/global-interface-stderr.txt
new file mode 100644
index 0000000..38585eb
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/global-interface-stderr.txt
@@ -0,0 +1,9 @@
+CMake Error at global-interface.cmake:2 \(add_library\):
+  Cannot find source file:
+
+    GLOBAL
+
+  Tried extensions \.c \.C .*
+.*
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/InterfaceLibrary/global-interface.cmake b/Tests/RunCMake/InterfaceLibrary/global-interface.cmake
new file mode 100644
index 0000000..d2bfc64
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/global-interface.cmake
@@ -0,0 +1,2 @@
+
+add_library(iface GLOBAL INTERFACE)
diff --git a/Tests/RunCMake/InterfaceLibrary/invalid_name-result.txt b/Tests/RunCMake/InterfaceLibrary/invalid_name-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/invalid_name-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/invalid_name-stderr.txt b/Tests/RunCMake/InterfaceLibrary/invalid_name-stderr.txt
new file mode 100644
index 0000000..e14fcde
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/invalid_name-stderr.txt
@@ -0,0 +1,15 @@
+CMake Error at invalid_name.cmake:2 \(add_library\):
+  add_library Invalid name for INTERFACE library target: if\$ace
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_name.cmake:4 \(add_library\):
+  add_library Invalid name for INTERFACE library target: iface::target
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_name.cmake:6 \(add_library\):
+  add_library Invalid name for IMPORTED INTERFACE library target:
+  if\$target_imported
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/InterfaceLibrary/invalid_name.cmake b/Tests/RunCMake/InterfaceLibrary/invalid_name.cmake
new file mode 100644
index 0000000..575fcc6
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/invalid_name.cmake
@@ -0,0 +1,6 @@
+cmake_minimum_required(VERSION 2.8.12)
+add_library(if$ace INTERFACE)
+
+add_library(iface::target INTERFACE)
+
+add_library(if$target_imported INTERFACE IMPORTED)
diff --git a/Tests/RunCMake/InterfaceLibrary/invalid_signature-result.txt b/Tests/RunCMake/InterfaceLibrary/invalid_signature-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/invalid_signature-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/invalid_signature-stderr.txt b/Tests/RunCMake/InterfaceLibrary/invalid_signature-stderr.txt
new file mode 100644
index 0000000..6374b33
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/invalid_signature-stderr.txt
@@ -0,0 +1,89 @@
+CMake Error at invalid_signature.cmake:2 \(add_library\):
+  add_library INTERFACE library requires no source arguments.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:3 \(add_library\):
+  add_library INTERFACE library specified with conflicting/multiple types.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:4 \(add_library\):
+  add_library INTERFACE library specified with conflicting/multiple types.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:5 \(add_library\):
+  add_library INTERFACE library specified with conflicting/multiple types.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:6 \(add_library\):
+  add_library INTERFACE library specified with conflicting/multiple types.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:7 \(add_library\):
+  add_library INTERFACE library specified with conflicting/multiple types.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:8 \(add_library\):
+  add_library INTERFACE library specified with conflicting/multiple types.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:9 \(add_library\):
+  add_library INTERFACE library specified with conflicting STATIC type.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:10 \(add_library\):
+  add_library INTERFACE library specified with conflicting SHARED type.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:11 \(add_library\):
+  add_library INTERFACE library specified with conflicting MODULE type.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:12 \(add_library\):
+  add_library INTERFACE library specified with conflicting OBJECT type.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:13 \(add_library\):
+  add_library INTERFACE library specified with conflicting UNKNOWN type.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:14 \(add_library\):
+  add_library INTERFACE library specified with conflicting ALIAS type.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:15 \(add_library\):
+  add_library INTERFACE library specified with conflicting ALIAS type.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:16 \(add_library\):
+  add_library INTERFACE library specified with conflicting/multiple types.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:17 \(add_library\):
+  add_library INTERFACE library may not be used with EXCLUDE_FROM_ALL.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:18 \(add_library\):
+  add_library INTERFACE library may not be used with EXCLUDE_FROM_ALL.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at invalid_signature.cmake:20 \(add_library\):
+  add_library GLOBAL option may only be used with IMPORTED libraries.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/InterfaceLibrary/invalid_signature.cmake b/Tests/RunCMake/InterfaceLibrary/invalid_signature.cmake
new file mode 100644
index 0000000..4e53534
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/invalid_signature.cmake
@@ -0,0 +1,20 @@
+
+add_library(iface1 INTERFACE empty.cpp)
+add_library(iface3 STATIC INTERFACE)
+add_library(iface4 STATIC INTERFACE empty.cpp)
+add_library(iface5 SHARED INTERFACE)
+add_library(iface6 MODULE INTERFACE)
+add_library(iface7 OBJECT INTERFACE)
+add_library(iface8 UNKNOWN INTERFACE)
+add_library(iface9 INTERFACE STATIC)
+add_library(iface10 INTERFACE SHARED)
+add_library(iface11 INTERFACE MODULE)
+add_library(iface12 INTERFACE OBJECT)
+add_library(iface13 INTERFACE UNKNOWN)
+add_library(iface14 INTERFACE ALIAS)
+add_library(iface15 ALIAS INTERFACE)
+add_library(iface16 INTERFACE INTERFACE)
+add_library(iface17 INTERFACE EXCLUDE_FROM_ALL)
+add_library(iface18 EXCLUDE_FROM_ALL INTERFACE)
+# add_library(iface19 GLOBAL INTERFACE) Tested separately
+add_library(iface20 INTERFACE GLOBAL)
diff --git a/Tests/RunCMake/InterfaceLibrary/no_shared_libs.cmake b/Tests/RunCMake/InterfaceLibrary/no_shared_libs.cmake
new file mode 100644
index 0000000..ed81878
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/no_shared_libs.cmake
@@ -0,0 +1,5 @@
+
+cmake_minimum_required(VERSION 2.8.12.20131009)
+set_property(GLOBAL PROPERTY TARGET_SUPPORTS_SHARED_LIBS FALSE)
+add_library(foo INTERFACE)
+target_compile_definitions(foo INTERFACE FOO_DEFINE)
diff --git a/Tests/RunCMake/InterfaceLibrary/target_commands-result.txt b/Tests/RunCMake/InterfaceLibrary/target_commands-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/target_commands-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/target_commands-stderr.txt b/Tests/RunCMake/InterfaceLibrary/target_commands-stderr.txt
new file mode 100644
index 0000000..9362a75
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/target_commands-stderr.txt
@@ -0,0 +1,47 @@
+CMake Error at target_commands.cmake:4 \(target_link_libraries\):
+  INTERFACE library can only be used with the INTERFACE keyword of
+  target_link_libraries
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at target_commands.cmake:5 \(target_link_libraries\):
+  INTERFACE library can only be used with the INTERFACE keyword of
+  target_link_libraries
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at target_commands.cmake:6 \(target_link_libraries\):
+  INTERFACE library can only be used with the INTERFACE keyword of
+  target_link_libraries
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at target_commands.cmake:7 \(target_link_libraries\):
+  INTERFACE library can only be used with the INTERFACE keyword of
+  target_link_libraries
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at target_commands.cmake:9 \(target_include_directories\):
+  target_include_directories may only set INTERFACE properties on INTERFACE
+  targets
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at target_commands.cmake:10 \(target_include_directories\):
+  target_include_directories may only set INTERFACE properties on INTERFACE
+  targets
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at target_commands.cmake:12 \(target_compile_definitions\):
+  target_compile_definitions may only set INTERFACE properties on INTERFACE
+  targets
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
++
+CMake Error at target_commands.cmake:13 \(target_compile_definitions\):
+  target_compile_definitions may only set INTERFACE properties on INTERFACE
+  targets
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/InterfaceLibrary/target_commands.cmake b/Tests/RunCMake/InterfaceLibrary/target_commands.cmake
new file mode 100644
index 0000000..3182e89
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/target_commands.cmake
@@ -0,0 +1,13 @@
+
+add_library(iface INTERFACE)
+
+target_link_libraries(iface PRIVATE foo)
+target_link_libraries(iface PUBLIC foo)
+target_link_libraries(iface foo)
+target_link_libraries(iface LINK_INTERFACE_LIBRARIES foo)
+
+target_include_directories(iface PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}")
+target_include_directories(iface PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}")
+
+target_compile_definitions(iface PRIVATE SOME_DEFINE)
+target_compile_definitions(iface PUBLIC SOME_DEFINE)
diff --git a/Tests/RunCMake/InterfaceLibrary/whitelist-result.txt b/Tests/RunCMake/InterfaceLibrary/whitelist-result.txt
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/whitelist-result.txt
@@ -0,0 +1 @@
+1
diff --git a/Tests/RunCMake/InterfaceLibrary/whitelist-stderr.txt b/Tests/RunCMake/InterfaceLibrary/whitelist-stderr.txt
new file mode 100644
index 0000000..577c0cc
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/whitelist-stderr.txt
@@ -0,0 +1,19 @@
+CMake Error at whitelist.cmake:4 \(set_property\):
+  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
+  property "OUTPUT_NAME" is not allowed.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
+
+
+CMake Error at whitelist.cmake:5 \(set_property\):
+  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
+  property "OUTPUT_NAME" is not allowed.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
+
+
+CMake Error at whitelist.cmake:6 \(get_target_property\):
+  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
+  property "OUTPUT_NAME" is not allowed.
+Call Stack \(most recent call first\):
+  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/InterfaceLibrary/whitelist.cmake b/Tests/RunCMake/InterfaceLibrary/whitelist.cmake
new file mode 100644
index 0000000..0db6375
--- /dev/null
+++ b/Tests/RunCMake/InterfaceLibrary/whitelist.cmake
@@ -0,0 +1,25 @@
+
+add_library(iface INTERFACE)
+
+set_property(TARGET iface PROPERTY OUTPUT_NAME output)
+set_property(TARGET iface APPEND PROPERTY OUTPUT_NAME append)
+get_target_property(outname iface OUTPUT_NAME)
+
+# Properties starting with `_` are allowed.
+set_property(TARGET iface PROPERTY "_custom_property" output)
+set_property(TARGET iface APPEND PROPERTY "_custom_property" append)
+get_target_property(outname iface "_custom_property")
+
+# Properties starting with a lowercase letter are allowed.
+set_property(TARGET iface PROPERTY "custom_property" output)
+set_property(TARGET iface APPEND PROPERTY "custom_property" append)
+get_target_property(outname iface "custom_property")
+
+# PUBLIC_HEADER / PRIVATE_HEADER properties are allowed
+set_property(TARGET iface PROPERTY PUBLIC_HEADER foo.h)
+set_property(TARGET iface APPEND PROPERTY PUBLIC_HEADER bar.h)
+get_target_property(outname iface PUBLIC_HEADER)
+
+set_property(TARGET iface PROPERTY PRIVATE_HEADER foo.h)
+set_property(TARGET iface APPEND PROPERTY PRIVATE_HEADER bar.h)
+get_target_property(outname iface PRIVATE_HEADER)
diff --git a/Tests/RunCMake/interface_library/CMakeLists.txt b/Tests/RunCMake/interface_library/CMakeLists.txt
deleted file mode 100644
index 74b3ff8..0000000
--- a/Tests/RunCMake/interface_library/CMakeLists.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-cmake_minimum_required(VERSION 3.3)
-project(${RunCMake_TEST} NONE)
-include(${RunCMake_TEST}.cmake)
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value-result.txt b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value-stderr.txt b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value-stderr.txt
deleted file mode 100644
index 454c655..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value-stderr.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-^CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property value
-
-    -flag
-
-  may not start with '-'.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property value
-
-    item1;item2
-
-  may not contain ';'.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property value
-
-    /path/to/item1
-
-  may not contain '/'.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property value
-
-    \\path\\to\\item1
-
-  may not contain '\\'.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-bad-value.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property value
-
-    c:\\path\\to\\item1
-
-  may not contain ':'.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value.cmake b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value.cmake
deleted file mode 100644
index 1af65b4..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-bad-value.cmake
+++ /dev/null
@@ -1,6 +0,0 @@
-add_library(MyTarget INTERFACE IMPORTED)
-set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME -flag)
-set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME item1 item2)
-set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME /path/to/item1)
-set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME \\path\\to\\item1)
-set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME c:\\path\\to\\item1)
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface-result.txt b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface-stderr.txt b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface-stderr.txt
deleted file mode 100644
index 3a329d2..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface-stderr.txt
+++ /dev/null
@@ -1,45 +0,0 @@
-^CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
-  targets.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property may not be APPENDed.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME_DEBUG property may be set only on imported INTERFACE
-  library targets.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME_DEBUG property may not be APPENDed.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
-  targets.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
-  targets.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
-  targets.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-iface.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
-  targets.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface.cmake b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface.cmake
deleted file mode 100644
index fe6841a..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-iface.cmake
+++ /dev/null
@@ -1,17 +0,0 @@
-add_custom_target(MyCustom)
-set_property(TARGET MyCustom PROPERTY IMPORTED_LIBNAME item1)
-set_property(TARGET MyCustom APPEND PROPERTY IMPORTED_LIBNAME item2)
-set_property(TARGET MyCustom PROPERTY IMPORTED_LIBNAME_DEBUG item1)
-set_property(TARGET MyCustom APPEND PROPERTY IMPORTED_LIBNAME_DEBUG item2)
-
-add_library(MyStatic STATIC IMPORTED)
-set_property(TARGET MyStatic PROPERTY IMPORTED_LIBNAME item1)
-
-add_library(MyShared SHARED IMPORTED)
-set_property(TARGET MyShared PROPERTY IMPORTED_LIBNAME item1)
-
-add_library(MyModule MODULE IMPORTED)
-set_property(TARGET MyModule PROPERTY IMPORTED_LIBNAME item1)
-
-add_executable(MyExe IMPORTED)
-set_property(TARGET MyExe PROPERTY IMPORTED_LIBNAME item1)
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported-result.txt b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported-stderr.txt b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported-stderr.txt
deleted file mode 100644
index e9d94cf..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported-stderr.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-^CMake Error at IMPORTED_LIBNAME-non-imported.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property may be set only on imported INTERFACE library
-  targets.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-imported.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME property may not be APPENDed.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-imported.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME_DEBUG property may be set only on imported INTERFACE
-  library targets.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)
-+
-CMake Error at IMPORTED_LIBNAME-non-imported.cmake:[0-9]+ \(set_property\):
-  IMPORTED_LIBNAME_DEBUG property may not be APPENDed.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:[0-9]+ \(include\)$
diff --git a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported.cmake b/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported.cmake
deleted file mode 100644
index 07a67d7..0000000
--- a/Tests/RunCMake/interface_library/IMPORTED_LIBNAME-non-imported.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-add_library(MyTarget INTERFACE)
-set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME item1)
-set_property(TARGET MyTarget APPEND PROPERTY IMPORTED_LIBNAME item2)
-set_property(TARGET MyTarget PROPERTY IMPORTED_LIBNAME_DEBUG item1)
-set_property(TARGET MyTarget APPEND PROPERTY IMPORTED_LIBNAME_DEBUG item2)
diff --git a/Tests/RunCMake/interface_library/RunCMakeTest.cmake b/Tests/RunCMake/interface_library/RunCMakeTest.cmake
deleted file mode 100644
index 5a6af1d..0000000
--- a/Tests/RunCMake/interface_library/RunCMakeTest.cmake
+++ /dev/null
@@ -1,13 +0,0 @@
-include(RunCMake)
-
-run_cmake(invalid_name)
-run_cmake(target_commands)
-run_cmake(no_shared_libs)
-run_cmake(whitelist)
-run_cmake(invalid_signature)
-run_cmake(global-interface)
-run_cmake(genex_link)
-run_cmake(add_custom_command-TARGET)
-run_cmake(IMPORTED_LIBNAME-bad-value)
-run_cmake(IMPORTED_LIBNAME-non-iface)
-run_cmake(IMPORTED_LIBNAME-non-imported)
diff --git a/Tests/RunCMake/interface_library/add_custom_command-TARGET-result.txt b/Tests/RunCMake/interface_library/add_custom_command-TARGET-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/add_custom_command-TARGET-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/add_custom_command-TARGET-stderr.txt b/Tests/RunCMake/interface_library/add_custom_command-TARGET-stderr.txt
deleted file mode 100644
index c095262..0000000
--- a/Tests/RunCMake/interface_library/add_custom_command-TARGET-stderr.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-CMake Error at add_custom_command-TARGET.cmake:4 \(add_custom_command\):
-  Target "iface" is an INTERFACE library that may not have PRE_BUILD,
-  PRE_LINK, or POST_BUILD commands.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/interface_library/add_custom_command-TARGET.cmake b/Tests/RunCMake/interface_library/add_custom_command-TARGET.cmake
deleted file mode 100644
index a5136ef..0000000
--- a/Tests/RunCMake/interface_library/add_custom_command-TARGET.cmake
+++ /dev/null
@@ -1,6 +0,0 @@
-
-add_library(iface INTERFACE)
-
-add_custom_command(TARGET iface
-  COMMAND "${CMAKE_COMMAND}" -E echo test
-)
diff --git a/Tests/RunCMake/interface_library/genex_link-result.txt b/Tests/RunCMake/interface_library/genex_link-result.txt
deleted file mode 100644
index 573541a..0000000
--- a/Tests/RunCMake/interface_library/genex_link-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-0
diff --git a/Tests/RunCMake/interface_library/genex_link.cmake b/Tests/RunCMake/interface_library/genex_link.cmake
deleted file mode 100644
index 0dbf029..0000000
--- a/Tests/RunCMake/interface_library/genex_link.cmake
+++ /dev/null
@@ -1,22 +0,0 @@
-
-cmake_minimum_required(VERSION 2.8.12.20131125 FATAL_ERROR)
-
-project(genex_link)
-
-set(_main_cpp ${CMAKE_CURRENT_BINARY_DIR}/main.cpp)
-file(WRITE ${_main_cpp}
-  "int main(int argc, char** argv) { return 0; }\n"
-)
-
-add_library(foo::bar INTERFACE IMPORTED)
-set_target_properties(foo::bar
-  PROPERTIES
-    INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}"
-    # When not using a generator expression here, no error is generated
-    INTERFACE_LINK_LIBRARIES "$<$<NOT:$<CONFIG:DEBUG>>:foo_bar.lib>"
-)
-
-add_executable(main ${_main_cpp})
-target_include_directories(main PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}")
-
-target_link_libraries(main foo::bar)
diff --git a/Tests/RunCMake/interface_library/global-interface-result.txt b/Tests/RunCMake/interface_library/global-interface-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/global-interface-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/global-interface-stderr.txt b/Tests/RunCMake/interface_library/global-interface-stderr.txt
deleted file mode 100644
index 38585eb..0000000
--- a/Tests/RunCMake/interface_library/global-interface-stderr.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-CMake Error at global-interface.cmake:2 \(add_library\):
-  Cannot find source file:
-
-    GLOBAL
-
-  Tried extensions \.c \.C .*
-.*
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/interface_library/global-interface.cmake b/Tests/RunCMake/interface_library/global-interface.cmake
deleted file mode 100644
index d2bfc64..0000000
--- a/Tests/RunCMake/interface_library/global-interface.cmake
+++ /dev/null
@@ -1,2 +0,0 @@
-
-add_library(iface GLOBAL INTERFACE)
diff --git a/Tests/RunCMake/interface_library/invalid_name-result.txt b/Tests/RunCMake/interface_library/invalid_name-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/invalid_name-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/invalid_name-stderr.txt b/Tests/RunCMake/interface_library/invalid_name-stderr.txt
deleted file mode 100644
index e14fcde..0000000
--- a/Tests/RunCMake/interface_library/invalid_name-stderr.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-CMake Error at invalid_name.cmake:2 \(add_library\):
-  add_library Invalid name for INTERFACE library target: if\$ace
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_name.cmake:4 \(add_library\):
-  add_library Invalid name for INTERFACE library target: iface::target
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_name.cmake:6 \(add_library\):
-  add_library Invalid name for IMPORTED INTERFACE library target:
-  if\$target_imported
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/interface_library/invalid_name.cmake b/Tests/RunCMake/interface_library/invalid_name.cmake
deleted file mode 100644
index 575fcc6..0000000
--- a/Tests/RunCMake/interface_library/invalid_name.cmake
+++ /dev/null
@@ -1,6 +0,0 @@
-cmake_minimum_required(VERSION 2.8.12)
-add_library(if$ace INTERFACE)
-
-add_library(iface::target INTERFACE)
-
-add_library(if$target_imported INTERFACE IMPORTED)
diff --git a/Tests/RunCMake/interface_library/invalid_signature-result.txt b/Tests/RunCMake/interface_library/invalid_signature-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/invalid_signature-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/invalid_signature-stderr.txt b/Tests/RunCMake/interface_library/invalid_signature-stderr.txt
deleted file mode 100644
index 6374b33..0000000
--- a/Tests/RunCMake/interface_library/invalid_signature-stderr.txt
+++ /dev/null
@@ -1,89 +0,0 @@
-CMake Error at invalid_signature.cmake:2 \(add_library\):
-  add_library INTERFACE library requires no source arguments.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:3 \(add_library\):
-  add_library INTERFACE library specified with conflicting/multiple types.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:4 \(add_library\):
-  add_library INTERFACE library specified with conflicting/multiple types.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:5 \(add_library\):
-  add_library INTERFACE library specified with conflicting/multiple types.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:6 \(add_library\):
-  add_library INTERFACE library specified with conflicting/multiple types.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:7 \(add_library\):
-  add_library INTERFACE library specified with conflicting/multiple types.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:8 \(add_library\):
-  add_library INTERFACE library specified with conflicting/multiple types.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:9 \(add_library\):
-  add_library INTERFACE library specified with conflicting STATIC type.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:10 \(add_library\):
-  add_library INTERFACE library specified with conflicting SHARED type.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:11 \(add_library\):
-  add_library INTERFACE library specified with conflicting MODULE type.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:12 \(add_library\):
-  add_library INTERFACE library specified with conflicting OBJECT type.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:13 \(add_library\):
-  add_library INTERFACE library specified with conflicting UNKNOWN type.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:14 \(add_library\):
-  add_library INTERFACE library specified with conflicting ALIAS type.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:15 \(add_library\):
-  add_library INTERFACE library specified with conflicting ALIAS type.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:16 \(add_library\):
-  add_library INTERFACE library specified with conflicting/multiple types.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:17 \(add_library\):
-  add_library INTERFACE library may not be used with EXCLUDE_FROM_ALL.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:18 \(add_library\):
-  add_library INTERFACE library may not be used with EXCLUDE_FROM_ALL.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at invalid_signature.cmake:20 \(add_library\):
-  add_library GLOBAL option may only be used with IMPORTED libraries.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/interface_library/invalid_signature.cmake b/Tests/RunCMake/interface_library/invalid_signature.cmake
deleted file mode 100644
index 4e53534..0000000
--- a/Tests/RunCMake/interface_library/invalid_signature.cmake
+++ /dev/null
@@ -1,20 +0,0 @@
-
-add_library(iface1 INTERFACE empty.cpp)
-add_library(iface3 STATIC INTERFACE)
-add_library(iface4 STATIC INTERFACE empty.cpp)
-add_library(iface5 SHARED INTERFACE)
-add_library(iface6 MODULE INTERFACE)
-add_library(iface7 OBJECT INTERFACE)
-add_library(iface8 UNKNOWN INTERFACE)
-add_library(iface9 INTERFACE STATIC)
-add_library(iface10 INTERFACE SHARED)
-add_library(iface11 INTERFACE MODULE)
-add_library(iface12 INTERFACE OBJECT)
-add_library(iface13 INTERFACE UNKNOWN)
-add_library(iface14 INTERFACE ALIAS)
-add_library(iface15 ALIAS INTERFACE)
-add_library(iface16 INTERFACE INTERFACE)
-add_library(iface17 INTERFACE EXCLUDE_FROM_ALL)
-add_library(iface18 EXCLUDE_FROM_ALL INTERFACE)
-# add_library(iface19 GLOBAL INTERFACE) Tested separately
-add_library(iface20 INTERFACE GLOBAL)
diff --git a/Tests/RunCMake/interface_library/no_shared_libs.cmake b/Tests/RunCMake/interface_library/no_shared_libs.cmake
deleted file mode 100644
index ed81878..0000000
--- a/Tests/RunCMake/interface_library/no_shared_libs.cmake
+++ /dev/null
@@ -1,5 +0,0 @@
-
-cmake_minimum_required(VERSION 2.8.12.20131009)
-set_property(GLOBAL PROPERTY TARGET_SUPPORTS_SHARED_LIBS FALSE)
-add_library(foo INTERFACE)
-target_compile_definitions(foo INTERFACE FOO_DEFINE)
diff --git a/Tests/RunCMake/interface_library/target_commands-result.txt b/Tests/RunCMake/interface_library/target_commands-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/target_commands-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/target_commands-stderr.txt b/Tests/RunCMake/interface_library/target_commands-stderr.txt
deleted file mode 100644
index 9362a75..0000000
--- a/Tests/RunCMake/interface_library/target_commands-stderr.txt
+++ /dev/null
@@ -1,47 +0,0 @@
-CMake Error at target_commands.cmake:4 \(target_link_libraries\):
-  INTERFACE library can only be used with the INTERFACE keyword of
-  target_link_libraries
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at target_commands.cmake:5 \(target_link_libraries\):
-  INTERFACE library can only be used with the INTERFACE keyword of
-  target_link_libraries
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at target_commands.cmake:6 \(target_link_libraries\):
-  INTERFACE library can only be used with the INTERFACE keyword of
-  target_link_libraries
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at target_commands.cmake:7 \(target_link_libraries\):
-  INTERFACE library can only be used with the INTERFACE keyword of
-  target_link_libraries
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at target_commands.cmake:9 \(target_include_directories\):
-  target_include_directories may only set INTERFACE properties on INTERFACE
-  targets
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at target_commands.cmake:10 \(target_include_directories\):
-  target_include_directories may only set INTERFACE properties on INTERFACE
-  targets
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at target_commands.cmake:12 \(target_compile_definitions\):
-  target_compile_definitions may only set INTERFACE properties on INTERFACE
-  targets
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-+
-CMake Error at target_commands.cmake:13 \(target_compile_definitions\):
-  target_compile_definitions may only set INTERFACE properties on INTERFACE
-  targets
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/interface_library/target_commands.cmake b/Tests/RunCMake/interface_library/target_commands.cmake
deleted file mode 100644
index 3182e89..0000000
--- a/Tests/RunCMake/interface_library/target_commands.cmake
+++ /dev/null
@@ -1,13 +0,0 @@
-
-add_library(iface INTERFACE)
-
-target_link_libraries(iface PRIVATE foo)
-target_link_libraries(iface PUBLIC foo)
-target_link_libraries(iface foo)
-target_link_libraries(iface LINK_INTERFACE_LIBRARIES foo)
-
-target_include_directories(iface PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}")
-target_include_directories(iface PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}")
-
-target_compile_definitions(iface PRIVATE SOME_DEFINE)
-target_compile_definitions(iface PUBLIC SOME_DEFINE)
diff --git a/Tests/RunCMake/interface_library/whitelist-result.txt b/Tests/RunCMake/interface_library/whitelist-result.txt
deleted file mode 100644
index d00491f..0000000
--- a/Tests/RunCMake/interface_library/whitelist-result.txt
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/Tests/RunCMake/interface_library/whitelist-stderr.txt b/Tests/RunCMake/interface_library/whitelist-stderr.txt
deleted file mode 100644
index 577c0cc..0000000
--- a/Tests/RunCMake/interface_library/whitelist-stderr.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-CMake Error at whitelist.cmake:4 \(set_property\):
-  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
-  property "OUTPUT_NAME" is not allowed.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-
-
-CMake Error at whitelist.cmake:5 \(set_property\):
-  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
-  property "OUTPUT_NAME" is not allowed.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
-
-
-CMake Error at whitelist.cmake:6 \(get_target_property\):
-  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
-  property "OUTPUT_NAME" is not allowed.
-Call Stack \(most recent call first\):
-  CMakeLists.txt:3 \(include\)
diff --git a/Tests/RunCMake/interface_library/whitelist.cmake b/Tests/RunCMake/interface_library/whitelist.cmake
deleted file mode 100644
index 0db6375..0000000
--- a/Tests/RunCMake/interface_library/whitelist.cmake
+++ /dev/null
@@ -1,25 +0,0 @@
-
-add_library(iface INTERFACE)
-
-set_property(TARGET iface PROPERTY OUTPUT_NAME output)
-set_property(TARGET iface APPEND PROPERTY OUTPUT_NAME append)
-get_target_property(outname iface OUTPUT_NAME)
-
-# Properties starting with `_` are allowed.
-set_property(TARGET iface PROPERTY "_custom_property" output)
-set_property(TARGET iface APPEND PROPERTY "_custom_property" append)
-get_target_property(outname iface "_custom_property")
-
-# Properties starting with a lowercase letter are allowed.
-set_property(TARGET iface PROPERTY "custom_property" output)
-set_property(TARGET iface APPEND PROPERTY "custom_property" append)
-get_target_property(outname iface "custom_property")
-
-# PUBLIC_HEADER / PRIVATE_HEADER properties are allowed
-set_property(TARGET iface PROPERTY PUBLIC_HEADER foo.h)
-set_property(TARGET iface APPEND PROPERTY PUBLIC_HEADER bar.h)
-get_target_property(outname iface PUBLIC_HEADER)
-
-set_property(TARGET iface PROPERTY PRIVATE_HEADER foo.h)
-set_property(TARGET iface APPEND PROPERTY PRIVATE_HEADER bar.h)
-get_target_property(outname iface PRIVATE_HEADER)
-- 
cgit v0.12