git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 0/3] cmake: fix autogenerated clar headers

From
Patrick Steinhardt <ps@pks.im>
Date
Oct 14, 2024, 14:06 UTC
Message-ID
<cover.1728914219.git.ps@pks.im>
In-Reply-To
<CAGjHeYfyH+cOMYYYHnFR+Vu9T+RbmzO1SpB_-kbmBSf1DitJhA@mail.gmail.com>
Hi,

this small patch series fixes how we set up autogenerated clar headers in CMake such that the clar builds again. The underlying issue is that we accidentally added the source directory, not the build directory, to our list of include directories. I guess this went unnoticed because if you also happen to use Makefiles in the same repo, we'd have found the Makefile-generated headers by accident.

The other two patches unify the infra to generate "clar-decls.h", which has basically been pulled out of my build system modernization patch series.

Taylor: note that this conflicts with the patch series at [1]. The
conflict can be solved by accepting the Makefile of this series here and
adding the following on top of "t/unit-tests/generate-clar-decls.sh":

diff --cc Makefile index 87b86c5be1,0101d349f3..0000000000

--- a/Makefile
+++ b/Makefile
diff --git a/t/unit-tests/generate-clar-decls.sh b/t/unit-tests/generate-clar-decls.sh
index 6646a90f71..49c61d29b3 100755
--- a/t/unit-tests/generate-clar-decls.sh
+++ b/t/unit-tests/generate-clar-decls.sh
@@ -13,6 +13,6 @@ while test "$#" -ne 0
 do
 	suite="$1"
 	shift
-	sed -ne "s/^\(void test_$suite__[a-zA-Z_0-9][a-zA-Z_0-9]*(void)$\)/extern \1;/p" "$suite" ||
+	sed -ne "s/^\(void test_$suite__[a-zA-Z_0-9][a-zA-Z_0-9]*(void)\)$/extern \1;/p" "$suite" ||
 	exit 1
 done >"$OUTPUT"

Thanks!

Patrick

[1]: <cover.1728903464.git.ps@pks.im>

Patrick Steinhardt (3):
  Makefile: extract script to generate clar declarations
  cmake: fix compilation of clar-based unit tests
  cmake: set up proper dependencies for generated clar headers

 Makefile                            |  4 +--
 contrib/buildsystems/CMakeLists.txt | 52 ++++++++---------------------
 t/unit-tests/generate-clar-decls.sh | 18 ++++++++++
 3 files changed, 32 insertions(+), 42 deletions(-)
 create mode 100755 t/unit-tests/generate-clar-decls.sh
-- 
2.47.0.72.gef8ce8f3d4.dirty
Previous: Johannes SchindelinNext: Patrick Steinhardt
Message 3 of 20 in “Bug report”
  1. Ed ReelOct 9, 2024
  2. Johannes SchindelinOct 14, 2024
  3. 0/3 cmake: fix autogenerated clar headersPatrick Steinhardt, Oct 14, 2024
  4. 1/3 Makefile: extract script to generate clar declarationsPatrick Steinhardt, Oct 14, 2024
  5. Taylor BlauOct 14, 2024
  6. Patrick SteinhardtOct 15, 2024
  7. 2/3 cmake: fix compilation of clar-based unit testsPatrick Steinhardt, Oct 14, 2024
  8. Taylor BlauOct 14, 2024
  9. Patrick SteinhardtOct 15, 2024
  10. 3/3 cmake: set up proper dependencies for generated clar headersPatrick Steinhardt, Oct 14, 2024
  11. Taylor BlauOct 14, 2024
  12. Taylor BlauOct 14, 2024
  13. 0/3 cmake: fix autogenerated clar headersPatrick Steinhardt, Oct 15, 2024
  14. 1/3 Makefile: extract script to generate clar declarationsPatrick Steinhardt, Oct 15, 2024
  15. Taylor BlauOct 15, 2024
  16. Toon ClaesOct 18, 2024
  17. Patrick SteinhardtOct 21, 2024
  18. 2/3 cmake: fix compilation of clar-based unit testsPatrick Steinhardt, Oct 15, 2024
  19. 3/3 cmake: set up proper dependencies for generated clar headersPatrick Steinhardt, Oct 15, 2024
  20. Taylor BlauOct 15, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.