CI: Rework fuzzing and sanitizing
This commit is contained in:
39
xmake/toolchains/hfuzz-clang/xmake.lua
Normal file
39
xmake/toolchains/hfuzz-clang/xmake.lua
Normal file
@@ -0,0 +1,39 @@
|
||||
toolchain("hfuzz-clang")
|
||||
|
||||
set_homepage("https://honggfuzz.dev")
|
||||
set_description("Security oriented software fuzzer. Supports evolutionary, feedback-driven fuzzing based on code coverage (SW and HW based)")
|
||||
|
||||
set_kind("standalone")
|
||||
|
||||
set_toolset("cc", "hfuzz-clang")
|
||||
set_toolset("cxx", "hfuzz-clang++")
|
||||
set_toolset("ld", "hfuzz-clang++", "hfuzz-clang")
|
||||
set_toolset("sh", "hfuzz-clang++", "hfuzz-clang")
|
||||
set_toolset("ar", "ar")
|
||||
set_toolset("strip", "strip")
|
||||
set_toolset("mm", "hfuzz-clang")
|
||||
set_toolset("mxx", "hfuzz-clang++")
|
||||
set_toolset("as", "hfuzz-clang")
|
||||
|
||||
add_cxflags("-fsanitize=fuzzer-no-link")
|
||||
add_ldflags("-fsanitize=fuzzer-no-link")
|
||||
add_shflags("-fsanitize=fuzzer-no-link")
|
||||
add_arflags("-fsanitize=fuzzer-no-link")
|
||||
|
||||
on_check(function (toolchain)
|
||||
return import("lib.detect.find_tool")("hfuzz-clang")
|
||||
end)
|
||||
|
||||
on_load(function (toolchain)
|
||||
local march
|
||||
if toolchain:is_arch("x86_64", "x64") then
|
||||
march = "-m64"
|
||||
elseif toolchain:is_arch("i386", "x86") then
|
||||
march = "-m32"
|
||||
end
|
||||
if march then
|
||||
toolchain:add("cxflags", march)
|
||||
toolchain:add("ldflags", march)
|
||||
toolchain:add("shflags", march)
|
||||
end
|
||||
end)
|
||||
Reference in New Issue
Block a user