Age | Commit message (Collapse) | Author |
|
In commit 2b07721, support was added to p-libcxx.inc & p-llvm.inc
for LLVM versions 14+ (in which, apparently, certain build flags
were changed). To detect these recent versions, the variable
LLVM_VERSION_SHORT was compared numerically to "14"-- the intent
obviously being to express "LLVM version 14 or later".
However, in both v-clang.inc & v-llvm.inc, LLVM_VERSION_SHORT
is defined as the concatenation of LLVM_VERSION_MAJOR and
LLVM_VERSION_MINOR. Therefore, on a machine with, say, LLVM
13.0 installed, LLVM_VERSION_SHORT will be "130" which compares
as larger than "14".
This patch changes the comparison to be against "140".
|
|
|
|
`libc++` include headers are now split between platform dependent and
platform independent code.
Before, only include files for the platform independent code were
considered. Add support to automatically find platform dependent
includes as well.
Simplify the detection of libraries and paths.
Instead of pointing to the `v1` directory, pointing to the include
directory for `-DKLEE_LIBCXX_INCLUDE_PATH` is enough.
Update build script to support this as well.
|
|
|
|
`-DLLVM_ENABLE_PROJECTS` does not include runtimes anymore,
instead a `-DLLVM_ENABLE_RUNTIMES` should be used in addition
|
|
|
|
|
|
|
|
* Support for Ubuntu 22.04
* Remove support for Python2
* Better separation between sanitizer builds and non-sanitizer builds
* Fix build of metaSMT on newer Ubuntu versions
* Use ninja to build LLVM
* Simplifying building arbitrary LLVM configurations, e.g. different
LLVM sanitizer builds (MemSan, UBSan, ASan)
* Use MemSan with origin tracking
* Build sqlite3 container correctly
* Add support to provide sqlite3 version number
|
|
|
|
|
|
docker container
|
|
|
|
|
|
|
|
|
|
|
|
|
|
All three can be different but also provided by the same package.
By separating the different use-cases, it allows to set them
independently.
|
|
Don't try to install it for non-LTS Ubuntu versions
|
|
|
|
|
|
Instead if executing system-relevant changes directly, use `sudo` on
Ubuntu-based machines.
Simplifies the installation procedure.
|
|
ENABLE_DOXYGEN=ON
|
|
|
|
By default, UBSAN does not fail when it reports an error. Thus, the UBSAN CI
was green even though there were some errors reported.
|
|
When combined with `-fsanitize=undefined`, this flag only enables extra checks
for unsigned integer overflow and (possibly bug-prone) implicit conversions
between integer types. It was generating way too much noise (both for KLEE
and its dependencies) and the reported problems do not lead to an undefined
behaviour according to the C++ standard.
|
|
|
|
Codecov depends on git to detect the SHA sum of the repository.
Install as a dependency.
|
|
|
|
It may happen that some older instance of klee is already present
in PATH. All tests that call plain klee instead of %klee may use
it and then unexpectedly fail.
This commit will make all tests that rely on klee tools being
explicitly in PATH fail in our CI. From now on, only LLVM tools,
FileCheck and not will be in lit's PATH.
|
|
|
|
|
|
Update container build script to utilize Github Actions job description
instead of Travis CI's.
|
|
Add support for Github Actions to use as new CI.
This builds all the components as the original Travis CI script.
|
|
|
|
|
|
|
|
|
|
|
|
Co-authored-by: Felix Rath <felix.rath@comsys.rwth-aachen.de>
|
|
CMake Warning at docs/CMakeLists.txt:46 (message):
Doxygen not found. Can't build Doxygen documentation
|
|
CMake Warning:
Manually-specified variables were not used by the project:
LLVM_DIR
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Just target x86 as architecture
* do not build tests for clang
* use optimized tablegen
* only build required tools and libraries that are needed by KLEE
|