From f7c896cfd80b511c30be5452edb0a350a7dd253c Mon Sep 17 00:00:00 2001 From: John Ericson Date: Mon, 15 May 2023 10:38:11 -0400 Subject: [PATCH] Dedup some markdown -> C++ big literal stuff in build system This pattern rule was unwisely hidden in `src/libstore/local.mk`. Now it is properly in `mk/` and we reuse it for the profile docs too. --- mk/cxx-big-literal.mk | 5 +++++ mk/lib.mk | 1 + src/libstore/local.mk | 6 ------ src/nix/local.mk | 8 ++++---- src/nix/profile.md | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) create mode 100644 mk/cxx-big-literal.mk diff --git a/mk/cxx-big-literal.mk b/mk/cxx-big-literal.mk new file mode 100644 index 000000000..85365df8e --- /dev/null +++ b/mk/cxx-big-literal.mk @@ -0,0 +1,5 @@ +%.gen.hh: % + @echo 'R"foo(' >> $@.tmp + $(trace-gen) cat $< >> $@.tmp + @echo ')foo"' >> $@.tmp + @mv $@.tmp $@ diff --git a/mk/lib.mk b/mk/lib.mk index 92f0983d5..34fa624d8 100644 --- a/mk/lib.mk +++ b/mk/lib.mk @@ -101,6 +101,7 @@ include mk/libraries.mk include mk/programs.mk include mk/patterns.mk include mk/templates.mk +include mk/cxx-big-literal.mk include mk/tests.mk diff --git a/src/libstore/local.mk b/src/libstore/local.mk index e5e24501e..0be0bf310 100644 --- a/src/libstore/local.mk +++ b/src/libstore/local.mk @@ -57,12 +57,6 @@ $(d)/local-store.cc: $(d)/schema.sql.gen.hh $(d)/ca-specific-schema.sql.gen.hh $(d)/build.cc: -%.gen.hh: % - @echo 'R"foo(' >> $@.tmp - $(trace-gen) cat $< >> $@.tmp - @echo ')foo"' >> $@.tmp - @mv $@.tmp $@ - clean-files += $(d)/schema.sql.gen.hh $(d)/ca-specific-schema.sql.gen.hh $(eval $(call install-file-in, $(d)/nix-store.pc, $(libdir)/pkgconfig, 0644)) diff --git a/src/nix/local.mk b/src/nix/local.mk index 86d5c4775..20ea29d10 100644 --- a/src/nix/local.mk +++ b/src/nix/local.mk @@ -33,8 +33,8 @@ src/nix-channel/nix-channel.cc: src/nix-channel/unpack-channel.nix.gen.hh src/nix/main.cc: doc/manual/generate-manpage.nix.gen.hh doc/manual/utils.nix.gen.hh -src/nix/profile.cc: src/nix/profile.md src/nix/doc/files/profiles.md - src/nix/doc/files/%.md: doc/manual/src/command-ref/files/%.md - mkdir -p $$(dirname $@) - ( printf 'R""(\n'; cat $^; printf '\n)""' ) > $@ + @mkdir -p $$(dirname $@) + @cp $< $@ + +src/nix/profile.cc: src/nix/profile.md src/nix/doc/files/profiles.md.gen.hh diff --git a/src/nix/profile.md b/src/nix/profile.md index c6a266c24..bd13f906f 100644 --- a/src/nix/profile.md +++ b/src/nix/profile.md @@ -11,7 +11,7 @@ them to be rolled back easily. )"" -#include "doc/files/profiles.md" +#include "doc/files/profiles.md.gen.hh" R""(