summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorAndy Cedilnik <andy.cedilnik@kitware.com>2004-04-21 14:34:08 (GMT)
committerAndy Cedilnik <andy.cedilnik@kitware.com>2004-04-21 14:34:08 (GMT)
commit4d55c6540a7e1416beaa4a780cf77a2d8ce14530 (patch)
treeb2b0b5890c94f438d7dfc3d511c3830c907e92a2 /Source
parent00095676ccdd3d16dd0c9251789e8fedad630fdf (diff)
downloadCMake-4d55c6540a7e1416beaa4a780cf77a2d8ce14530.zip
CMake-4d55c6540a7e1416beaa4a780cf77a2d8ce14530.tar.gz
CMake-4d55c6540a7e1416beaa4a780cf77a2d8ce14530.tar.bz2
ENH: Report error and exit when the current directory is not specified
Diffstat (limited to 'Source')
-rw-r--r--Source/cmakemain.cxx10
-rw-r--r--Source/ctest.cxx11
2 files changed, 19 insertions, 2 deletions
diff --git a/Source/cmakemain.cxx b/Source/cmakemain.cxx
index 3b29bf5..2e7ff84 100644
--- a/Source/cmakemain.cxx
+++ b/Source/cmakemain.cxx
@@ -110,7 +110,15 @@ int main(int ac, char** av)
int do_cmake(int ac, char** av)
{
cmDocumentation doc;
- if(doc.CheckOptions(ac, av))
+ int nocwd = 0;
+
+ if ( cmSystemTools::GetCurrentWorkingDirectory().size() == 0 )
+ {
+ std::cerr << "Current working directory cannot be established." << std::endl;
+ nocwd = 1;
+ }
+
+ if(doc.CheckOptions(ac, av) || nocwd)
{
// Construct and print requested documentation.
cmake hcm;
diff --git a/Source/ctest.cxx b/Source/ctest.cxx
index 0b3b7be..9a0ebdc 100644
--- a/Source/ctest.cxx
+++ b/Source/ctest.cxx
@@ -101,6 +101,15 @@ static const cmDocumentationEntry cmDocumentationSeeAlso[] =
int main (int argc, char *argv[])
{
cmSystemTools::EnableMSVCDebugHook();
+ int nocwd = 0;
+
+ if ( cmSystemTools::GetCurrentWorkingDirectory().size() == 0 )
+ {
+ std::cerr << "Current working directory cannot be established." << std::endl;
+ nocwd = 1;
+ }
+
+
// If there is a testing input file, check for documentation options
// only if there are actually arguments. We want running without
@@ -114,7 +123,7 @@ int main (int argc, char *argv[])
std::cout << "*********************************" << std::endl;
}
cmDocumentation doc;
- if(doc.CheckOptions(argc, argv))
+ if(doc.CheckOptions(argc, argv) || nocwd)
{
// Construct and print requested documentation.
doc.SetName("ctest");