[llvm-commits] CVS: llvm-java/lib/ClassFile/ClassFile.cpp

Alkis Evlogimenos alkis at cs.uiuc.edu
Sat Jul 24 14:49:47 PDT 2004



Changes in directory llvm-java/lib/ClassFile:

ClassFile.cpp updated: 1.18 -> 1.19

---
Log message:

Add classpath (-cp or -classpath) command line option.


---
Diffs of the changes:  (+20 -4)

Index: llvm-java/lib/ClassFile/ClassFile.cpp
diff -u llvm-java/lib/ClassFile/ClassFile.cpp:1.18 llvm-java/lib/ClassFile/ClassFile.cpp:1.19
--- llvm-java/lib/ClassFile/ClassFile.cpp:1.18	Sat Jul 24 15:33:23 2004
+++ llvm-java/lib/ClassFile/ClassFile.cpp	Sat Jul 24 16:49:37 2004
@@ -15,6 +15,7 @@
 #define DEBUG_TYPE "classfile"
 
 #include <llvm/Java/ClassFile.h>
+#include <Support/CommandLine.h>
 #include <Support/Debug.h>
 #include <Support/FileUtilities.h>
 #include <Support/STLExtras.h>
@@ -28,6 +29,22 @@
 
 using namespace llvm::Java;
 
+namespace {
+
+    using namespace llvm;
+
+    static cl::opt<std::string>
+    ClassPath("cp",
+              cl::desc("A : separated list of directories"),
+              cl::value_desc("class search path"),
+              cl::init(getenv("CLASSPATH")));
+    static cl::alias
+    ClassPathA("classpath",
+               cl::desc("Alias for -cp"),
+               cl::aliasopt(ClassPath));
+
+}
+
 //===----------------------------------------------------------------------===//
 // Internal utility functions
 namespace {
@@ -153,14 +170,13 @@
 
 std::vector<std::string> ClassFile::getClassPath()
 {
-    std::string classpath = getenv("CLASSPATH");
-    DEBUG(std::cerr << "CLASSPATH=" << classpath << '\n');
+    DEBUG(std::cerr << "CLASSPATH=" << ClassPath << '\n');
 
     std::vector<std::string> result;
     unsigned b = 0, e = 0;
     do {
-        e = classpath.find(':', b);
-        result.push_back(classpath.substr(b, e));
+        e = ClassPath.find(':', b);
+        result.push_back(ClassPath.substr(b, e));
         b = e + 1;
     } while (e != std::string::npos);
 





More information about the llvm-commits mailing list