clean::; rm -f $(CLEANFILES)
realclean::; rm -f $(REALCLEANFILES)
force:
-.PHONY: all clean
+.PHONY: all clean force
.SECONDEXPANSION: # not sorry
+SHELL = bash
V ?= 0
V_AT = $(V_AT_$V)
$(call declare-playlist, drwho-silurians, D/Doctor Who/S07E02 BBB. Doctor Who and the Silurians)
M3US = $(addsuffix .m3u8,$(PLAYLISTS))
+DEPFILES += $(addsuffix .dep,$(PLAYLISTS))
TARGETS += $(M3US)
+CLEANFILES += $(DEPFILES)
CLEANFILES += mkm3u.cache-stamp
mkm3u.cache-stamp:
CLEANFILES += *.m3u8.new
$(M3US): %.m3u8: $$($$*_EPLS) mkm3u mkm3u.cache-stamp
$(call v-tag,MKM3U)./mkm3u $(MKM3UFLAGS) $($*_MKM3UFLAGS) \
- "$<" >"$@.new" && mv "$@.new" "$@"
+ -M$*.dep -O$@ -o"$@.new" "$<" && mv "$@.new" "$@"
CHECKS = $(foreach p,$(PLAYLISTS), check/$p)
check: $(CHECKS)
fi
.PHONY: save $(SAVE)
+comma = ,
+check-deps = $(shell if [ -f $1 ]; then for i in $2; do \
+ if ! [ "$$i" -ot $1 ]; then \
+ echo force; break; \
+ fi; \
+ done; fi)
+-include $(DEPFILES)
+
all: $(TARGETS)
p:; : $p