made library dependencies more dynamic
switched to absolute paths
This commit is contained in:
@@ -1,25 +1,30 @@
|
||||
build_dir = build
|
||||
config_dir = config
|
||||
docker = podman
|
||||
library_dir = library
|
||||
propers_dir = propers
|
||||
template_dir = templates
|
||||
tex_deps = $(template_dir)/*.tt $(library_dir)/*/*/*.tt $(propers_dir)/*.tt $(config_dir)/song_choices.csv $(config_dir)/qr_codes.csv $(config_dir)/variables.tt
|
||||
.PHONY: all
|
||||
TOPDIR :::= $(PWD)
|
||||
build_dir ::= $(TOPDIR)/build
|
||||
config_dir ::= $(TOPDIR)/config
|
||||
docker ::= podman
|
||||
library_dir ::= $(TOPDIR)/library
|
||||
propers_dir ::= $(TOPDIR)/propers
|
||||
template_dir ::= $(TOPDIR)/templates
|
||||
song_choices ::= $(config_dir)/song_choices.csv
|
||||
user_variables ::= $(config_dir)/variables.tt
|
||||
export
|
||||
.PHONY: clean all
|
||||
*: $(build_dir)/dynamic_deps.mk
|
||||
$(build_dir)/dynamic_deps.mk: build_dir $(template_dir)/dynamic_deps.mk.tt $(song_choices) $(user_variables)
|
||||
$(MAKE) -C $(template_dir) $@
|
||||
include $(build_dir)/dynamic_deps.mk
|
||||
clean:
|
||||
$(RM) -r build
|
||||
all: leadsheet_collection.pdf choir_scores.pdf print_a3.pdf clean_intermediate #print_a4.pdf
|
||||
%.pdf: build
|
||||
$(MAKE) -C $(build_dir) $@
|
||||
songsheet.tex: $(template_dir)/songsheet.tt $(tex_deps) $(template_dir)/header.tt $(template_dir)/head.tt $(template_dir)/footer.tt
|
||||
%.tex: build
|
||||
$(MAKE) -C $(template_dir) $@
|
||||
clean_intermediate:
|
||||
$(MAKE) -C $(build_dir) clean_intermediate
|
||||
build: build-Makefile
|
||||
mkdir -p $(build_dir) && \
|
||||
build_dir:
|
||||
mkdir -p $(build_dir)
|
||||
build: build_dir build-Makefile
|
||||
cp build-Makefile $(build_dir)/Makefile && \
|
||||
cp -r library/gregorio_scores $(build_dir)
|
||||
clean:
|
||||
$(RM) -r build
|
||||
init:
|
||||
git submodule update --init --recursive
|
||||
build_docker_image:
|
||||
@@ -27,5 +32,8 @@ build_docker_image:
|
||||
pull_docker:
|
||||
$(docker) pull gitea.leopold.fajtak.at/leopold/songsheet_generator:latest
|
||||
build_in_docker:
|
||||
$(docker) run -v `pwd`:/data songsheet_generator make
|
||||
|
||||
$(docker) run -v `pwd`:/data songsheet_generator make -j all
|
||||
tex_deps ::= $(template_dir)/variables.tt $(config_dir)/qr_codes.csv $(config_dir)/variables.tt $(dynamic_deps)
|
||||
songsheet.tex: $(template_dir)/songsheet.tt $(tex_deps) $(template_dir)/header.tt $(template_dir)/head.tt $(template_dir)/footer.tt
|
||||
%.tex: build $(tex_deps)
|
||||
$(MAKE) -C $(template_dir) $@
|
||||
|
||||
+1
-1
@@ -18,6 +18,6 @@ songsheet_a4part.pdf: songsheet_a5.pdf
|
||||
songsheet_a5.pdf: songsheet.pdf
|
||||
pdfjam -o $@ --nup 2x1 --paper a5paper --landscape $<
|
||||
%.tex:
|
||||
$(MAKE) -C .. $@
|
||||
$(MAKE) -C $(TOPDIR) $@
|
||||
clean_intermediate:
|
||||
$(RM) songsheet_a3part.pdf songsheet_a4part.pdf songsheet_a5.pdf
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
purpose | content | template | variables
|
||||
| | |
|
||||
| | | freie_lieder/adeste_fideles
|
||||
introitus | | |
|
||||
#confiteor | \input{library/gebete/confiteor/confiteor_de.tex} | |
|
||||
kyrie | | |
|
||||
|
||||
|
+9
-9
@@ -1,13 +1,13 @@
|
||||
build_dir = ../build
|
||||
library_dir = ../library
|
||||
propers_dir = ../propers
|
||||
config_dir = ../config
|
||||
tex_deps = *.tt $(library_dir)/*/*/*.tt $(propers_dir)/*.tt $(config_dir)/song_choices.csv $(config_dir)/variables.tt
|
||||
tpage_defs = --define config_dir=$(config_dir) --define library_dir=$(library_dir) --define propers_dir=$(propers_dir)
|
||||
tpage = tpage $(tpage_defs)
|
||||
tex_deps = *.tt $(config_dir)/variables.tt $(dynamic_deps)
|
||||
songsheet.tex: songsheet.tt $(tex_deps) header.tt head.tt footer.tt
|
||||
tpage $< > $(build_dir)/$@
|
||||
$(tpage) $< > $(build_dir)/$@
|
||||
musician_scores.tex: musician_scores.tt $(tex_deps)
|
||||
tpage $< > $(build_dir)/$@
|
||||
$(tpage) $< > $(build_dir)/$@
|
||||
leadsheet_collection.tex: musician_scores.tt $(tex_deps)
|
||||
tpage --define parts=band $< > $(build_dir)/$@
|
||||
$(tpage) --define parts=band $< > $(build_dir)/$@
|
||||
choir_scores.tex: musician_scores.tt $(tex_deps)
|
||||
tpage --define parts=SATB $< > $(build_dir)/$@
|
||||
$(tpage) --define parts=SATB $< > $(build_dir)/$@
|
||||
$(build_dir)/dynamic_deps.mk: dynamic_deps.mk.tt $(song_choices) $(user_variables)
|
||||
$(tpage) $< > $@
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
dynamic_deps = [% PROCESS variables.tt;
|
||||
USE song_choices = datafile("${config_dir}/song_choices.csv", delim= '|');
|
||||
FOREACH song = song_choices;
|
||||
IF song.variables != '';
|
||||
GET "${library_dir}/${song.variables}/* ";
|
||||
END;
|
||||
END;
|
||||
IF proper != '';
|
||||
GET "${propers_dir}/${proper}.tt";
|
||||
END;
|
||||
-%]
|
||||
@@ -1,4 +1,8 @@
|
||||
[% PROCESS variables.tt -%]
|
||||
[% PROCESS variables.tt;
|
||||
IF proper != '';
|
||||
PROCESS "${propers_dir}/${proper}.tt";
|
||||
END;
|
||||
-%]
|
||||
[% parts = 0 -%]
|
||||
[% INCLUDE header.tt -%]
|
||||
\begin{document}
|
||||
|
||||
@@ -8,12 +8,5 @@
|
||||
small_footer = 0
|
||||
lent = 0
|
||||
meditations = 0
|
||||
config_dir = '../config'
|
||||
library_dir = '../library'
|
||||
propers_dir = '../propers/'
|
||||
-%]
|
||||
[% PROCESS "${config_dir}/variables.tt";
|
||||
IF proper != '';
|
||||
PROCESS "${propers_dir}/${proper}.tt";
|
||||
END;
|
||||
-%]
|
||||
[% PROCESS "${config_dir}/variables.tt" -%]
|
||||
|
||||
Reference in New Issue
Block a user