Build report

Start time:
2021-06-04 14:28:01 (UTC)
End time:
2021-06-04 14:34:26 (UTC)
Duration:
6 minutes 25 seconds
Termination Status:
Success
Schedule full rebuild

Previous builds

latest
2021-06-04 14:34:26 (UTC) -
2021-06-04 13:56:09 (UTC) - 5 minutes 8 seconds
2021-06-04 13:24:09 (UTC) - 7 minutes 8 seconds
2021-06-04 13:08:40 (UTC) - 5 minutes 39 seconds
2021-06-04 02:45:49 (UTC) - 135 minutes 48 seconds
2021-06-03 14:58:33 (UTC) - 4 minutes 32 seconds
2021-06-03 10:05:50 (UTC) - 3 minutes 49 seconds
2021-06-03 02:48:10 (UTC) - 138 minutes 8 seconds
2021-06-02 18:30:55 (UTC) - 5 minutes 54 seconds
2021-06-02 03:13:44 (UTC) - 163 minutes 42 seconds

GIT changes

Updating a23f0fcf93..5a327f0213
Fast-forward
 news/nl/nl-202105.it.xhtml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Phase 1

[14:28:02] Starting phase 1
[14:28:03] *   Spawning 4 processes
[14:28:03] *   Indexing 4407 files
[14:28:44] *   Indexation done in 40 seconds!
[14:28:44] *   Written index to /srv/www/fsfe.org_git/search/index.js
[14:28:44] * Creating search index
[14:28:44] * Updating XSL stylesheets
[14:28:45] * Preparing subdirectory events
[14:28:45] * Preparing subdirectory news
[14:28:45] *   Generating nl/.nl-202105.it.xml
[14:28:45] * Updating default stylesheets
[14:28:46] * Updating local menus
[14:28:49] * Generating tag maps
[14:29:48] * Updating tag lists
[14:29:59] * Updating XML lists
[14:30:14] * Checking contents of XML lists
[14:30:15] *   Touching activities/routers/.routers.xmllist
[14:30:16] *   Touching .index.xmllist
[14:30:16] *   Touching news/.newsletter.xmllist
[14:30:16] *   Touching news/.news.xmllist
[14:30:17] *   Touching press/.press.xmllist
[14:30:18] *   Touching tags/.tagged-front-page.xmllist
[14:30:18] *   Touching tags/.tagged-fsfe20.xmllist
[14:30:19] *   Touching tags/.tagged-newsletter.xmllist
[14:30:20] *   Touching tags/.tagged-routers.xmllist
[14:30:20] Finishing phase 1

Phase 2 Makefile

# -----------------------------------------------------------------------------
# Makefile for FSFE website build, phase 2
# -----------------------------------------------------------------------------

.PHONY: all
.DELETE_ON_ERROR:
.SECONDEXPANSION:
PROCESSOR = "/srv/www/fsfe.org_git/build/process_file.sh"
PROCFLAGS = --build-env "fsfe.org" --source "/srv/www/fsfe.org_git" --domain "www.fsfe.org"
INPUTDIR = /srv/www/fsfe.org_git
OUTPUTDIR = /srv/www/fsfe.org_stage
STATUSDIR = /srv/www/status.fsfe.org/fsfe.org
LANGUAGES = ar  bg  bs  ca  cs  da  de  el  en  es  et  fi  fr  hr  hu  it  mk  nb  nl  nn  pl  pt  ro  ru  sk  sl  sq  sr  sv  tr  uk  zh

# -----------------------------------------------------------------------------
# Build .html files from .xhtml sources
# -----------------------------------------------------------------------------

# All .xhtml source files
HTML_SRC_FILES := $(shell find "$(INPUTDIR)"   -name '*.??.xhtml'   -not -path '$(INPUTDIR)/.git/*' )

# All basenames of .xhtml source files (without .<lang>.xhtml ending)
# Note: $(sort ...) is used to remove duplicates
HTML_SRC_BASES := $(sort $(basename $(basename $(HTML_SRC_FILES))))

# All directories containing .xhtml source files
HTML_SRC_DIRS := $(sort $(dir $(HTML_SRC_BASES)))

# The same as above, but moved to the output directory
HTML_DST_BASES := $(patsubst $(INPUTDIR)/%,$(OUTPUTDIR)/%,$(HTML_SRC_BASES))

# List of .<lang>.html files to build
HTML_DST_FILES := $(foreach base,$(HTML_DST_BASES),$(foreach lang,$(LANGUAGES),$(base).$(lang).html))

# .xmllist file used to build a html file
XMLLIST_DEP = $(wildcard $(INPUTDIR)/$(dir $*).$(notdir $*).xmllist)

# .xsl file used to build a html file
XSL_DEP = $(firstword $(wildcard $(INPUTDIR)/$*.xsl) $(INPUTDIR)/$(dir $*).default.xsl)

