perf-check(1)
===============

NAME
----
perf-check - check if features are present in perf

SYNOPSIS
--------
[verse]
'perf check' [<options>]
'perf check' {feature <feature_list>} [<options>]

DESCRIPTION
-----------
With no subcommands given, 'perf check' command just prints the command
usage on the standard output.

If the subcommand 'feature' is used, then status of feature is printed
on the standard output (unless '-q' is also passed), ie. whether it is
compiled-in/built-in or not.
Also, 'perf check feature' returns with exit status 0 if the feature
is built-in, otherwise returns with exit status 1.

SUBCOMMANDS
-----------

feature::

        Print whether feature(s) is compiled-in or not, and also returns with an
        exit status of 0, if passed feature(s) are compiled-in, else 1.

        It expects a feature list as an argument. There can be a single feature
        name/macro, or multiple features can also be passed as a comma-separated
        list, in which case the exit status will be 0 only if all of the passed
        features are compiled-in.

        The feature names/macros are case-insensitive.

        Example Usage:
                perf check feature libtraceevent
                perf check feature HAVE_LIBTRACEEVENT
                perf check feature libtraceevent,bpf

        Supported feature names/macro:
                aio                     /  HAVE_AIO_SUPPORT
                bpf                     /  HAVE_LIBBPF_SUPPORT
                bpf_skeletons           /  HAVE_BPF_SKEL
                debuginfod              /  HAVE_DEBUGINFOD_SUPPORT
                dwarf                   /  HAVE_LIBDW_SUPPORT
                dwarf_getlocations      /  HAVE_LIBDW_SUPPORT
                dwarf-unwind            /  HAVE_DWARF_UNWIND_SUPPORT
                libbfd                  /  HAVE_LIBBFD_SUPPORT
                libbpf-strings          /  HAVE_LIBBPF_STRINGS_SUPPORT
                libcapstone             /  HAVE_LIBCAPSTONE_SUPPORT
                libdw-dwarf-unwind      /  HAVE_LIBDW_SUPPORT
                libelf                  /  HAVE_LIBELF_SUPPORT
                libLLVM                 /  HAVE_LIBLLVM_SUPPORT
                libnuma                 /  HAVE_LIBNUMA_SUPPORT
                libopencsd              /  HAVE_CSTRACE_SUPPORT
                libperl                 /  HAVE_LIBPERL_SUPPORT
                libpfm4                 /  HAVE_LIBPFM
                libpython               /  HAVE_LIBPYTHON_SUPPORT
                libslang                /  HAVE_SLANG_SUPPORT
                libtraceevent           /  HAVE_LIBTRACEEVENT
                libunwind               /  HAVE_LIBUNWIND_SUPPORT
                lzma                    /  HAVE_LZMA_SUPPORT
                numa_num_possible_cpus  /  HAVE_LIBNUMA_SUPPORT
                zlib                    /  HAVE_ZLIB_SUPPORT
                zstd                    /  HAVE_ZSTD_SUPPORT

OPTIONS
-------
-q::
--quiet::
        Do not print any messages or warnings

        This can be used along with subcommands such as 'perf check feature'
        to hide unnecessary output in test scripts, eg.
        'perf check feature --quiet libtraceevent'
