diff options
author | Dan Liew <daniel.liew@imperial.ac.uk> | 2013-12-16 01:23:07 +0000 |
---|---|---|
committer | Dan Liew <daniel.liew@imperial.ac.uk> | 2013-12-21 23:22:46 +0000 |
commit | 2f6e89baf9cd5f5292cd0aa6047144920a564202 (patch) | |
tree | 645ceda7642bb3c4acc1e701a8869809b28e1683 /Makefile.common | |
parent | 8d541d5e7613bd42be0714c2654138bcc3c2c6d4 (diff) | |
download | klee-2f6e89baf9cd5f5292cd0aa6047144920a564202.tar.gz |
klee-uclibc detection is now a lot cleaner. KLEE now assumes
it can find klee-uclibc inside the same folder as the other runtime libraries with the name "klee-uclibc.bca" This is implemented as follows: * When building, a sym-link is created to klee-uclibc's libc.a file in the same directory that the rest of KLEE's runtime libraries are built. This done so that if a developer changes klee-uclibc on their system then the correct version of klee-uclibc is used by KLEE. * When installing, klee-uclibc's libc.a file is installed in the same directory that the rest of KLEE's runtime libraries are installed. In addition the configure script argument --with-uclibc can now operate in two ways. It can either be passed the path to the root of klee-uclibc or it can be passed a path to the libc.a file built by klee-uclibc. This new behaviour has been added to allow users to potential use pre-built versions of klee-uclibc.
Diffstat (limited to 'Makefile.common')
-rw-r--r-- | Makefile.common | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Makefile.common b/Makefile.common index 21985db1..e5e3c18a 100644 --- a/Makefile.common +++ b/Makefile.common @@ -30,11 +30,18 @@ endif # Needed to build runtime library using clang (gnu89 is the gcc default) C.Flags += -std=gnu89 +# This is filename that KLEE will look for when trying to load klee-uclibc +KLEE_UCLIBC_BCA_NAME="klee-uclibc.bca" + LD.Flags += -L$(STP_ROOT)/lib CXX.Flags += -I$(STP_ROOT)/include CXX.Flags += -DKLEE_DIR=\"$(PROJ_OBJ_ROOT)\" -DKLEE_INSTALL_BIN_DIR=\"$(PROJ_bindir)\" CXX.Flags += -DKLEE_INSTALL_LIB_DIR=\"$(PROJ_libdir)\" +ifeq ($(ENABLE_UCLIBC),1) + CXX.Flags += -DKLEE_UCLIBC_BCA_NAME=\"$(KLEE_UCLIBC_BCA_NAME)\" +endif + # For STP. CXX.Flags += -DEXT_HASH_MAP |