diff options
author | Kyle Edwards <kyle.edwards@kitware.com> | 2018-07-12 14:04:37 (GMT) |
---|---|---|
committer | Kyle Edwards <kyle.edwards@kitware.com> | 2018-07-17 13:07:01 (GMT) |
commit | 4108ab4be2307ef161467de46e4c35e8b086ce02 (patch) | |
tree | 44f01307bf9efbc4d08e56dc27149c19bc31e2b6 | |
parent | bce8fa229ad7ea1c05e0206ed0c5bafe5fc32e2f (diff) | |
download | CMake-4108ab4be2307ef161467de46e4c35e8b086ce02.zip CMake-4108ab4be2307ef161467de46e4c35e8b086ce02.tar.gz CMake-4108ab4be2307ef161467de46e4c35e8b086ce02.tar.bz2 |
Tests: Add test for install(DIRECTORY) with PATTERN and REGEX
-rw-r--r-- | Tests/RunCMake/install/DIRECTORY-PATTERN-all-check.cmake | 1 | ||||
-rw-r--r-- | Tests/RunCMake/install/DIRECTORY-PATTERN.cmake | 36 | ||||
-rw-r--r-- | Tests/RunCMake/install/RunCMakeTest.cmake | 1 | ||||
-rw-r--r-- | Tests/RunCMake/install/pattern/empty.c | 0 | ||||
-rw-r--r-- | Tests/RunCMake/install/pattern/empty.h | 0 | ||||
-rw-r--r-- | Tests/RunCMake/install/pattern/empty.txt | 0 |
6 files changed, 38 insertions, 0 deletions
diff --git a/Tests/RunCMake/install/DIRECTORY-PATTERN-all-check.cmake b/Tests/RunCMake/install/DIRECTORY-PATTERN-all-check.cmake new file mode 100644 index 0000000..7a20edc --- /dev/null +++ b/Tests/RunCMake/install/DIRECTORY-PATTERN-all-check.cmake @@ -0,0 +1 @@ +check_installed([[^dir1;dir1/empty\.c;dir1/empty\.h;dir2;dir2/pattern;dir2/pattern/empty\.txt;dir3;dir3/empty\.c;dir3/empty\.h;dir3/empty\.txt;dir4;dir4/empty\.c;dir4/empty\.h;dir4/empty\.txt;empty$]]) diff --git a/Tests/RunCMake/install/DIRECTORY-PATTERN.cmake b/Tests/RunCMake/install/DIRECTORY-PATTERN.cmake new file mode 100644 index 0000000..74d8043 --- /dev/null +++ b/Tests/RunCMake/install/DIRECTORY-PATTERN.cmake @@ -0,0 +1,36 @@ +install( + DIRECTORY pattern/ + DESTINATION dir1 + FILES_MATCHING + PATTERN "*.h" + REGEX "\\.c$" + ) + +# FIXME: If/when CMake gains a good way to read file permissions, we should +# check that these permissions were set correctly. +install( + DIRECTORY pattern + DESTINATION dir2 + FILE_PERMISSIONS OWNER_READ OWNER_WRITE + DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE + PATTERN "*.h" EXCLUDE + REGEX "\\.c$" EXCLUDE + ) + +install( + DIRECTORY pattern/ + DESTINATION dir3 + PATTERN "*.h" + PERMISSIONS OWNER_READ OWNER_WRITE + ) + +install( + DIRECTORY pattern/ + DESTINATION dir4 + USE_SOURCE_PERMISSIONS + ) + +install( + DIRECTORY + DESTINATION empty + ) diff --git a/Tests/RunCMake/install/RunCMakeTest.cmake b/Tests/RunCMake/install/RunCMakeTest.cmake index 31287c8..e05a1c0 100644 --- a/Tests/RunCMake/install/RunCMakeTest.cmake +++ b/Tests/RunCMake/install/RunCMakeTest.cmake @@ -85,6 +85,7 @@ run_install_test(Deprecated) run_install_test(PRE_POST_INSTALL_SCRIPT) run_install_test(SCRIPT) run_install_test(TARGETS-CONFIGURATIONS) +run_install_test(DIRECTORY-PATTERN) set(run_install_test_components 1) run_install_test(FILES-EXCLUDE_FROM_ALL) diff --git a/Tests/RunCMake/install/pattern/empty.c b/Tests/RunCMake/install/pattern/empty.c new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/Tests/RunCMake/install/pattern/empty.c diff --git a/Tests/RunCMake/install/pattern/empty.h b/Tests/RunCMake/install/pattern/empty.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/Tests/RunCMake/install/pattern/empty.h diff --git a/Tests/RunCMake/install/pattern/empty.txt b/Tests/RunCMake/install/pattern/empty.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/Tests/RunCMake/install/pattern/empty.txt |