diff mbox

[0/3] cmake: fix autogenerated clar headers

Message ID cover.1728914219.git.ps@pks.im (mailing list archive)
State New
Headers show

Commit Message

Patrick Steinhardt Oct. 14, 2024, 2:06 p.m. UTC
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":

+++ b/Makefile
diff --git a/t/unit-tests/generate-clar-decls.sh b/t/unit-tests/generate-clar-decls.sh
index 6646a90f71..49c61d29b3 100755

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

Comments

Taylor Blau Oct. 14, 2024, 9:40 p.m. UTC | #1
On Mon, Oct 14, 2024 at 04:06:38PM +0200, Patrick Steinhardt wrote:
> 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":

Thanks. I had initially kicked the latter out of 'seen' when applying
both to my tree. But when I went back and read the contents of these
patches more carefully I saw your note here, which is very much
appreciated.

Thanks,
Taylor
diff mbox

Patch

diff --cc Makefile
index 87b86c5be1,0101d349f3..0000000000
--- a/Makefile
--- 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"