Fork of Tangara with customizations
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
tangara-fw/lib/faad2/BUILD.bazel

80 lines
2.0 KiB

load("@rules_fuzzing//fuzzing:cc_defs.bzl", "cc_fuzz_test")
load("@properties//:properties.bzl", "PROPERTIES")
# Unless building for embedded systems all headers / functions should exist.
FAAD_DEFINES = [
"APPLY_DRC",
"HAVE_INTTYPES_H=1",
"HAVE_MEMCPY=1",
"HAVE_STRING_H=1",
"HAVE_STRINGS_H=1",
"HAVE_SYS_STAT_H=1",
"HAVE_SYS_TYPES_H=1",
"STDC_HEADERS=1",
"PACKAGE_VERSION=\\\"%s\\\"" % PROPERTIES["PACKAGE_VERSION"],
]
FAAD_SOURCES = glob([
"libfaad/**/*.c",
"libfaad/**/*.h",
])
FAAD_FLAGS = [
"-Wall",
"-pedantic",
]
DRM_AFFIX = [
"",
"_drm",
]
DRM_DEFINES = [
[],
["DRM_SUPPORT"],
]
FIXED_AFFIX = [
"",
"_fixed",
]
FIXED_DEFINES = [
[],
["FIXED_POINT"],
]
[cc_library(
name = "faad" + DRM_AFFIX[drm] + FIXED_AFFIX[fixed],
srcs = FAAD_SOURCES,
hdrs = ["include/neaacdec.h"],
copts = FAAD_FLAGS,
includes = ["libfaad"],
local_defines = FAAD_DEFINES + DRM_DEFINES[drm] + FIXED_DEFINES[fixed],
strip_include_prefix = "include",
) for drm in range(2) for fixed in range(2)]
# To start fuzzing run: bazel run --config=asan-libfuzzer //:fuzz_config_run
cc_fuzz_test(
name = "fuzz_config",
srcs = ["fuzz/fuzz_config.c"],
deps = [":faad"],
)
# To start fuzzing run: bazel run --config=asan-libfuzzer //:fuzz_decode_run
[cc_fuzz_test(
name = "fuzz_decode" + DRM_AFFIX[drm] + FIXED_AFFIX[fixed],
srcs = ["fuzz/fuzz_decode.c"],
local_defines = DRM_DEFINES[drm],
deps = [":faad" + DRM_AFFIX[drm] + FIXED_AFFIX[fixed]],
) for drm in range(2) for fixed in range(2)]
CLI_SOURCES = glob(["frontend/**/*.c", "frontend/**/*.h"], exclude = ["frontend/**/getopt.*"])
[cc_binary(
name = "faad_cli" + DRM_AFFIX[drm] + FIXED_AFFIX[fixed],
srcs = CLI_SOURCES,
includes = ["frontend"],
local_defines = FAAD_DEFINES + DRM_DEFINES[drm] + FIXED_DEFINES[fixed],
deps = [":faad" + DRM_AFFIX[drm] + FIXED_AFFIX[fixed]],
) for drm in range(2) for fixed in range(2)]