From 4477202c6c9dee2fbd11a95c15cc4235e2e959e104157c7c303dbf37becb8762 Mon Sep 17 00:00:00 2001 From: Jiri Slaby Date: Fri, 24 Jan 2020 07:55:33 +0000 Subject: [PATCH] up to 2.0+20200119 OBS-URL: https://build.opensuse.org/package/show/devel:tools:statica/klee?expand=0&rev=78 --- 0001-runtime-workaround-for-glibc-2.30.patch | 39 -------------------- _servicedata | 2 +- klee-2.0+20191031.tar.xz | 3 -- klee-2.0+20200119.tar.xz | 3 ++ klee.changes | 31 ++++++++++++++++ klee.spec | 14 +++---- 6 files changed, 42 insertions(+), 50 deletions(-) delete mode 100644 0001-runtime-workaround-for-glibc-2.30.patch delete mode 100644 klee-2.0+20191031.tar.xz create mode 100644 klee-2.0+20200119.tar.xz diff --git a/0001-runtime-workaround-for-glibc-2.30.patch b/0001-runtime-workaround-for-glibc-2.30.patch deleted file mode 100644 index f0bea7b..0000000 --- a/0001-runtime-workaround-for-glibc-2.30.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 0a0805f3fac9c763489188d3bcc7fe1718a7a37c Mon Sep 17 00:00:00 2001 -From: Jiri Slaby -Date: Fri, 4 Oct 2019 12:46:17 +0200 -Subject: [PATCH] runtime: workaround for glibc 2.30 - -glibc 2.30 moved definition of getdents64 to dirent_ext.h. It became -visible and conflicts with our definition: - -runtime/POSIX/fd_64.c:112:5: error: conflicting types for 'getdents64' -int getdents64(unsigned int fd, struct dirent *dirp, unsigned int count) { - ^ -/usr/include/bits/dirent_ext.h:29:18: note: previous declaration is here -extern __ssize_t getdents64 (int __fd, void *__buffer, size_t __length) - ^ - -But according to the kernel (and manual), the parameter is unsigned. -So we are correct, but glibc defines it wrong. ---- - runtime/POSIX/fd_64.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/runtime/POSIX/fd_64.c b/runtime/POSIX/fd_64.c -index 61d9dc6f..7691538f 100644 ---- a/runtime/POSIX/fd_64.c -+++ b/runtime/POSIX/fd_64.c -@@ -109,8 +109,8 @@ int statfs(const char *path, struct statfs *buf) { - return __fd_statfs(path, buf); - } - --int getdents64(unsigned int fd, struct dirent *dirp, unsigned int count) { -+ssize_t getdents64(int fd, void *dirp, size_t count) { - return __fd_getdents(fd, (struct dirent64*) dirp, count); - } --int __getdents64(unsigned int fd, struct dirent *dirp, unsigned int count) -+ssize_t __getdents64(int fd, void *dirp, size_t count) - __attribute__((alias("getdents64"))); --- -2.21.0 - diff --git a/_servicedata b/_servicedata index 7f31176..c2bcf2d 100644 --- a/_servicedata +++ b/_servicedata @@ -1,4 +1,4 @@ git://github.com/klee/klee.git - 2b0b0f89fcfff828b6dd8c20f58d872c7395dba4 \ No newline at end of file + d9888fcefc216b16404a39ac7b82a8fd8d5f343f \ No newline at end of file diff --git a/klee-2.0+20191031.tar.xz b/klee-2.0+20191031.tar.xz deleted file mode 100644 index 6e6ce38..0000000 --- a/klee-2.0+20191031.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:acb14aac46f512e72f26dea0c0ac92a6c82f1fc7bd13deb147b8e80ed860f71d -size 641896 diff --git a/klee-2.0+20200119.tar.xz b/klee-2.0+20200119.tar.xz new file mode 100644 index 0000000..6258b82 --- /dev/null +++ b/klee-2.0+20200119.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6b3ac84a0070c3cdb335c79e1103fc0fe89fddcc47d5d88788cc119301210dd +size 646824 diff --git a/klee.changes b/klee.changes index d04261d..27b9651 100644 --- a/klee.changes +++ b/klee.changes @@ -1,3 +1,34 @@ +------------------------------------------------------------------- +Fri Jan 24 07:34:10 UTC 2020 - jslaby@suse.com + +- Update to version 2.0+20200119: + * Remove statistics limit from istats. + * Fix handling of debug information for functions + * Update objdump script to support python3 + * Fixed documentation for command line argument link-llvm-lib + * Assume assembly.ll is local to the run.istats file + * Remove unnecessary std::move's that prevent copy elision + * [optimize-array] Fix value transformation + * [optimize-array] Fix hole index in buildMixedSelectExpr + * [optimize-array] Fix hash collisions + * [optimize-array] Hash collision test + * [optimize-array] Fix update list read order + * [Searchers] Remove weight from es, add nurs_depth + * Move merging related code from Executor into MergingSearcher + * Implement @llvm.is.constant() intrinsic handling and add a test for it. + * [expr-visitor] Remove unnecessary allocation + * Handle llvm.objectsize explicitly + * Added test for 3-argument main. + * Allow main with 3 arguments + * Most libc++ tests require uclibc; add missing REQUIRES statements or remove dependency. + * Core: Executor, remove unused variable + * Do not modify strings if they are read-only. + * Mark all constant global memory objects as constant + * [test] Fix missing includes + * runtime: fix for glibc 2.30 + * Remove the duplicated check for DebugInfoIntrinsic +- Remove 0001-runtime-workaround-for-glibc-2.30.patch (upstreamed) + ------------------------------------------------------------------- Mon Nov 04 06:50:43 UTC 2019 - jslaby@suse.com diff --git a/klee.spec b/klee.spec index d75e642..380eecc 100644 --- a/klee.spec +++ b/klee.spec @@ -1,7 +1,7 @@ # # spec file for package klee # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,7 +20,7 @@ %define llvm_version_minor 0 %define llvm_version %{llvm_version_major} -%define version_unconverted 2.0+20191031 +%define version_unconverted 2.0+20200119 %ifarch %{ix86} x86_64 %define with_uclibc 1 @@ -32,14 +32,13 @@ Name: klee Summary: LLVM Execution Engine License: NCSA Group: Development/Languages/Other -Version: 2.0+20191031 +Version: 2.0+20200119 Release: 0 -Url: http://klee.github.io/ +URL: http://klee.github.io/ Source0: %{name}-%{version}.tar.xz Source1: %{name}-rpmlintrc Source2: https://raw.githubusercontent.com/llvm-mirror/llvm/release_%{llvm_version_major}%{llvm_version_minor}/utils/not/not.cpp Source3: https://raw.githubusercontent.com/llvm-mirror/llvm/release_%{llvm_version_major}%{llvm_version_minor}/utils/FileCheck/FileCheck.cpp -Patch0: 0001-runtime-workaround-for-glibc-2.30.patch BuildRequires: clang%{llvm_version} BuildRequires: cmake @@ -52,7 +51,8 @@ BuildRequires: libcap-devel BuildRequires: libselinux-devel BuildRequires: llvm%{llvm_version}-devel BuildRequires: ninja -BuildRequires: python3-base +# tests need sqlite3 +BuildRequires: python3 BuildRequires: python3-lit BuildRequires: python3-setuptools BuildRequires: python3-tabulate @@ -107,7 +107,7 @@ sed -i '1s@/usr/bin/env python3*@/usr/bin/python3@' \ -DKLEE_UCLIBC_PATH=%{_libdir}/klee-uclibc/ \ %endif -DBUILD_SHARED_LIBS:BOOL=OFF -%make_jobs +%cmake_build %check %ifarch x86_64