Parcourir la source

ENH: Added GetEnv method.

Brad King il y a 22 ans
Parent
commit
8ca149d34f
2 fichiers modifiés avec 22 ajouts et 0 suppressions
  1. 18 0
      Source/kwsys/SystemTools.cxx
  2. 4 0
      Source/kwsys/SystemTools.hxx.in

+ 18 - 0
Source/kwsys/SystemTools.cxx

@@ -190,6 +190,24 @@ void SystemTools::GetPath(kwsys_std::vector<kwsys_std::string>& path)
     }
 }
 
+const char* SystemTools::GetEnv(const char* key)
+{
+  return getenv(key);
+}
+
+bool SystemTools::GetEnv(const char* key, kwsys_std::string& result)
+{
+  const char* v = getenv(key);
+  if(v)
+    {
+    result = v;
+    return true;
+    }
+  else
+    {
+    return false;
+    }
+}
 
 const char* SystemTools::GetExecutableExtension()
 {

+ 4 - 0
Source/kwsys/SystemTools.hxx.in

@@ -124,6 +124,10 @@ public:
    */
   static void GetPath(kwsys_std::vector<kwsys_std::string>& path);
 
+  /** Read an environment variable.  */
+  static const char* GetEnv(const char* key);
+  static bool GetEnv(const char* key, std::string& result);
+
   /**
    *  Get the file extension (including ".") needed for an executable
    *  on the current platform ("" for unix, ".exe" for Windows).