about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
-rw-r--r--Makefile.common2
-rw-r--r--tools/klee/main.cpp7
2 files changed, 8 insertions, 1 deletions
diff --git a/Makefile.common b/Makefile.common
index 6556d3c7..c458f600 100644
--- a/Makefile.common
+++ b/Makefile.common
@@ -36,7 +36,7 @@ else
   LD.Flags += -L$(PROJ_SRC_ROOT)/stp/lib
   CXX.Flags += -I$(PROJ_SRC_ROOT)/stp/include
 endif
-CXX.Flags += -DKLEE_DIR=\"$(PROJ_OBJ_ROOT)\"
+CXX.Flags += -DKLEE_DIR=\"$(PROJ_OBJ_ROOT)\" -DKLEE_LIB_DIR=\"$(PROJ_libdir)\"
 
 # For STP.
 CXX.Flags += -DEXT_HASH_MAP
diff --git a/tools/klee/main.cpp b/tools/klee/main.cpp
index 82ced957..78e0d394 100644
--- a/tools/klee/main.cpp
+++ b/tools/klee/main.cpp
@@ -1214,7 +1214,14 @@ int main(int argc, char **argv, char **envp) {
       return r;
   }
 
+#if defined(KLEE_LIB_DIR) && defined(USE_KLEE_LIB_DIR)
+  /* KLEE_LIB_DIR is the lib dir of installed files as opposed to 
+   * where libs in the klee source tree are generated.
+   */
+  llvm::sys::Path LibraryDir(KLEE_LIB_DIR);
+#else
   llvm::sys::Path LibraryDir(KLEE_DIR "/" RUNTIME_CONFIGURATION "/lib");
+#endif
   Interpreter::ModuleOptions Opts(LibraryDir.c_str(),
                                   /*Optimize=*/OptimizeModule, 
                                   /*CheckDivZero=*/CheckDivZero);