diff options
author | robot-piglet <robot-piglet@yandex-team.com> | 2024-12-06 02:01:51 +0300 |
---|---|---|
committer | robot-piglet <robot-piglet@yandex-team.com> | 2024-12-06 02:17:27 +0300 |
commit | 791c95291cdeb78d59b058c8575f99cef4a94c86 (patch) | |
tree | 19eb2cc795c2769ef3ba6b7b178c50f30576b89a /contrib/libs/libfuzzer | |
parent | e287ae0f50d11631c6c478a92fe31439cd031146 (diff) | |
download | ydb-791c95291cdeb78d59b058c8575f99cef4a94c86.tar.gz |
Intermediate changes
commit_hash:253107c849a56d8c7ba480eeeba03813d825cc50
Diffstat (limited to 'contrib/libs/libfuzzer')
-rw-r--r-- | contrib/libs/libfuzzer/.yandex_meta/__init__.py | 11 | ||||
-rw-r--r-- | contrib/libs/libfuzzer/.yandex_meta/override.nix | 47 | ||||
-rw-r--r-- | contrib/libs/libfuzzer/lib/fuzzer/afl/ya.make | 4 | ||||
-rw-r--r-- | contrib/libs/libfuzzer/ya.make | 2 |
4 files changed, 40 insertions, 24 deletions
diff --git a/contrib/libs/libfuzzer/.yandex_meta/__init__.py b/contrib/libs/libfuzzer/.yandex_meta/__init__.py index adc152aeb9..fee8fba77d 100644 --- a/contrib/libs/libfuzzer/.yandex_meta/__init__.py +++ b/contrib/libs/libfuzzer/.yandex_meta/__init__.py @@ -1,5 +1,6 @@ from devtools.yamaker.modules import Linkable, Switch -from devtools.yamaker.platform_macros import LLVM_VERSION + +# from devtools.yamaker.platform_macros import LLVM_VERSION from devtools.yamaker.project import CMakeNinjaNixProject @@ -46,14 +47,16 @@ def post_install(self): llvm_libfuzzer = CMakeNinjaNixProject( - owners=["g:cpp-contrib"], - nixattr=f"llvmPackages_{LLVM_VERSION}.compiler-rt", + nixattr="llvmPackages_14.compiler-rt", arcdir="contrib/libs/libfuzzer", - build_targets=["clang_rt.fuzzer-x86_64", "libfuzzer-afl.so"], copy_sources=[ "include/fuzzer/FuzzedDataProvider.h", "lib/fuzzer/standalone/StandaloneFuzzTargetMain.c", ], + install_targets=[ + "clang_rt.fuzzer-x86_64", + "fuzzer-afl", + ], put={ "clang_rt.fuzzer-x86_64": ".", "fuzzer-afl": "lib/fuzzer/afl", diff --git a/contrib/libs/libfuzzer/.yandex_meta/override.nix b/contrib/libs/libfuzzer/.yandex_meta/override.nix index 56f7afce72..6e09bfa07f 100644 --- a/contrib/libs/libfuzzer/.yandex_meta/override.nix +++ b/contrib/libs/libfuzzer/.yandex_meta/override.nix @@ -1,27 +1,40 @@ pkgs: attrs: with pkgs; with attrs; rec { version = "15.0.5"; - src = let - pname = "compiler-rt"; - source = fetchFromGitHub { - owner = "llvm"; - repo = "llvm-project"; - rev = "llvmorg-${version}"; - hash = "sha256-lYwtqpodBLPgA+BpdesZ5JetcLccpBKSrE1Pqyj+Wvw="; - }; - in (runCommand "${pname}-src-${version}" {} ('' - mkdir -p "$out" - cp -r ${source}/cmake "$out" - cp -r ${source}/${pname} "$out" - '')).overrideAttrs(attrs: rec { - urls = source.urls; - }); - sourceRoot = "compiler-rt-src-${version}/compiler-rt"; + src = fetchFromGitHub { + owner = "llvm"; + repo = "llvm-project"; + rev = "llvmorg-${version}"; + hash = "sha256-lYwtqpodBLPgA+BpdesZ5JetcLccpBKSrE1Pqyj+Wvw="; + }; + + sourceRoot = "source/compiler-rt"; patches = [ ./cmake-afl.patch ./no-fuchsia.patch ]; - NIX_CFLAGS_COMPILE = [ ]; # Remove SCUDO_DEFAULT_OPTIONS. + cmakeFlags = [ + "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON" + "-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}" + + # Build only necessary subset (i. e. libfuzzer) + "-DCOMPILER_RT_BUILD_LIBFUZZER=ON" + "-DCOMPILER_RT_BUILD_SANITIZERS=OFF" + "-DCOMPILER_RT_BUILD_PROFILE=OFF" + "-DCOMPILER_RT_BUILD_MEMPROF=OFF" + "-DCOMPILER_RT_BUILD_BUILTINS=OFF" + "-DCOMPILER_RT_BUILD_CRT=OFF" + "-DCOMPILER_RT_BUILD_XRAY=OFF" + "-DCOMPILER_RT_BUILD_ORC=OFF" + "-DCOMPILER_RT_BUILD_GWP_ASAN=OFF" + + # Link against external libcxx + "-DCOMPILER_RT_USE_LIBCXX=OFF" + ]; + + # Remove SCUDO_DEFAULT_OPTIONS + env = {}; + NIX_CFLAGS_COMPILE = []; } diff --git a/contrib/libs/libfuzzer/lib/fuzzer/afl/ya.make b/contrib/libs/libfuzzer/lib/fuzzer/afl/ya.make index 87855c497b..f6f3a61871 100644 --- a/contrib/libs/libfuzzer/lib/fuzzer/afl/ya.make +++ b/contrib/libs/libfuzzer/lib/fuzzer/afl/ya.make @@ -2,14 +2,14 @@ LIBRARY() -VERSION(15.0.5) - LICENSE(Apache-2.0 WITH LLVM-exception) LICENSE_TEXTS(.yandex_meta/licenses.list.txt) SUBSCRIBER(g:cpp-contrib) +VERSION(15.0.5) + PEERDIR( contrib/libs/afl/llvm_mode ) diff --git a/contrib/libs/libfuzzer/ya.make b/contrib/libs/libfuzzer/ya.make index b3db84a8c4..bd9b1ea640 100644 --- a/contrib/libs/libfuzzer/ya.make +++ b/contrib/libs/libfuzzer/ya.make @@ -1,4 +1,4 @@ -# Generated by devtools/yamaker from nixpkgs 22.05. +# Generated by devtools/yamaker from nixpkgs 24.05. LIBRARY() |