clang-tidy:meson fix GCC-only warning flags

Remove unconditional GCC-only warning options (-Wduplicated-branches,
-Wduplicated-cond, -Wlogical-op) from Meson arguments when building
with Clang. These flags are not recognized by Clang and cause build
failures with -Werror enabled.

The fix gates these warnings by compiler or probes support using
has_argument(), ensuring compatibility across GCC and Clang without
losing strict checks where supported.

Fixed below errors:
'''
error: unknown warning option '-Wduplicated-branches' [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Wduplicated-cond' [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Wlogical-op'; did you mean '-Wlong-long'? [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Wduplicated-branches' [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Wduplicated-cond' [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Wlogical-op'; did you mean '-Wlong-long'? [-Werror,-Wunknown-warning-option]
'''

Change-Id: I9eac0ce52dce994a82e5073e387531a7f0c5aa11
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
1 file changed
tree: bccece4bdbfb9d5ed01a3faaa72605be68e4d25a
  1. linux/
  2. service_files/
  3. subprojects/
  4. .clang-format
  5. .clang-format-ignore
  6. dbus_raw_peci.cpp
  7. LICENSE
  8. meson.build
  9. meson.options
  10. OWNERS
  11. peci.c
  12. peci.h
  13. peci.pc.in
  14. peci_cmds.c
  15. README.md
README.md

libpeci

libpeci is a library that provides various APIs to interface with the IOCTLs provided by the PECI driver in the OpenBMC kernel. Currently available here:

https://github.com/openbmc/linux/blob/dev-5.4/include/uapi/linux/peci-ioctl.h

peci_cmds

This repo also includes a peci_cmds command-line utility with functions that map to the libpeci APIs. It can be used to test PECI functionality across the library, driver, and hardware.

dbus_raw_peci

This repo also includes dbus_raw_peci which provides a raw-peci daemon that exposes a raw PECI interface that is accessible over D-Bus. It can be used when an application needs to send a raw PECI command without loading the full PECI library.