about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
authorCristian Cadar <c.cadar@imperial.ac.uk>2018-12-18 15:03:43 +0000
committerMartinNowack <martin.nowack@gmail.com>2018-12-19 21:26:48 +0000
commit6a8ec2bd4d9b1c2c70408d529a50c8c1c3d041ef (patch)
treeea94a56b516b60a153daf7ddb85990e3aec415fd
parent6056fddb8264e6d47344efe15ce18d08a4242b82 (diff)
downloadklee-6a8ec2bd4d9b1c2c70408d529a50c8c1c3d041ef.tar.gz
Added linking option category
-rw-r--r--tools/klee/main.cpp30
1 files changed, 19 insertions, 11 deletions
diff --git a/tools/klee/main.cpp b/tools/klee/main.cpp
index dd524f58..af97b759 100644
--- a/tools/klee/main.cpp
+++ b/tools/klee/main.cpp
@@ -141,6 +141,12 @@ namespace {
           cl::desc("Parse environment from given file (in \"env\" format)"),
           cl::cat(StartCat));
 
+
+  /*** Linking options ***/
+
+  cl::OptionCategory LinkCat("Linking options",
+                             "These options control the libraries being linked.");
+
   enum class LibcType { FreeStandingLibc, KleeLibc, UcLibc };
 
   cl::opt<LibcType>
@@ -156,8 +162,20 @@ namespace {
                   clEnumValN(LibcType::UcLibc, "uclibc",
                              "Link in uclibc (adapted for KLEE)")
                   KLEE_LLVM_CL_VAL_END),
-       cl::init(LibcType::FreeStandingLibc));
+       cl::init(LibcType::FreeStandingLibc),
+       cl::cat(LinkCat));
 
+  cl::list<std::string>
+  LinkLibraries("link-llvm-lib",
+		cl::desc("Link the given library before execution. Can be used multiple times."),
+		cl::value_desc("library file"),
+                cl::cat(LinkCat));
+
+  cl::opt<bool>
+  WithPOSIXRuntime("posix-runtime",
+                   cl::desc("Link with POSIX runtime. Options that can be passed as arguments to the programs are: --sym-arg <max-len>  --sym-args <min-argvs> <max-argvs> <max-len> + file model options"),
+                   cl::init(false),
+                   cl::cat(LinkCat));
 
 
   cl::opt<bool>
@@ -173,11 +191,6 @@ namespace {
               cl::desc("Exit if errors occur"));
 
   cl::opt<bool>
-  WithPOSIXRuntime("posix-runtime",
-		cl::desc("Link with POSIX runtime.  Options that can be passed as arguments to the programs are: --sym-arg <max-len>  --sym-args <min-argvs> <max-argvs> <max-len> + file model options"),
-		cl::init(false));
-
-  cl::opt<bool>
   OptimizeModule("optimize",
                  cl::desc("Optimize before execution"),
 		 cl::init(false));
@@ -223,11 +236,6 @@ namespace {
   cl::list<std::string>
   SeedOutDir("seed-out-dir");
 
-  cl::list<std::string>
-  LinkLibraries("link-llvm-lib",
-		cl::desc("Link the given libraries before execution"),
-		cl::value_desc("library file"));
-
   cl::opt<unsigned>
   MakeConcreteSymbolic("make-concrete-symbolic",
                        cl::desc("Probabilistic rate at which to make concrete reads symbolic, "