summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Tests/Complex/Executable/complex.cxx28
-rw-r--r--Tests/ComplexOneConfig/Executable/complex.cxx28
-rw-r--r--Tests/ComplexRelativePaths/Executable/complex.cxx28
3 files changed, 84 insertions, 0 deletions
diff --git a/Tests/Complex/Executable/complex.cxx b/Tests/Complex/Executable/complex.cxx
index adf99d7..441a291 100644
--- a/Tests/Complex/Executable/complex.cxx
+++ b/Tests/Complex/Executable/complex.cxx
@@ -111,7 +111,35 @@ int main()
lib += CMAKE_INTDIR;
lib += "/";
#endif
+ std::string exe = lib;
+ // Test a single character executable to test a: in makefiles
+ exe += "A";
+ exe += cmSystemTools::GetExecutableExtension();
+ int ret;
+ std::string errorMessage;
+ if(cmSystemTools::RunSingleCommand(exe.c_str(), 0, &ret))
+ {
+ if(ret != 10)
+ {
+ errorMessage += exe;
+ errorMessage += " did not return 10";
+ }
+ }
+ else
+ {
+ errorMessage += exe;
+ errorMessage += ": failed to run.";
+ }
+ if(errorMessage.size())
+ {
+ cmFailed(errorMessage.c_str());
+ }
+ else
+ {
+ cmPassed("run Single Character executable A returned 10 as expected.");
+ }
+
lib += cmDynamicLoader::LibPrefix();
lib += "CMakeTestModule";
lib += cmDynamicLoader::LibExtension();
diff --git a/Tests/ComplexOneConfig/Executable/complex.cxx b/Tests/ComplexOneConfig/Executable/complex.cxx
index adf99d7..441a291 100644
--- a/Tests/ComplexOneConfig/Executable/complex.cxx
+++ b/Tests/ComplexOneConfig/Executable/complex.cxx
@@ -111,7 +111,35 @@ int main()
lib += CMAKE_INTDIR;
lib += "/";
#endif
+ std::string exe = lib;
+ // Test a single character executable to test a: in makefiles
+ exe += "A";
+ exe += cmSystemTools::GetExecutableExtension();
+ int ret;
+ std::string errorMessage;
+ if(cmSystemTools::RunSingleCommand(exe.c_str(), 0, &ret))
+ {
+ if(ret != 10)
+ {
+ errorMessage += exe;
+ errorMessage += " did not return 10";
+ }
+ }
+ else
+ {
+ errorMessage += exe;
+ errorMessage += ": failed to run.";
+ }
+ if(errorMessage.size())
+ {
+ cmFailed(errorMessage.c_str());
+ }
+ else
+ {
+ cmPassed("run Single Character executable A returned 10 as expected.");
+ }
+
lib += cmDynamicLoader::LibPrefix();
lib += "CMakeTestModule";
lib += cmDynamicLoader::LibExtension();
diff --git a/Tests/ComplexRelativePaths/Executable/complex.cxx b/Tests/ComplexRelativePaths/Executable/complex.cxx
index adf99d7..441a291 100644
--- a/Tests/ComplexRelativePaths/Executable/complex.cxx
+++ b/Tests/ComplexRelativePaths/Executable/complex.cxx
@@ -111,7 +111,35 @@ int main()
lib += CMAKE_INTDIR;
lib += "/";
#endif
+ std::string exe = lib;
+ // Test a single character executable to test a: in makefiles
+ exe += "A";
+ exe += cmSystemTools::GetExecutableExtension();
+ int ret;
+ std::string errorMessage;
+ if(cmSystemTools::RunSingleCommand(exe.c_str(), 0, &ret))
+ {
+ if(ret != 10)
+ {
+ errorMessage += exe;
+ errorMessage += " did not return 10";
+ }
+ }
+ else
+ {
+ errorMessage += exe;
+ errorMessage += ": failed to run.";
+ }
+ if(errorMessage.size())
+ {
+ cmFailed(errorMessage.c_str());
+ }
+ else
+ {
+ cmPassed("run Single Character executable A returned 10 as expected.");
+ }
+
lib += cmDynamicLoader::LibPrefix();
lib += "CMakeTestModule";
lib += cmDynamicLoader::LibExtension();