summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2006-02-08 16:33:40 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2006-02-08 16:33:40 (GMT)
commit7a3ed4644baed51c6849ca290885e85b815443cd (patch)
tree3c12a07c2b91c8c2dc9b298d176d30576ac71236
parent347c5f4b46396e974ff164b44f23b37eef779138 (diff)
downloadCMake-7a3ed4644baed51c6849ca290885e85b815443cd.zip
CMake-7a3ed4644baed51c6849ca290885e85b815443cd.tar.gz
CMake-7a3ed4644baed51c6849ca290885e85b815443cd.tar.bz2
ENH: add test for working directory of custom command and target
-rw-r--r--Tests/CustomCommandWorkingDirectory/CMakeLists.txt24
-rw-r--r--Tests/CustomCommandWorkingDirectory/customTarget.c4
-rw-r--r--Tests/CustomCommandWorkingDirectory/working.c7
3 files changed, 35 insertions, 0 deletions
diff --git a/Tests/CustomCommandWorkingDirectory/CMakeLists.txt b/Tests/CustomCommandWorkingDirectory/CMakeLists.txt
new file mode 100644
index 0000000..48437ec
--- /dev/null
+++ b/Tests/CustomCommandWorkingDirectory/CMakeLists.txt
@@ -0,0 +1,24 @@
+PROJECT(TestWorkingDir)
+
+ADD_CUSTOM_COMMAND(
+ OUTPUT "${TestWorkingDir_BINARY_DIR}/working.c"
+ COMMAND "${CMAKE_COMMAND}" -E copy ./working.c "${TestWorkingDir_BINARY_DIR}/working.c"
+ WORKING_DIRECTORY "${TestWorkingDir_SOURCE_DIR}"
+ COMMENT "custom command"
+)
+
+SET_SOURCE_FILES_PROPERTIES(
+ "${TestWorkingDir_BINARY_DIR}/working.c"
+ "${TestWorkingDir_BINARY_DIR}/customTarget.c"
+ PROPERTIES GENERATED 1)
+
+ADD_EXECUTABLE(working "${TestWorkingDir_BINARY_DIR}/working.c"
+ "${TestWorkingDir_BINARY_DIR}/customTarget.c")
+
+ADD_CUSTOM_TARGET(
+ Custom ALL
+ COMMAND "${CMAKE_COMMAND}" -E copy_if_different ./customTarget.c "${TestWorkingDir_BINARY_DIR}/customTarget.c"
+ WORKING_DIRECTORY "${TestWorkingDir_SOURCE_DIR}"
+)
+
+ADD_DEPENDENCIES(working Custom)
diff --git a/Tests/CustomCommandWorkingDirectory/customTarget.c b/Tests/CustomCommandWorkingDirectory/customTarget.c
new file mode 100644
index 0000000..8dbf0d4
--- /dev/null
+++ b/Tests/CustomCommandWorkingDirectory/customTarget.c
@@ -0,0 +1,4 @@
+int customTarget()
+{
+ return 0;
+}
diff --git a/Tests/CustomCommandWorkingDirectory/working.c b/Tests/CustomCommandWorkingDirectory/working.c
new file mode 100644
index 0000000..cf75bd1
--- /dev/null
+++ b/Tests/CustomCommandWorkingDirectory/working.c
@@ -0,0 +1,7 @@
+int customTarget();
+
+int main()
+{
+ return customTarget();
+}
+