Package libFuzzer
The libFuzzer source code is included in the llvm sources for llvm 4.0 and 5.0, but is moved into compiler-rt for LLVM 6.0, so we are packaging it as a part of compiler-rt-4.0.* to keep it consistent with future versions of LLVM.
This commit is contained in:
parent
b2af4444e3
commit
edd746704d
1
.gitignore
vendored
1
.gitignore
vendored
@ -6,3 +6,4 @@
|
||||
/compiler-rt-3.9.1.src.tar.xz
|
||||
/compiler-rt-4.0.0.src.tar.xz
|
||||
/compiler-rt-4.0.1.src.tar.xz
|
||||
/libFuzzer.tar.xz
|
||||
|
@ -5,12 +5,21 @@
|
||||
|
||||
Name: compiler-rt
|
||||
Version: 4.0.1
|
||||
Release: 4%{?dist}
|
||||
Release: 5%{?dist}
|
||||
Summary: LLVM "compiler-rt" runtime libraries
|
||||
|
||||
License: NCSA or MIT
|
||||
URL: http://llvm.org
|
||||
Source0: http://llvm.org/releases/%{version}/%{name}-%{version}.src.tar.xz
|
||||
# Extract libFuzzer sources from the llvm tarball. We are packaging it as part
|
||||
# of compiler-rt, because upstream moved the code into the compiler-rt project
|
||||
# for LLVM 6.0.0, and we also don't want to add clang as a build dependency for
|
||||
# llvm.
|
||||
# wget http://llvm.org/releases/4.0.1/llvm-4.0.1.src.tar.xz
|
||||
# tar -xJf llvm-4.0.1.src.tar.xz
|
||||
# cd llvm-4.0.1.src/lib/Fuzzer/
|
||||
# tar -cJf Fuzzer.tar.xz Fuzzer/
|
||||
Source1: Fuzzer.tar.xz
|
||||
Patch0: 0001-Build-fixes-for-newer-glibc.patch
|
||||
|
||||
BuildRequires: cmake
|
||||
@ -18,6 +27,9 @@ BuildRequires: python
|
||||
BuildRequires: llvm-devel = %{version}
|
||||
BuildRequires: llvm-static = %{version}
|
||||
|
||||
# libFuzzer must be built by clang.
|
||||
BuildRequires: clang
|
||||
|
||||
%description
|
||||
The compiler-rt project is a part of the LLVM project. It provides
|
||||
implementation of the low-level target-specific hooks required by
|
||||
@ -25,6 +37,8 @@ code generation, sanitizer runtimes and profiling library for code
|
||||
instrumentation, and Blocks C language extension.
|
||||
|
||||
%prep
|
||||
%setup -T -q -b 1 -n Fuzzer
|
||||
|
||||
%autosetup -n %{name}-%{version}.src -p1
|
||||
|
||||
%build
|
||||
@ -43,18 +57,26 @@ cd _build
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
pushd ../../Fuzzer
|
||||
./build.sh
|
||||
popd
|
||||
|
||||
%install
|
||||
cd _build
|
||||
make install DESTDIR=%{buildroot}
|
||||
|
||||
mkdir -p %{buildroot}%{_libdir}/clang/%{version}/lib
|
||||
|
||||
pushd ../../Fuzzer
|
||||
install -m0644 libFuzzer.a %{buildroot}%{_libdir}/clang/%{version}/lib
|
||||
popd
|
||||
|
||||
# move sanitizer lists to better place
|
||||
mkdir -p %{buildroot}%{_libdir}/clang/%{version}
|
||||
for file in asan_blacklist.txt msan_blacklist.txt dfsan_blacklist.txt cfi_blacklist.txt dfsan_abilist.txt; do
|
||||
mv -v %{buildroot}%{_prefix}/${file} %{buildroot}%{_libdir}/clang/%{version}/ || :
|
||||
done
|
||||
|
||||
# move sanitizer libs to better place
|
||||
mkdir -p %{buildroot}%{_libdir}/clang/%{version}/lib
|
||||
mv -v %{buildroot}%{_prefix}/lib/linux/libclang_rt* %{buildroot}%{_libdir}/clang/%{version}/lib
|
||||
mkdir -p %{buildroot}%{_libdir}/clang/%{version}/lib/linux/
|
||||
pushd %{buildroot}%{_libdir}/clang/%{version}/lib
|
||||
@ -71,6 +93,9 @@ cd _build
|
||||
%{_libdir}/clang/%{version}
|
||||
|
||||
%changelog
|
||||
* Tue Sep 12 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-5
|
||||
- Package libFuzzer
|
||||
|
||||
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.0.1-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
|
1
sources
1
sources
@ -1,2 +1,3 @@
|
||||
SHA512 (compiler-rt-4.0.0.src.tar.xz) = ed52436a2399ca82c1af46a523e89e88c23367f74cd110f0267af49a72aa4912ae8f48c6093e6b01c9ea68c48354a12201d26baf721d254fb017ddb98af2e3dd
|
||||
SHA512 (compiler-rt-4.0.1.src.tar.xz) = cfeb625884b273f7c0e6767b81a8d3e5f24e0b96a510d5764d9d47a0e215fc841b4cb9d1843c8fb428cd21def720cfbfe8d3593ff5bb390548ebc8c32a902649
|
||||
SHA512 (libFuzzer.tar.xz) = cc69abdea6c509521904f0011427cf30ea5aa4d1cda8059d9ff329d8eccf6dffc77945b3edd905cb0e799bb36710c6c36e095b52276ddb5af447818f4ed4de52
|
||||
|
Loading…
Reference in New Issue
Block a user