# clangd configuration for Nebula Browser
#
# Full diagnostics require:
#   1. CEF binary distribution unpacked to thirdparty/cef/
#   2. Running: cmake -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
#   3. Symlink or copy: ln -s build/compile_commands.json .
#
# Without compile_commands.json, clangd uses fallback flags below.

CompileFlags:
  Add:
    - -std=c++20
    - -xobjective-c++
    - -Isrc
    - -Ithirdparty/cef
    - -Ithirdparty/cef/include
    - -Wno-c++17-extensions

# On macOS builds, Windows/Linux platform sources are not compiled. Ignore them
# so clangd does not try to parse windows.h / Linux headers with the Mac SDK.
---
If:
  PathMatch: src/platform/win/.*
CompileFlags:
  Add:
    - -Wno-everything
  Remove:
    - -xobjective-c++
---
If:
  PathMatch: src/platform/linux/.*
CompileFlags:
  Add:
    - -Wno-everything
  Remove:
    - -xobjective-c++
