Skip to content

automate clangd/compile_commands.json gen via builds - #21361

Merged
Mytherin merged 1 commit into
duckdb:v1.5-variegatafrom
benfleis:integrate-clangd-updates-to-builds
Mar 14, 2026
Merged

Mytherin merged 1 commit into
duckdb:v1.5-variegatafrom
benfleis:integrate-clangd-updates-to-builds

Conversation

@benfleis

@benfleis benfleis commented Mar 13, 2026

Copy link
Copy Markdown
Member

Updates CMake to put the latest compile_commands.json file into a common directory outside of ./build so that it [a] remains up to date and [b] usable even after make clean. Guarded by CMAKE_EXPORT_COMPILE_COMMANDS, which is default on, but can be disabled.

Dev convenience - has no impact on actual builds.

benfleis added a commit to benfleis/extension-ci-tools that referenced this pull request Mar 13, 2026
Using .cache/ instead of build/ allows compile_commands to outlive
`make clean`. See also: duckdb/duckdb/pull/21361
Updates CMake to put the latest compile_commands.json file into a
common directory _outside of ./build_ so that it [a] remains up to
2026-03-13and [b] usable even after make clean. Guarded by
`CMAKE_EXPORT_COMPILE_COMMANDS`, which is default on, but can be
disabled.

Dev convenience - has no impact on actual builds.
@benfleis
benfleis force-pushed the integrate-clangd-updates-to-builds branch from 94d3563 to 548f9cb Compare March 13, 2026 13:01
benfleis added a commit to benfleis/extension-ci-tools that referenced this pull request Mar 13, 2026
Using .cache/ instead of build/ allows compile_commands to outlive
`make clean`. See also: duckdb/duckdb/pull/21361
@duckdb-draftbot
duckdb-draftbot marked this pull request as draft March 13, 2026 16:58
@benfleis
benfleis marked this pull request as ready for review March 13, 2026 17:23
@benfleis

Copy link
Copy Markdown
Member Author

cc @hawkfish since I think you added the original clangd support!

benfleis added a commit to benfleis/extension-ci-tools that referenced this pull request Mar 14, 2026
Using .cache/ instead of build/ allows compile_commands to outlive
`make clean`. See also: duckdb/duckdb/pull/21361
@Mytherin
Mytherin merged commit cb89be4 into duckdb:v1.5-variegata Mar 14, 2026
105 checks passed
@Mytherin

Copy link
Copy Markdown
Collaborator

Thanks!

Mytherin added a commit that referenced this pull request Mar 14, 2026
Updates CMake to put the latest compile_commands.json file into a
common directory _outside of ./build_ so that it [a] remains up to
2026-03-13and [b] usable even after make clean. Guarded by
`CMAKE_EXPORT_COMPILE_COMMANDS`, which is default on, but can be
disabled.

Dev convenience - has no impact on actual builds.

(see same for v1.5 #21361)
github-actions Bot pushed a commit to duckdb/duckdb-r that referenced this pull request Mar 19, 2026
Date: 2026-03-15 10:19:54 +0100

parquet: avoid corrupting define buffers during skips (duckdb/duckdb#21298)
Parquet: Ignore optional filters when deciding whether or not to do a lazy fetch (duckdb/duckdb#21383)
automate clangd/compile_commands.json gen via builds (duckdb/duckdb#21361)
github-actions Bot added a commit to duckdb/duckdb-r that referenced this pull request Mar 19, 2026
Date: 2026-03-15 10:19:54 +0100

parquet: avoid corrupting define buffers during skips (duckdb/duckdb#21298)
Parquet: Ignore optional filters when deciding whether or not to do a lazy fetch (duckdb/duckdb#21383)
automate clangd/compile_commands.json gen via builds (duckdb/duckdb#21361)

Co-authored-by: krlmlr <krlmlr@users.noreply.github.com>
krlmlr added a commit to duckdb/duckdb-r that referenced this pull request Mar 22, 2026
Date: 2026-03-15 10:19:54 +0100

parquet: avoid corrupting define buffers during skips (duckdb/duckdb#21298)
Parquet: Ignore optional filters when deciding whether or not to do a lazy fetch (duckdb/duckdb#21383)
automate clangd/compile_commands.json gen via builds (duckdb/duckdb#21361)

Co-authored-by: krlmlr <krlmlr@users.noreply.github.com>
krlmlr added a commit to krlmlr/duckdb-r-old that referenced this pull request Mar 22, 2026
Date: 2026-03-15 10:19:54 +0100

parquet: avoid corrupting define buffers during skips (duckdb/duckdb#21298)
Parquet: Ignore optional filters when deciding whether or not to do a lazy fetch (duckdb/duckdb#21383)
automate clangd/compile_commands.json gen via builds (duckdb/duckdb#21361)

Co-authored-by: krlmlr <krlmlr@users.noreply.github.com>
krlmlr added a commit to krlmlr/duckdb-r-old that referenced this pull request Mar 22, 2026
Date: 2026-03-15 10:19:54 +0100

parquet: avoid corrupting define buffers during skips (duckdb/duckdb#21298)
Parquet: Ignore optional filters when deciding whether or not to do a lazy fetch (duckdb/duckdb#21383)
automate clangd/compile_commands.json gen via builds (duckdb/duckdb#21361)

Co-authored-by: krlmlr <krlmlr@users.noreply.github.com>
JelteF added a commit to JelteF/duckdb that referenced this pull request Apr 9, 2026
In duckdb#21361 the compile_commands.json file that is configured for clangd
automatically gets updated on normal builds. But it actually broke the
dedicated "make clangd" command. I use the "make clangd" command quite
often for checkouts where I have the duckdb sources and include them in
another build (like for an extension), but don't actually build duckdb
itself separately. In those cases I still want to browse the code, but I
will never run "make build_*" from the duckdb directory. So "make clangd"
was an easy way to get "go to definition" working.
@JelteF JelteF mentioned this pull request Apr 9, 2026
Mytherin added a commit that referenced this pull request Apr 9, 2026
In #21361 the compile_commands.json file that is configured for clangd
automatically gets updated on normal builds. But it actually broke the
dedicated "make clangd" command. I use the "make clangd" command quite
often for checkouts where I have the duckdb sources and include them in
another build (like for an extension), but don't actually build duckdb
itself separately. In those cases I still want to browse the code, but I
will never run "make build_*" from the duckdb directory. So "make
clangd" was an easy way to get "go to definition" working.
evertlammerts pushed a commit to evertlammerts/duckdb that referenced this pull request Apr 10, 2026
In duckdb#21361 the compile_commands.json file that is configured for clangd
automatically gets updated on normal builds. But it actually broke the
dedicated "make clangd" command. I use the "make clangd" command quite
often for checkouts where I have the duckdb sources and include them in
another build (like for an extension), but don't actually build duckdb
itself separately. In those cases I still want to browse the code, but I
will never run "make build_*" from the duckdb directory. So "make clangd"
was an easy way to get "go to definition" working.
kaka11chen pushed a commit to AstroVela/vane that referenced this pull request Aug 14, 2026
…1361)

Updates CMake to put the latest compile_commands.json file into a common
directory _outside of ./build_ so that it [a] remains up to date and [b]
usable even after make clean. Guarded by
`CMAKE_EXPORT_COMPILE_COMMANDS`, which is default on, but can be
disabled.

Dev convenience - has no impact on actual builds.

Upstream-Commit: duckdb/duckdb@cb89be4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants