Skip to content
  • Alexander Bulekov's avatar
    aa4f3a3b
    build: fix check for -fsanitize-coverage-allowlist · aa4f3a3b
    Alexander Bulekov authored
    
    
    The existing check has two problems:
    1. Meson uses a private directory for the get_supported_arguments check.
    ./instrumentation-filter does not exist in that private directory (it is
    copied into the root of the build-directory).
    
    2. fsanitize-coverage-allowlist is unused when coverage instrumentation
    is not configured. No instrumentation are passed for the
    get_supported_arguments check
    
    Thus the check always fails. To work around this, change the check to an
    "if cc.compiles" check and provide /dev/null, instead of the real
    filter.
    
    Meson log:
    Working directory:  build/meson-private/tmpl6wld2d9
    Command line:  clang-13 -m64 -mcx16
    build/meson-private/tmpl6wld2d9/output.obj -c -O3 -D_FILE_OFFSET_BITS=64
    -O0 -Werror=implicit-function-declaration -Werror=unknown-warning-option
    -Werror=unused-command-line-argument
    -Werror=ignored-optimization-argument
    -fsanitize-coverage-allowlist=instrumentation-filter
    
    Error:
    error: argument unused during compilation:
    '-fsanitize-coverage-allowlist=instrumentation-filter'
    
    Signed-off-by: default avatarAlexander Bulekov <alxndr@bu.edu>
    Message-Id: <20220614155415.4023833-1-alxndr@bu.edu>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    aa4f3a3b
    build: fix check for -fsanitize-coverage-allowlist
    Alexander Bulekov authored
    
    
    The existing check has two problems:
    1. Meson uses a private directory for the get_supported_arguments check.
    ./instrumentation-filter does not exist in that private directory (it is
    copied into the root of the build-directory).
    
    2. fsanitize-coverage-allowlist is unused when coverage instrumentation
    is not configured. No instrumentation are passed for the
    get_supported_arguments check
    
    Thus the check always fails. To work around this, change the check to an
    "if cc.compiles" check and provide /dev/null, instead of the real
    filter.
    
    Meson log:
    Working directory:  build/meson-private/tmpl6wld2d9
    Command line:  clang-13 -m64 -mcx16
    build/meson-private/tmpl6wld2d9/output.obj -c -O3 -D_FILE_OFFSET_BITS=64
    -O0 -Werror=implicit-function-declaration -Werror=unknown-warning-option
    -Werror=unused-command-line-argument
    -Werror=ignored-optimization-argument
    -fsanitize-coverage-allowlist=instrumentation-filter
    
    Error:
    error: argument unused during compilation:
    '-fsanitize-coverage-allowlist=instrumentation-filter'
    
    Signed-off-by: default avatarAlexander Bulekov <alxndr@bu.edu>
    Message-Id: <20220614155415.4023833-1-alxndr@bu.edu>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Loading