all: $(HTML_DST_FILES)
$(filter %.ar.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.ar.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.ar.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.ar.xml
	echo "* Building $*.ar.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ar.xhtml" > "$@"
$(filter %.bg.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.bg.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.bg.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.bg.xml
	echo "* Building $*.bg.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.bg.xhtml" > "$@"
$(filter %.bs.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.bs.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.bs.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.bs.xml
	echo "* Building $*.bs.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.bs.xhtml" > "$@"
$(filter %.ca.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.ca.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.ca.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.ca.xml
	echo "* Building $*.ca.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ca.xhtml" > "$@"
$(filter %.cs.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.cs.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.cs.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.cs.xml
	echo "* Building $*.cs.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.cs.xhtml" > "$@"
$(filter %.da.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.da.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.da.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.da.xml
	echo "* Building $*.da.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.da.xhtml" > "$@"
$(filter %.de.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.de.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.de.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.de.xml
	echo "* Building $*.de.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.de.xhtml" > "$@"
$(filter %.el.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.el.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.el.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.el.xml
	echo "* Building $*.el.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.el.xhtml" > "$@"
$(filter %.en.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.en.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.en.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.en.xml
	echo "* Building $*.en.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.en.xhtml" > "$@"
$(filter %.es.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.es.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.es.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.es.xml
	echo "* Building $*.es.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.es.xhtml" > "$@"
$(filter %.et.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.et.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.et.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.et.xml
	echo "* Building $*.et.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.et.xhtml" > "$@"
$(filter %.fi.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.fi.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.fi.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.fi.xml
	echo "* Building $*.fi.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.fi.xhtml" > "$@"
$(filter %.fr.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.fr.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.fr.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.fr.xml
	echo "* Building $*.fr.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.fr.xhtml" > "$@"
$(filter %.hr.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.hr.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.hr.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.hr.xml
	echo "* Building $*.hr.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.hr.xhtml" > "$@"
$(filter %.hu.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.hu.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.hu.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.hu.xml
	echo "* Building $*.hu.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.hu.xhtml" > "$@"
$(filter %.it.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.it.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.it.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.it.xml
	echo "* Building $*.it.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.it.xhtml" > "$@"
$(filter %.mk.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.mk.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.mk.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.mk.xml
	echo "* Building $*.mk.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.mk.xhtml" > "$@"
$(filter %.nb.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.nb.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.nb.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.nb.xml
	echo "* Building $*.nb.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nb.xhtml" > "$@"
$(filter %.nl.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.nl.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.nl.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.nl.xml
	echo "* Building $*.nl.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nl.xhtml" > "$@"
$(filter %.nn.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.nn.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.nn.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.nn.xml
	echo "* Building $*.nn.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nn.xhtml" > "$@"
$(filter %.pl.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.pl.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.pl.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.pl.xml
	echo "* Building $*.pl.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.pl.xhtml" > "$@"
$(filter %.pt.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.pt.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.pt.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.pt.xml
	echo "* Building $*.pt.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.pt.xhtml" > "$@"
$(filter %.ro.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.ro.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.ro.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.ro.xml
	echo "* Building $*.ro.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ro.xhtml" > "$@"
$(filter %.ru.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.ru.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.ru.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.ru.xml
	echo "* Building $*.ru.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ru.xhtml" > "$@"
$(filter %.sk.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.sk.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.sk.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.sk.xml
	echo "* Building $*.sk.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sk.xhtml" > "$@"
$(filter %.sl.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.sl.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.sl.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.sl.xml
	echo "* Building $*.sl.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sl.xhtml" > "$@"
$(filter %.sq.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.sq.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.sq.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.sq.xml
	echo "* Building $*.sq.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sq.xhtml" > "$@"
$(filter %.sr.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.sr.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.sr.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.sr.xml
	echo "* Building $*.sr.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sr.xhtml" > "$@"
$(filter %.sv.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.sv.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.sv.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.sv.xml
	echo "* Building $*.sv.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sv.xhtml" > "$@"
$(filter %.tr.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.tr.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.tr.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.tr.xml
	echo "* Building $*.tr.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.tr.xhtml" > "$@"
$(filter %.uk.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.uk.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.uk.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.uk.xml
	echo "* Building $*.uk.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.uk.xhtml" > "$@"
$(filter %.zh.html,$(HTML_DST_FILES)): $(OUTPUTDIR)/%.zh.html: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $$(XSL_DEP) $(INPUTDIR)/global/data/texts/.texts.zh.xml $(INPUTDIR)/global/data/texts/texts.en.xml $(INPUTDIR)/global/data/topbanner/.topbanner.zh.xml
	echo "* Building $*.zh.html"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.zh.xhtml" > "$@"

# -----------------------------------------------------------------------------
# Create index.* symlinks
# -----------------------------------------------------------------------------

# All .xhtml source files with the same name as their parent directory
INDEX_SRC_FILES := $(wildcard $(foreach directory,$(HTML_SRC_DIRS),$(directory)$(notdir $(directory:/=)).??.xhtml))

# All basenames of .xhtml source files with the same name as their parent
# directory
INDEX_SRC_BASES := $(sort $(basename $(basename $(INDEX_SRC_FILES))))

# All directories containing .xhtml source files with the same name as their
# parent directory (that is, all directories in which index files should be
# created)
INDEX_SRC_DIRS := $(dir $(INDEX_SRC_BASES))

# The same as above, but moved to the output directory
INDEX_DST_DIRS := $(patsubst $(INPUTDIR)/%,$(OUTPUTDIR)/%,$(INDEX_SRC_DIRS))

# List of index.<lang>.html symlinks to create
INDEX_DST_LINKS := $(foreach base,$(INDEX_DST_DIRS),$(foreach lang,$(LANGUAGES),$(base)index.$(lang).html))

all: $(INDEX_DST_LINKS)
$(filter %/index.ar.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.ar.html:
	echo "* Creating symlink $*/index.ar.html"
	ln -sf "$(notdir $*).ar.html" "$@"
$(filter %/index.bg.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.bg.html:
	echo "* Creating symlink $*/index.bg.html"
	ln -sf "$(notdir $*).bg.html" "$@"
$(filter %/index.bs.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.bs.html:
	echo "* Creating symlink $*/index.bs.html"
	ln -sf "$(notdir $*).bs.html" "$@"
$(filter %/index.ca.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.ca.html:
	echo "* Creating symlink $*/index.ca.html"
	ln -sf "$(notdir $*).ca.html" "$@"
$(filter %/index.cs.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.cs.html:
	echo "* Creating symlink $*/index.cs.html"
	ln -sf "$(notdir $*).cs.html" "$@"
$(filter %/index.da.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.da.html:
	echo "* Creating symlink $*/index.da.html"
	ln -sf "$(notdir $*).da.html" "$@"
$(filter %/index.de.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.de.html:
	echo "* Creating symlink $*/index.de.html"
	ln -sf "$(notdir $*).de.html" "$@"
$(filter %/index.el.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.el.html:
	echo "* Creating symlink $*/index.el.html"
	ln -sf "$(notdir $*).el.html" "$@"
$(filter %/index.en.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.en.html:
	echo "* Creating symlink $*/index.en.html"
	ln -sf "$(notdir $*).en.html" "$@"
$(filter %/index.es.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.es.html:
	echo "* Creating symlink $*/index.es.html"
	ln -sf "$(notdir $*).es.html" "$@"
$(filter %/index.et.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.et.html:
	echo "* Creating symlink $*/index.et.html"
	ln -sf "$(notdir $*).et.html" "$@"
$(filter %/index.fi.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.fi.html:
	echo "* Creating symlink $*/index.fi.html"
	ln -sf "$(notdir $*).fi.html" "$@"
$(filter %/index.fr.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.fr.html:
	echo "* Creating symlink $*/index.fr.html"
	ln -sf "$(notdir $*).fr.html" "$@"
$(filter %/index.hr.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.hr.html:
	echo "* Creating symlink $*/index.hr.html"
	ln -sf "$(notdir $*).hr.html" "$@"
$(filter %/index.hu.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.hu.html:
	echo "* Creating symlink $*/index.hu.html"
	ln -sf "$(notdir $*).hu.html" "$@"
$(filter %/index.it.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.it.html:
	echo "* Creating symlink $*/index.it.html"
	ln -sf "$(notdir $*).it.html" "$@"
$(filter %/index.mk.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.mk.html:
	echo "* Creating symlink $*/index.mk.html"
	ln -sf "$(notdir $*).mk.html" "$@"
$(filter %/index.nb.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.nb.html:
	echo "* Creating symlink $*/index.nb.html"
	ln -sf "$(notdir $*).nb.html" "$@"
$(filter %/index.nl.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.nl.html:
	echo "* Creating symlink $*/index.nl.html"
	ln -sf "$(notdir $*).nl.html" "$@"
$(filter %/index.nn.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.nn.html:
	echo "* Creating symlink $*/index.nn.html"
	ln -sf "$(notdir $*).nn.html" "$@"
$(filter %/index.pl.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.pl.html:
	echo "* Creating symlink $*/index.pl.html"
	ln -sf "$(notdir $*).pl.html" "$@"
$(filter %/index.pt.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.pt.html:
	echo "* Creating symlink $*/index.pt.html"
	ln -sf "$(notdir $*).pt.html" "$@"
$(filter %/index.ro.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.ro.html:
	echo "* Creating symlink $*/index.ro.html"
	ln -sf "$(notdir $*).ro.html" "$@"
$(filter %/index.ru.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.ru.html:
	echo "* Creating symlink $*/index.ru.html"
	ln -sf "$(notdir $*).ru.html" "$@"
$(filter %/index.sk.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.sk.html:
	echo "* Creating symlink $*/index.sk.html"
	ln -sf "$(notdir $*).sk.html" "$@"
$(filter %/index.sl.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.sl.html:
	echo "* Creating symlink $*/index.sl.html"
	ln -sf "$(notdir $*).sl.html" "$@"
$(filter %/index.sq.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.sq.html:
	echo "* Creating symlink $*/index.sq.html"
	ln -sf "$(notdir $*).sq.html" "$@"
$(filter %/index.sr.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.sr.html:
	echo "* Creating symlink $*/index.sr.html"
	ln -sf "$(notdir $*).sr.html" "$@"
$(filter %/index.sv.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.sv.html:
	echo "* Creating symlink $*/index.sv.html"
	ln -sf "$(notdir $*).sv.html" "$@"
$(filter %/index.tr.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.tr.html:
	echo "* Creating symlink $*/index.tr.html"
	ln -sf "$(notdir $*).tr.html" "$@"
$(filter %/index.uk.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.uk.html:
	echo "* Creating symlink $*/index.uk.html"
	ln -sf "$(notdir $*).uk.html" "$@"
$(filter %/index.zh.html,$(INDEX_DST_LINKS)): $(OUTPUTDIR)/%/index.zh.html:
	echo "* Creating symlink $*/index.zh.html"
	ln -sf "$(notdir $*).zh.html" "$@"

# -----------------------------------------------------------------------------
# Create symlinks from file.<lang>.html to file.html.<lang>
# -----------------------------------------------------------------------------

# List of .html.<lang> symlinks to create
HTML_DST_LINKS := $(foreach base,$(HTML_DST_BASES) $(addsuffix index,$(INDEX_DST_DIRS)),$(foreach lang,$(LANGUAGES),$(base).html.$(lang)))

all: $(HTML_DST_LINKS)
$(OUTPUTDIR)/%.html.ar:
	echo "* Creating symlink $*.html.ar"
	ln -sf "$(notdir $*).ar.html" "$@"
$(OUTPUTDIR)/%.html.bg:
	echo "* Creating symlink $*.html.bg"
	ln -sf "$(notdir $*).bg.html" "$@"
$(OUTPUTDIR)/%.html.bs:
	echo "* Creating symlink $*.html.bs"
	ln -sf "$(notdir $*).bs.html" "$@"
$(OUTPUTDIR)/%.html.ca:
	echo "* Creating symlink $*.html.ca"
	ln -sf "$(notdir $*).ca.html" "$@"
$(OUTPUTDIR)/%.html.cs:
	echo "* Creating symlink $*.html.cs"
	ln -sf "$(notdir $*).cs.html" "$@"
$(OUTPUTDIR)/%.html.da:
	echo "* Creating symlink $*.html.da"
	ln -sf "$(notdir $*).da.html" "$@"
$(OUTPUTDIR)/%.html.de:
	echo "* Creating symlink $*.html.de"
	ln -sf "$(notdir $*).de.html" "$@"
$(OUTPUTDIR)/%.html.el:
	echo "* Creating symlink $*.html.el"
	ln -sf "$(notdir $*).el.html" "$@"
$(OUTPUTDIR)/%.html.en:
	echo "* Creating symlink $*.html.en"
	ln -sf "$(notdir $*).en.html" "$@"
$(OUTPUTDIR)/%.html.es:
	echo "* Creating symlink $*.html.es"
	ln -sf "$(notdir $*).es.html" "$@"
$(OUTPUTDIR)/%.html.et:
	echo "* Creating symlink $*.html.et"
	ln -sf "$(notdir $*).et.html" "$@"
$(OUTPUTDIR)/%.html.fi:
	echo "* Creating symlink $*.html.fi"
	ln -sf "$(notdir $*).fi.html" "$@"
$(OUTPUTDIR)/%.html.fr:
	echo "* Creating symlink $*.html.fr"
	ln -sf "$(notdir $*).fr.html" "$@"
$(OUTPUTDIR)/%.html.hr:
	echo "* Creating symlink $*.html.hr"
	ln -sf "$(notdir $*).hr.html" "$@"
$(OUTPUTDIR)/%.html.hu:
	echo "* Creating symlink $*.html.hu"
	ln -sf "$(notdir $*).hu.html" "$@"
$(OUTPUTDIR)/%.html.it:
	echo "* Creating symlink $*.html.it"
	ln -sf "$(notdir $*).it.html" "$@"
$(OUTPUTDIR)/%.html.mk:
	echo "* Creating symlink $*.html.mk"
	ln -sf "$(notdir $*).mk.html" "$@"
$(OUTPUTDIR)/%.html.nb:
	echo "* Creating symlink $*.html.nb"
	ln -sf "$(notdir $*).nb.html" "$@"
$(OUTPUTDIR)/%.html.nl:
	echo "* Creating symlink $*.html.nl"
	ln -sf "$(notdir $*).nl.html" "$@"
$(OUTPUTDIR)/%.html.nn:
	echo "* Creating symlink $*.html.nn"
	ln -sf "$(notdir $*).nn.html" "$@"
$(OUTPUTDIR)/%.html.pl:
	echo "* Creating symlink $*.html.pl"
	ln -sf "$(notdir $*).pl.html" "$@"
$(OUTPUTDIR)/%.html.pt:
	echo "* Creating symlink $*.html.pt"
	ln -sf "$(notdir $*).pt.html" "$@"
$(OUTPUTDIR)/%.html.ro:
	echo "* Creating symlink $*.html.ro"
	ln -sf "$(notdir $*).ro.html" "$@"
$(OUTPUTDIR)/%.html.ru:
	echo "* Creating symlink $*.html.ru"
	ln -sf "$(notdir $*).ru.html" "$@"
$(OUTPUTDIR)/%.html.sk:
	echo "* Creating symlink $*.html.sk"
	ln -sf "$(notdir $*).sk.html" "$@"
$(OUTPUTDIR)/%.html.sl:
	echo "* Creating symlink $*.html.sl"
	ln -sf "$(notdir $*).sl.html" "$@"
$(OUTPUTDIR)/%.html.sq:
	echo "* Creating symlink $*.html.sq"
	ln -sf "$(notdir $*).sq.html" "$@"
$(OUTPUTDIR)/%.html.sr:
	echo "* Creating symlink $*.html.sr"
	ln -sf "$(notdir $*).sr.html" "$@"
$(OUTPUTDIR)/%.html.sv:
	echo "* Creating symlink $*.html.sv"
	ln -sf "$(notdir $*).sv.html" "$@"
$(OUTPUTDIR)/%.html.tr:
	echo "* Creating symlink $*.html.tr"
	ln -sf "$(notdir $*).tr.html" "$@"
$(OUTPUTDIR)/%.html.uk:
	echo "* Creating symlink $*.html.uk"
	ln -sf "$(notdir $*).uk.html" "$@"
$(OUTPUTDIR)/%.html.zh:
	echo "* Creating symlink $*.html.zh"
	ln -sf "$(notdir $*).zh.html" "$@"

# -----------------------------------------------------------------------------
# Build .rss files from .xhtml sources
# -----------------------------------------------------------------------------

# All .rss.xsl scripts which can create .rss output
RSS_SRC_SCRIPTS := $(shell find "$(INPUTDIR)"   -name '*.rss.xsl'   -not -path '$(INPUTDIR)/.git/*' )

# All basenames of .xhtml source files from which .rss files should be built
RSS_SRC_BASES := $(sort $(basename $(basename $(RSS_SRC_SCRIPTS))))

# The same as above, but moved to the output directory
RSS_DST_BASES := $(patsubst $(INPUTDIR)/%,$(OUTPUTDIR)/%,$(RSS_SRC_BASES))

# List of .<lang>.rss files to build
RSS_DST_FILES := $(foreach base,$(RSS_DST_BASES),$(foreach lang,$(LANGUAGES),$(base).$(lang).rss))

all: $(RSS_DST_FILES)
$(OUTPUTDIR)/%.ar.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.ar.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.ar.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ar.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.bg.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.bg.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.bg.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.bg.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.bs.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.bs.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.bs.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.bs.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.ca.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.ca.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.ca.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ca.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.cs.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.cs.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.cs.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.cs.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.da.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.da.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.da.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.da.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.de.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.de.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.de.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.de.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.el.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.el.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.el.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.el.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.en.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.en.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.en.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.en.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.es.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.es.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.es.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.es.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.et.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.et.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.et.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.et.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.fi.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.fi.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.fi.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.fi.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.fr.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.fr.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.fr.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.fr.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.hr.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.hr.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.hr.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.hr.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.hu.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.hu.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.hu.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.hu.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.it.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.it.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.it.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.it.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.mk.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.mk.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.mk.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.mk.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.nb.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.nb.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.nb.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nb.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.nl.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.nl.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.nl.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nl.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.nn.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.nn.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.nn.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nn.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.pl.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.pl.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.pl.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.pl.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.pt.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.pt.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.pt.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.pt.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.ro.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.ro.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.ro.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ro.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.ru.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.ru.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.ru.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ru.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.sk.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.sk.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sk.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sk.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.sl.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.sl.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sl.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sl.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.sq.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.sq.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sq.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sq.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.sr.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.sr.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sr.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sr.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.sv.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.sv.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sv.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sv.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.tr.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.tr.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.tr.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.tr.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.uk.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.uk.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.uk.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.uk.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"
$(OUTPUTDIR)/%.zh.rss: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.rss.xsl $(INPUTDIR)/global/data/texts/.texts.zh.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.zh.rss"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.zh.xhtml" "$(INPUTDIR)/$*.rss.xsl" > "$@"

# -----------------------------------------------------------------------------
# Build .ics files from .xhtml sources
# -----------------------------------------------------------------------------

# All .ics.xsl scripts which can create .ics output
ICS_SRC_SCRIPTS := $(shell find "$(INPUTDIR)"   -name '*.ics.xsl'   -not -path '$(INPUTDIR)/.git/*' )

# All basenames of .xhtml source files from which .ics files should be built
ICS_SRC_BASES := $(sort $(basename $(basename $(ICS_SRC_SCRIPTS))))

# The same as above, but moved to the output directory
ICS_DST_BASES := $(patsubst $(INPUTDIR)/%,$(OUTPUTDIR)/%,$(ICS_SRC_BASES))

# List of .<lang>.ics files to build
ICS_DST_FILES := $(foreach base,$(ICS_DST_BASES),$(foreach lang,$(LANGUAGES),$(base).$(lang).ics))

all: $(ICS_DST_FILES)
$(OUTPUTDIR)/%.ar.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.ar.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.ar.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ar.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.bg.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.bg.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.bg.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.bg.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.bs.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.bs.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.bs.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.bs.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.ca.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.ca.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.ca.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ca.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.cs.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.cs.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.cs.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.cs.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.da.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.da.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.da.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.da.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.de.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.de.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.de.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.de.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.el.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.el.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.el.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.el.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.en.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.en.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.en.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.en.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.es.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.es.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.es.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.es.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.et.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.et.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.et.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.et.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.fi.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.fi.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.fi.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.fi.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.fr.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.fr.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.fr.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.fr.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.hr.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.hr.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.hr.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.hr.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.hu.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.hu.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.hu.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.hu.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.it.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.it.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.it.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.it.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.mk.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.mk.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.mk.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.mk.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.nb.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.nb.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.nb.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nb.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.nl.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.nl.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.nl.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nl.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.nn.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.nn.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.nn.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.nn.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.pl.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.pl.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.pl.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.pl.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.pt.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.pt.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.pt.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.pt.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.ro.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.ro.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.ro.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ro.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.ru.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.ru.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.ru.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.ru.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.sk.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.sk.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sk.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sk.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.sl.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.sl.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sl.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sl.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.sq.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.sq.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sq.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sq.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.sr.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.sr.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sr.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sr.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.sv.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.sv.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.sv.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.sv.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.tr.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.tr.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.tr.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.tr.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.uk.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.uk.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.uk.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.uk.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"
$(OUTPUTDIR)/%.zh.ics: $(INPUTDIR)/%.*.xhtml $$(XMLLIST_DEP) $(INPUTDIR)/%.ics.xsl $(INPUTDIR)/global/data/texts/.texts.zh.xml $(INPUTDIR)/global/data/texts/texts.en.xml
	echo "* Building $*.zh.ics"
	${PROCESSOR} ${PROCFLAGS} process_file "$(INPUTDIR)/$*.zh.xhtml" "$(INPUTDIR)/$*.ics.xsl" > "$@"

# -----------------------------------------------------------------------------
# Copy images, docments etc
# -----------------------------------------------------------------------------

# All files which should just be copied over
COPY_SRC_FILES := $(shell find "$(INPUTDIR)" -type f   -not -path '$(INPUTDIR)/.git/*'   -not -path '$(INPUTDIR)/build/*'   -not -path '$(INPUTDIR)/global/*'   -not -path '$(INPUTDIR)/tools/*'   -not -name '.drone.yml'   -not -name '.gitignore'   -not -name 'README*'   -not -name 'Makefile'   -not -name '*.sources'   -not -name "*.xmllist"   -not -name '*.xhtml'   -not -name '*.xml'   -not -name '*.xsl' )

# The same as above, but moved to the output directory
COPY_DST_FILES := $(sort $(patsubst $(INPUTDIR)/%,$(OUTPUTDIR)/%,$(COPY_SRC_FILES)))

all: $(COPY_DST_FILES)
$(COPY_DST_FILES): $(OUTPUTDIR)/%: $(INPUTDIR)/%
	echo "* Linking file $*"
	ln -sf "$<" "$@"

# -----------------------------------------------------------------------------
# Copy .xhtml files to "source" directory in target directory tree
# -----------------------------------------------------------------------------

SOURCE_DST_FILES := $(sort $(patsubst $(INPUTDIR)/%,$(OUTPUTDIR)/source/%,$(HTML_SRC_FILES)))

all: $(SOURCE_DST_FILES)
$(SOURCE_DST_FILES): $(OUTPUTDIR)/source/%: $(INPUTDIR)/%
	echo "* Linking source $*"
	ln -sf "$<" "$@"

# -----------------------------------------------------------------------------
# Clean up excess files in target directory
# -----------------------------------------------------------------------------

ALL_DST := $(HTML_DST_FILES) $(INDEX_DST_LINKS) $(HTML_DST_LINKS) $(RSS_DST_FILES) $(ICS_DST_FILES) $(COPY_DST_FILES) $(SOURCE_DST_FILES)

.PHONY: clean
all: clean
clean:
	# Write all destination filenames into "manifest" file, one per line
	$(file >$(STATUSDIR)/manifest)
	$(foreach filename,$(ALL_DST),$(file >>$(STATUSDIR)/manifest,$(filename)))
	sort "$(STATUSDIR)/manifest" > "$(STATUSDIR)/manifest.sorted"
	find -L "$(OUTPUTDIR)" -type f \
	  | sort \
	  | diff - "$(STATUSDIR)/manifest.sorted" \
	  | sed -rn 's;^< ;;p' \
	  | while read file; do echo "* Deleting $${file}"; rm "$${file}"; done

# -----------------------------------------------------------------------------

Phase 2

[14:30:23] Starting phase 2
[14:30:33] * Building activities/routers/routers.bg.html
[14:30:33] * Building activities/routers/routers.ar.html
[14:30:34] * Building activities/routers/routers.bs.html
[14:30:34] * Building activities/routers/routers.ca.html
[14:30:34] * Building activities/routers/routers.cs.html
[14:30:34] * Building activities/routers/routers.da.html
[14:30:35] * Building activities/routers/routers.de.html
[14:30:35] * Building activities/routers/routers.el.html
[14:30:35] * Building activities/routers/routers.en.html
[14:30:35] * Building activities/routers/routers.es.html
[14:30:36] * Building activities/routers/routers.et.html
[14:30:36] * Building activities/routers/routers.fi.html
[14:30:36] * Building activities/routers/routers.fr.html
[14:30:36] * Building activities/routers/routers.hr.html
[14:30:37] * Building activities/routers/routers.hu.html
[14:30:37] * Building activities/routers/routers.it.html
[14:30:37] * Building activities/routers/routers.mk.html
[14:30:38] * Building activities/routers/routers.nb.html
[14:30:38] * Building activities/routers/routers.nl.html
[14:30:38] * Building activities/routers/routers.nn.html
[14:30:38] * Building activities/routers/routers.pl.html
[14:30:39] * Building activities/routers/routers.pt.html
[14:30:39] * Building activities/routers/routers.ro.html
[14:30:39] * Building activities/routers/routers.ru.html
[14:30:40] * Building activities/routers/routers.sk.html
[14:30:40] * Building activities/routers/routers.sl.html
[14:30:40] * Building activities/routers/routers.sq.html
[14:30:40] * Building activities/routers/routers.sr.html
[14:30:41] * Building activities/routers/routers.sv.html
[14:30:41] * Building activities/routers/routers.tr.html
[14:30:41] * Building activities/routers/routers.uk.html
[14:30:41] * Building activities/routers/routers.zh.html
[14:30:42] * Building index.ar.html
[14:30:43] * Building index.bg.html
[14:30:45] * Building index.bs.html
[14:30:45] * Building index.ca.html
[14:30:47] * Building index.cs.html
[14:30:47] * Building index.da.html
[14:30:49] * Building index.de.html
[14:30:50] * Building index.el.html
[14:30:51] * Building index.en.html
[14:30:52] * Building index.es.html
[14:30:53] * Building index.et.html
[14:30:54] * Building index.fi.html
[14:30:55] * Building index.fr.html
[14:30:56] * Building index.hr.html
[14:30:57] * Building index.hu.html
[14:30:58] * Building index.it.html
[14:31:00] * Building index.mk.html
[14:31:00] * Building index.nb.html
[14:31:02] * Building index.nl.html
[14:31:02] * Building index.nn.html
[14:31:04] * Building index.pl.html
[14:31:05] * Building index.pt.html
[14:31:07] * Building index.ro.html
[14:31:07] * Building index.ru.html
[14:31:09] * Building index.sk.html
[14:31:09] * Building index.sl.html
[14:31:11] * Building index.sq.html
[14:31:12] * Building index.sr.html
[14:31:13] * Building index.sv.html
[14:31:14] * Building index.tr.html
[14:31:16] * Building index.uk.html
[14:31:16] * Building index.zh.html
[14:31:18] * Building news/news.ar.html
[14:31:20] * Building news/news.bg.html
[14:31:21] * Building news/news.bs.html
[14:31:22] * Building news/news.ca.html
[14:31:23] * Building news/news.cs.html
[14:31:23] * Building news/news.da.html
[14:31:24] * Building news/news.de.html
[14:31:25] * Building news/news.el.html
[14:31:26] * Building news/news.en.html
[14:31:27] * Building news/news.es.html
[14:31:27] * Building news/news.et.html
[14:31:28] * Building news/news.fi.html
[14:31:29] * Building news/news.fr.html
[14:31:30] * Building news/news.hr.html
[14:31:31] * Building news/news.hu.html
[14:31:32] * Building news/news.it.html
[14:31:32] * Building news/news.mk.html
[14:31:33] * Building news/news.nb.html
[14:31:34] * Building news/news.nl.html
[14:31:35] * Building news/news.nn.html
[14:31:35] * Building news/news.pl.html
[14:31:37] * Building news/news.pt.html
[14:31:37] * Building news/news.ro.html
[14:31:38] * Building news/news.ru.html
[14:31:39] * Building news/news.sk.html
[14:31:40] * Building news/news.sl.html
[14:31:40] * Building news/news.sq.html
[14:31:42] * Building news/news.sr.html
[14:31:42] * Building news/news.sv.html
[14:31:43] * Building news/news.tr.html
[14:31:44] * Building news/news.uk.html
[14:31:45] * Building news/news.zh.html
[14:31:45] * Building news/newsletter.ar.html
[14:31:46] * Building news/newsletter.bg.html
[14:31:48] * Building news/newsletter.bs.html
[14:31:49] * Building news/newsletter.ca.html
[14:31:51] * Building news/newsletter.cs.html
[14:31:52] * Building news/newsletter.da.html
[14:31:53] * Building news/newsletter.de.html
[14:31:54] * Building news/newsletter.el.html
[14:31:56] * Building news/newsletter.en.html
[14:31:57] * Building news/newsletter.es.html
[14:31:58] * Building news/newsletter.et.html
[14:32:00] * Building news/newsletter.fi.html
[14:32:01] * Building news/newsletter.fr.html
[14:32:03] * Building news/newsletter.hr.html
[14:32:04] * Building news/newsletter.hu.html
[14:32:06] * Building news/newsletter.it.html
[14:32:07] * Building news/newsletter.mk.html
[14:32:08] * Building news/newsletter.nb.html
[14:32:10] * Building news/newsletter.nl.html
[14:32:12] * Building news/newsletter.nn.html
[14:32:13] * Building news/newsletter.pl.html
[14:32:14] * Building news/newsletter.pt.html
[14:32:15] * Building news/newsletter.ro.html
[14:32:17] * Building news/newsletter.ru.html
[14:32:18] * Building news/newsletter.sk.html
[14:32:20] * Building news/newsletter.sl.html
[14:32:21] * Building news/newsletter.sq.html
[14:32:23] * Building news/newsletter.sr.html
[14:32:24] * Building news/newsletter.sv.html
[14:32:26] * Building news/newsletter.tr.html
[14:32:27] * Building news/newsletter.uk.html
[14:32:28] * Building news/newsletter.zh.html
[14:32:29] * Building news/nl/nl-202105.ar.html
[14:32:30] * Building news/nl/nl-202105.bg.html
[14:32:30] * Building news/nl/nl-202105.bs.html
[14:32:30] * Building news/nl/nl-202105.ca.html
[14:32:30] * Building news/nl/nl-202105.cs.html
[14:32:30] * Building news/nl/nl-202105.da.html
[14:32:30] * Building news/nl/nl-202105.de.html
[14:32:31] * Building news/nl/nl-202105.el.html
[14:32:31] * Building news/nl/nl-202105.en.html
[14:32:31] * Building news/nl/nl-202105.es.html
[14:32:31] * Building news/nl/nl-202105.et.html
[14:32:31] * Building news/nl/nl-202105.fi.html
[14:32:31] * Building news/nl/nl-202105.fr.html
[14:32:32] * Building news/nl/nl-202105.hr.html
[14:32:32] * Building news/nl/nl-202105.hu.html
[14:32:32] * Building news/nl/nl-202105.it.html
[14:32:32] * Building news/nl/nl-202105.mk.html
[14:32:32] * Building news/nl/nl-202105.nb.html
[14:32:32] * Building news/nl/nl-202105.nl.html
[14:32:32] * Building news/nl/nl-202105.nn.html
[14:32:33] * Building news/nl/nl-202105.pl.html
[14:32:33] * Building news/nl/nl-202105.pt.html
[14:32:33] * Building news/nl/nl-202105.ro.html
[14:32:33] * Building news/nl/nl-202105.ru.html
[14:32:33] * Building news/nl/nl-202105.sk.html
[14:32:33] * Building news/nl/nl-202105.sl.html
[14:32:33] * Building news/nl/nl-202105.sq.html
[14:32:33] * Building news/nl/nl-202105.sr.html
[14:32:33] * Building news/nl/nl-202105.sv.html
[14:32:33] * Building news/nl/nl-202105.tr.html
[14:32:34] * Building news/nl/nl-202105.uk.html
[14:32:34] * Building news/nl/nl-202105.zh.html
[14:32:34] * Building press/press.ar.html
[14:32:34] * Building press/press.bg.html
[14:32:35] * Building press/press.bs.html
[14:32:35] * Building press/press.ca.html
[14:32:37] * Building press/press.cs.html
[14:32:37] * Building press/press.da.html
[14:32:38] * Building press/press.de.html
[14:32:38] * Building press/press.el.html
[14:32:40] * Building press/press.en.html
[14:32:40] * Building press/press.es.html
[14:32:41] * Building press/press.et.html
[14:32:41] * Building press/press.fi.html
[14:32:42] * Building press/press.fr.html
[14:32:42] * Building press/press.hr.html
[14:32:44] * Building press/press.hu.html
[14:32:44] * Building press/press.it.html
[14:32:45] * Building press/press.mk.html
[14:32:45] * Building press/press.nb.html
[14:32:47] * Building press/press.nl.html
[14:32:47] * Building press/press.nn.html
[14:32:48] * Building press/press.pl.html
[14:32:48] * Building press/press.pt.html
[14:32:50] * Building press/press.ro.html
[14:32:50] * Building press/press.ru.html
[14:32:51] * Building press/press.sk.html
[14:32:51] * Building press/press.sl.html
[14:32:52] * Building press/press.sq.html
[14:32:52] * Building press/press.sr.html
[14:32:54] * Building press/press.sv.html
[14:32:54] * Building press/press.tr.html
[14:32:55] * Building press/press.uk.html
[14:32:55] * Building press/press.zh.html
[14:32:56] * Building tags/tagged-fsfe20.ar.html
[14:32:56] * Building tags/tagged-fsfe20.bg.html
[14:32:56] * Building tags/tagged-fsfe20.bs.html
[14:32:57] * Building tags/tagged-fsfe20.ca.html
[14:32:57] * Building tags/tagged-fsfe20.cs.html
[14:32:57] * Building tags/tagged-fsfe20.da.html
[14:32:57] * Building tags/tagged-fsfe20.de.html
[14:32:57] * Building tags/tagged-fsfe20.el.html
[14:32:57] * Building tags/tagged-fsfe20.en.html
[14:32:57] * Building tags/tagged-fsfe20.es.html
[14:32:57] * Building tags/tagged-fsfe20.et.html
[14:32:58] * Building tags/tagged-fsfe20.fi.html
[14:32:58] * Building tags/tagged-fsfe20.fr.html
[14:32:58] * Building tags/tagged-fsfe20.hr.html
[14:32:58] * Building tags/tagged-fsfe20.hu.html
[14:32:58] * Building tags/tagged-fsfe20.it.html
[14:32:58] * Building tags/tagged-fsfe20.mk.html
[14:32:59] * Building tags/tagged-fsfe20.nb.html
[14:32:59] * Building tags/tagged-fsfe20.nl.html
[14:32:59] * Building tags/tagged-fsfe20.nn.html
[14:32:59] * Building tags/tagged-fsfe20.pl.html
[14:32:59] * Building tags/tagged-fsfe20.pt.html
[14:32:59] * Building tags/tagged-fsfe20.ro.html
[14:32:59] * Building tags/tagged-fsfe20.ru.html
[14:32:59] * Building tags/tagged-fsfe20.sk.html
[14:33:00] * Building tags/tagged-fsfe20.sl.html
[14:33:00] * Building tags/tagged-fsfe20.sq.html
[14:33:00] * Building tags/tagged-fsfe20.sr.html
[14:33:00] * Building tags/tagged-fsfe20.sv.html
[14:33:00] * Building tags/tagged-fsfe20.tr.html
[14:33:00] * Building tags/tagged-fsfe20.uk.html
[14:33:01] * Building tags/tagged-fsfe20.zh.html
[14:33:01] * Building tags/tagged-newsletter.ar.html
[14:33:01] * Building tags/tagged-newsletter.bg.html
[14:33:03] * Building tags/tagged-newsletter.bs.html
[14:33:04] * Building tags/tagged-newsletter.ca.html
[14:33:05] * Building tags/tagged-newsletter.cs.html
[14:33:06] * Building tags/tagged-newsletter.da.html
[14:33:07] * Building tags/tagged-newsletter.de.html
[14:33:08] * Building tags/tagged-newsletter.el.html
[14:33:09] * Building tags/tagged-newsletter.en.html
[14:33:10] * Building tags/tagged-newsletter.es.html
[14:33:11] * Building tags/tagged-newsletter.et.html
[14:33:12] * Building tags/tagged-newsletter.fi.html
[14:33:13] * Building tags/tagged-newsletter.fr.html
[14:33:14] * Building tags/tagged-newsletter.hr.html
[14:33:15] * Building tags/tagged-newsletter.hu.html
[14:33:16] * Building tags/tagged-newsletter.it.html
[14:33:17] * Building tags/tagged-newsletter.mk.html
[14:33:18] * Building tags/tagged-newsletter.nb.html
[14:33:19] * Building tags/tagged-newsletter.nl.html
[14:33:20] * Building tags/tagged-newsletter.nn.html
[14:33:21] * Building tags/tagged-newsletter.pl.html
[14:33:22] * Building tags/tagged-newsletter.pt.html
[14:33:24] * Building tags/tagged-newsletter.ro.html
[14:33:24] * Building tags/tagged-newsletter.ru.html
[14:33:26] * Building tags/tagged-newsletter.sk.html
[14:33:26] * Building tags/tagged-newsletter.sl.html
[14:33:28] * Building tags/tagged-newsletter.sq.html
[14:33:28] * Building tags/tagged-newsletter.sr.html
[14:33:30] * Building tags/tagged-newsletter.sv.html
[14:33:31] * Building tags/tagged-newsletter.tr.html
[14:33:32] * Building tags/tagged-newsletter.uk.html
[14:33:33] * Building tags/tagged-newsletter.zh.html
[14:33:35] * Building tags/tagged-routers.ar.html
[14:33:35] * Building tags/tagged-routers.bg.html
[14:33:35] * Building tags/tagged-routers.bs.html
[14:33:36] * Building tags/tagged-routers.ca.html
[14:33:36] * Building tags/tagged-routers.cs.html
[14:33:36] * Building tags/tagged-routers.da.html
[14:33:36] * Building tags/tagged-routers.de.html
[14:33:37] * Building tags/tagged-routers.el.html
[14:33:37] * Building tags/tagged-routers.en.html
[14:33:37] * Building tags/tagged-routers.es.html
[14:33:37] * Building tags/tagged-routers.et.html
[14:33:38] * Building tags/tagged-routers.fi.html
[14:33:38] * Building tags/tagged-routers.fr.html
[14:33:38] * Building tags/tagged-routers.hr.html
[14:33:38] * Building tags/tagged-routers.hu.html
[14:33:38] * Building tags/tagged-routers.it.html
[14:33:39] * Building tags/tagged-routers.mk.html
[14:33:39] * Building tags/tagged-routers.nb.html
[14:33:39] * Building tags/tagged-routers.nl.html
[14:33:40] * Building tags/tagged-routers.nn.html
[14:33:40] * Building tags/tagged-routers.pl.html
[14:33:40] * Building tags/tagged-routers.pt.html
[14:33:40] * Building tags/tagged-routers.ro.html
[14:33:41] * Building tags/tagged-routers.ru.html
[14:33:41] * Building tags/tagged-routers.sk.html
[14:33:41] * Building tags/tagged-routers.sl.html
[14:33:41] * Building tags/tagged-routers.sq.html
[14:33:42] * Building tags/tagged-routers.sr.html
[14:33:42] * Building tags/tagged-routers.sv.html
[14:33:42] * Building tags/tagged-routers.tr.html
[14:33:42] * Building tags/tagged-routers.uk.html
[14:33:43] * Building tags/tagged-routers.zh.html
[14:33:44] * Building news/news.ar.rss
[14:33:44] * Building news/news.bg.rss
[14:33:45] * Building news/news.bs.rss
[14:33:46] * Building news/news.ca.rss
[14:33:47] * Building news/news.cs.rss
[14:33:47] * Building news/news.da.rss
[14:33:48] * Building news/news.de.rss
[14:33:49] * Building news/news.el.rss
[14:33:50] * Building news/news.en.rss
[14:33:50] * Building news/news.es.rss
[14:33:51] * Building news/news.et.rss
[14:33:52] * Building news/news.fi.rss
[14:33:53] * Building news/news.fr.rss
[14:33:53] * Building news/news.hr.rss
[14:33:54] * Building news/news.hu.rss
[14:33:55] * Building news/news.it.rss
[14:33:56] * Building news/news.mk.rss
[14:33:56] * Building news/news.nb.rss
[14:33:57] * Building news/news.nl.rss
[14:33:58] * Building news/news.nn.rss
[14:33:59] * Building news/news.pl.rss
[14:33:59] * Building news/news.pt.rss
[14:34:00] * Building news/news.ro.rss
[14:34:01] * Building news/news.ru.rss
[14:34:02] * Building news/news.sk.rss
[14:34:03] * Building news/news.sl.rss
[14:34:04] * Building news/news.sq.rss
[14:34:04] * Building news/news.sr.rss
[14:34:05] * Building news/news.sv.rss
[14:34:06] * Building news/news.tr.rss
[14:34:07] * Building news/news.uk.rss
[14:34:08] * Building news/news.zh.rss
[14:34:20] Finishing phase 2

Target update

[14:34:24] sending incremental file list
[14:34:24] index.ar.html
[14:34:24] index.bg.html
[14:34:24] index.bs.html
[14:34:24] index.ca.html
[14:34:24] index.cs.html
[14:34:24] index.da.html
[14:34:24] index.de.html
[14:34:24] index.el.html
[14:34:24] index.en.html
[14:34:24] index.es.html
[14:34:24] index.et.html
[14:34:24] index.fi.html
[14:34:24] index.fr.html
[14:34:24] index.hr.html
[14:34:24] index.hu.html
[14:34:24] index.it.html
[14:34:24] index.mk.html
[14:34:24] index.nb.html
[14:34:24] index.nl.html
[14:34:24] index.nn.html
[14:34:24] index.pl.html
[14:34:24] index.pt.html
[14:34:24] index.ro.html
[14:34:24] index.ru.html
[14:34:24] index.sk.html
[14:34:24] index.sl.html
[14:34:24] index.sq.html
[14:34:24] index.sr.html
[14:34:24] index.sv.html
[14:34:24] index.tr.html
[14:34:24] index.uk.html
[14:34:24] index.zh.html
[14:34:24] activities/routers/routers.ar.html
[14:34:24] activities/routers/routers.bg.html
[14:34:24] activities/routers/routers.bs.html
[14:34:24] activities/routers/routers.ca.html
[14:34:24] activities/routers/routers.cs.html
[14:34:24] activities/routers/routers.da.html
[14:34:24] activities/routers/routers.de.html
[14:34:24] activities/routers/routers.el.html
[14:34:24] activities/routers/routers.en.html
[14:34:24] activities/routers/routers.es.html
[14:34:24] activities/routers/routers.et.html
[14:34:24] activities/routers/routers.fi.html
[14:34:24] activities/routers/routers.fr.html
[14:34:24] activities/routers/routers.hr.html
[14:34:24] activities/routers/routers.hu.html
[14:34:24] activities/routers/routers.it.html
[14:34:24] activities/routers/routers.mk.html
[14:34:24] activities/routers/routers.nb.html
[14:34:24] activities/routers/routers.nl.html
[14:34:24] activities/routers/routers.nn.html
[14:34:24] activities/routers/routers.pl.html
[14:34:24] activities/routers/routers.pt.html
[14:34:24] activities/routers/routers.ro.html
[14:34:24] activities/routers/routers.ru.html
[14:34:24] activities/routers/routers.sk.html
[14:34:24] activities/routers/routers.sl.html
[14:34:24] activities/routers/routers.sq.html
[14:34:24] activities/routers/routers.sr.html
[14:34:24] activities/routers/routers.sv.html
[14:34:24] activities/routers/routers.tr.html
[14:34:24] activities/routers/routers.uk.html
[14:34:24] activities/routers/routers.zh.html
[14:34:24] news/news.ar.html
[14:34:24] news/news.ar.rss
[14:34:24] news/news.bg.html
[14:34:24] news/news.bg.rss
[14:34:24] news/news.bs.html
[14:34:24] news/news.bs.rss
[14:34:24] news/news.ca.html
[14:34:24] news/news.ca.rss
[14:34:24] news/news.cs.html
[14:34:24] news/news.cs.rss
[14:34:24] news/news.da.html
[14:34:24] news/news.da.rss
[14:34:24] news/news.de.html
[14:34:24] news/news.de.rss
[14:34:24] news/news.el.html
[14:34:24] news/news.el.rss
[14:34:24] news/news.en.html
[14:34:24] news/news.en.rss
[14:34:24] news/news.es.html
[14:34:24] news/news.es.rss
[14:34:24] news/news.et.html
[14:34:24] news/news.et.rss
[14:34:24] news/news.fi.html
[14:34:24] news/news.fi.rss
[14:34:24] news/news.fr.html
[14:34:24] news/news.fr.rss
[14:34:24] news/news.hr.html
[14:34:24] news/news.hr.rss
[14:34:24] news/news.hu.html
[14:34:24] news/news.hu.rss
[14:34:24] news/news.it.html
[14:34:24] news/news.it.rss
[14:34:24] news/news.mk.html
[14:34:24] news/news.mk.rss
[14:34:24] news/news.nb.html
[14:34:24] news/news.nb.rss
[14:34:24] news/news.nl.html
[14:34:24] news/news.nl.rss
[14:34:24] news/news.nn.html
[14:34:24] news/news.nn.rss
[14:34:24] news/news.pl.html
[14:34:24] news/news.pl.rss
[14:34:24] news/news.pt.html
[14:34:24] news/news.pt.rss
[14:34:24] news/news.ro.html
[14:34:24] news/news.ro.rss
[14:34:24] news/news.ru.html
[14:34:24] news/news.ru.rss
[14:34:24] news/news.sk.html
[14:34:24] news/news.sk.rss
[14:34:24] news/news.sl.html
[14:34:24] news/news.sl.rss
[14:34:24] news/news.sq.html
[14:34:25] news/news.sq.rss
[14:34:25] news/news.sr.html
[14:34:25] news/news.sr.rss
[14:34:25] news/news.sv.html
[14:34:25] news/news.sv.rss
[14:34:25] news/news.tr.html
[14:34:25] news/news.tr.rss
[14:34:25] news/news.uk.html
[14:34:25] news/news.uk.rss
[14:34:25] news/news.zh.html
[14:34:25] news/news.zh.rss
[14:34:25] news/newsletter.ar.html
[14:34:25] news/newsletter.bg.html
[14:34:25] news/newsletter.bs.html
[14:34:25] news/newsletter.ca.html
[14:34:25] news/newsletter.cs.html
[14:34:25] news/newsletter.da.html
[14:34:25] news/newsletter.de.html
[14:34:25] news/newsletter.el.html
[14:34:25] news/newsletter.en.html
[14:34:25] news/newsletter.es.html
[14:34:25] news/newsletter.et.html
[14:34:25] news/newsletter.fi.html
[14:34:25] news/newsletter.fr.html
[14:34:25] news/newsletter.hr.html
[14:34:25] news/newsletter.hu.html
[14:34:25] news/newsletter.it.html
[14:34:25] news/newsletter.mk.html
[14:34:25] news/newsletter.nb.html
[14:34:25] news/newsletter.nl.html
[14:34:25] news/newsletter.nn.html
[14:34:25] news/newsletter.pl.html
[14:34:25] news/newsletter.pt.html
[14:34:25] news/newsletter.ro.html
[14:34:25] news/newsletter.ru.html
[14:34:25] news/newsletter.sk.html
[14:34:25] news/newsletter.sl.html
[14:34:25] news/newsletter.sq.html
[14:34:25] news/newsletter.sr.html
[14:34:25] news/newsletter.sv.html
[14:34:25] news/newsletter.tr.html
[14:34:25] news/newsletter.uk.html
[14:34:25] news/newsletter.zh.html
[14:34:25] news/nl/nl-202105.ar.html
[14:34:25] news/nl/nl-202105.bg.html
[14:34:25] news/nl/nl-202105.bs.html
[14:34:25] news/nl/nl-202105.ca.html
[14:34:25] news/nl/nl-202105.cs.html
[14:34:25] news/nl/nl-202105.da.html
[14:34:25] news/nl/nl-202105.de.html
[14:34:25] news/nl/nl-202105.el.html
[14:34:25] news/nl/nl-202105.en.html
[14:34:25] news/nl/nl-202105.es.html
[14:34:25] news/nl/nl-202105.et.html
[14:34:25] news/nl/nl-202105.fi.html
[14:34:25] news/nl/nl-202105.fr.html
[14:34:25] news/nl/nl-202105.hr.html
[14:34:25] news/nl/nl-202105.hu.html
[14:34:25] news/nl/nl-202105.it.html
[14:34:25] news/nl/nl-202105.mk.html
[14:34:25] news/nl/nl-202105.nb.html
[14:34:25] news/nl/nl-202105.nl.html
[14:34:25] news/nl/nl-202105.nn.html
[14:34:25] news/nl/nl-202105.pl.html
[14:34:25] news/nl/nl-202105.pt.html
[14:34:25] news/nl/nl-202105.ro.html
[14:34:26] news/nl/nl-202105.ru.html
[14:34:26] news/nl/nl-202105.sk.html
[14:34:26] news/nl/nl-202105.sl.html
[14:34:26] news/nl/nl-202105.sq.html
[14:34:26] news/nl/nl-202105.sr.html
[14:34:26] news/nl/nl-202105.sv.html
[14:34:26] news/nl/nl-202105.tr.html
[14:34:26] news/nl/nl-202105.uk.html
[14:34:26] news/nl/nl-202105.zh.html
[14:34:26] press/press.ar.html
[14:34:26] press/press.bg.html
[14:34:26] press/press.bs.html
[14:34:26] press/press.ca.html
[14:34:26] press/press.cs.html
[14:34:26] press/press.da.html
[14:34:26] press/press.de.html
[14:34:26] press/press.el.html
[14:34:26] press/press.en.html
[14:34:26] press/press.es.html
[14:34:26] press/press.et.html
[14:34:26] press/press.fi.html
[14:34:26] press/press.fr.html
[14:34:26] press/press.hr.html
[14:34:26] press/press.hu.html
[14:34:26] press/press.it.html
[14:34:26] press/press.mk.html
[14:34:26] press/press.nb.html
[14:34:26] press/press.nl.html
[14:34:26] press/press.nn.html
[14:34:26] press/press.pl.html
[14:34:26] press/press.pt.html
[14:34:26] press/press.ro.html
[14:34:26] press/press.ru.html
[14:34:26] press/press.sk.html
[14:34:26] press/press.sl.html
[14:34:26] press/press.sq.html
[14:34:26] press/press.sr.html
[14:34:26] press/press.sv.html
[14:34:26] press/press.tr.html
[14:34:26] press/press.uk.html
[14:34:26] press/press.zh.html
[14:34:26] search/index.js
[14:34:26] source/news/nl/nl-202105.it.xhtml
[14:34:26] tags/tagged-fsfe20.ar.html
[14:34:26] tags/tagged-fsfe20.bg.html
[14:34:26] tags/tagged-fsfe20.bs.html
[14:34:26] tags/tagged-fsfe20.ca.html
[14:34:26] tags/tagged-fsfe20.cs.html
[14:34:26] tags/tagged-fsfe20.da.html
[14:34:26] tags/tagged-fsfe20.de.html
[14:34:26] tags/tagged-fsfe20.el.html
[14:34:26] tags/tagged-fsfe20.en.html
[14:34:26] tags/tagged-fsfe20.es.html
[14:34:26] tags/tagged-fsfe20.et.html
[14:34:26] tags/tagged-fsfe20.fi.html
[14:34:26] tags/tagged-fsfe20.fr.html
[14:34:26] tags/tagged-fsfe20.hr.html
[14:34:26] tags/tagged-fsfe20.hu.html
[14:34:26] tags/tagged-fsfe20.it.html
[14:34:26] tags/tagged-fsfe20.mk.html
[14:34:26] tags/tagged-fsfe20.nb.html
[14:34:26] tags/tagged-fsfe20.nl.html
[14:34:26] tags/tagged-fsfe20.nn.html
[14:34:26] tags/tagged-fsfe20.pl.html
[14:34:26] tags/tagged-fsfe20.pt.html
[14:34:26] tags/tagged-fsfe20.ro.html
[14:34:26] tags/tagged-fsfe20.ru.html
[14:34:26] tags/tagged-fsfe20.sk.html
[14:34:26] tags/tagged-fsfe20.sl.html
[14:34:26] tags/tagged-fsfe20.sq.html
[14:34:26] tags/tagged-fsfe20.sr.html
[14:34:26] tags/tagged-fsfe20.sv.html
[14:34:26] tags/tagged-fsfe20.tr.html
[14:34:26] tags/tagged-fsfe20.uk.html
[14:34:26] tags/tagged-fsfe20.zh.html
[14:34:26] tags/tagged-newsletter.ar.html
[14:34:26] tags/tagged-newsletter.bg.html
[14:34:26] tags/tagged-newsletter.bs.html
[14:34:26] tags/tagged-newsletter.ca.html
[14:34:26] tags/tagged-newsletter.cs.html
[14:34:26] tags/tagged-newsletter.da.html
[14:34:26] tags/tagged-newsletter.de.html
[14:34:26] tags/tagged-newsletter.el.html
[14:34:26] tags/tagged-newsletter.en.html
[14:34:26] tags/tagged-newsletter.es.html
[14:34:26] tags/tagged-newsletter.et.html
[14:34:26] tags/tagged-newsletter.fi.html
[14:34:26] tags/tagged-newsletter.fr.html
[14:34:26] tags/tagged-newsletter.hr.html
[14:34:26] tags/tagged-newsletter.hu.html
[14:34:26] tags/tagged-newsletter.it.html
[14:34:26] tags/tagged-newsletter.mk.html
[14:34:26] tags/tagged-newsletter.nb.html
[14:34:26] tags/tagged-newsletter.nl.html
[14:34:26] tags/tagged-newsletter.nn.html
[14:34:26] tags/tagged-newsletter.pl.html
[14:34:26] tags/tagged-newsletter.pt.html
[14:34:26] tags/tagged-newsletter.ro.html
[14:34:26] tags/tagged-newsletter.ru.html
[14:34:26] tags/tagged-newsletter.sk.html
[14:34:26] tags/tagged-newsletter.sl.html
[14:34:26] tags/tagged-newsletter.sq.html
[14:34:26] tags/tagged-newsletter.sr.html
[14:34:26] tags/tagged-newsletter.sv.html
[14:34:26] tags/tagged-newsletter.tr.html
[14:34:26] tags/tagged-newsletter.uk.html
[14:34:26] tags/tagged-newsletter.zh.html
[14:34:26] tags/tagged-routers.ar.html
[14:34:26] tags/tagged-routers.bg.html
[14:34:26] tags/tagged-routers.bs.html
[14:34:26] tags/tagged-routers.ca.html
[14:34:26] tags/tagged-routers.cs.html
[14:34:26] tags/tagged-routers.da.html
[14:34:26] tags/tagged-routers.de.html
[14:34:26] tags/tagged-routers.el.html
[14:34:26] tags/tagged-routers.en.html
[14:34:26] tags/tagged-routers.es.html
[14:34:26] tags/tagged-routers.et.html
[14:34:26] tags/tagged-routers.fi.html
[14:34:26] tags/tagged-routers.fr.html
[14:34:26] tags/tagged-routers.hr.html
[14:34:26] tags/tagged-routers.hu.html
[14:34:26] tags/tagged-routers.it.html
[14:34:26] tags/tagged-routers.mk.html
[14:34:26] tags/tagged-routers.nb.html
[14:34:26] tags/tagged-routers.nl.html
[14:34:26] tags/tagged-routers.nn.html
[14:34:26] tags/tagged-routers.pl.html
[14:34:26] tags/tagged-routers.pt.html
[14:34:26] tags/tagged-routers.ro.html
[14:34:26] tags/tagged-routers.ru.html
[14:34:26] tags/tagged-routers.sk.html
[14:34:26] tags/tagged-routers.sl.html
[14:34:26] tags/tagged-routers.sq.html
[14:34:26] tags/tagged-routers.sr.html
[14:34:26] tags/tagged-routers.sv.html
[14:34:26] tags/tagged-routers.tr.html
[14:34:26] tags/tagged-routers.uk.html
[14:34:26] tags/tagged-routers.zh.html
[14:34:26] 
[14:34:26] sent 6,203,717 bytes  received 130,215 bytes  974,451.08 bytes/sec
[14:34:26] total size is 1,127,139,776  speedup is 177.95

Errors

File Manifest

view