-# Strip the XML prologue from an Inkscape document to produce
-# something that can be included directly into an HTML5 document.
-day.svg: src/day.svg
- @XMLLINT@ -xpath "/*" $< > $@
+# List of element IDs that we use in the HTML document.
+PRECIOUS_IDS = \
+ bus \
+ city \
+ citycopy \
+ codebg \
+ codetext \
+ clouds \
+ cloudscopy \
+ train \
+ tram \
+ trees \
+ treescopy \
+ serviceletter \
+ servicename \
+ sky \
+ ticket \
+ ticketdate \
+ tickettime
+
+# Optimize our SVG, and remove its XML prologue so that it can be
+# included directly into the HTML document.
+tableau.min.svg: tableau.svg
+ @SCOUR@ --protect-ids-list=$$(echo $(PRECIOUS_IDS) | tr ' ' ',') \
+ --enable-id-stripping \
+ --enable-comment-stripping \
+ --remove-descriptive-elements \
+ --no-renderer-workaround \
+ --strip-xml-prolog \
+ --no-line-breaks \
+ --error-on-flowtext \
+ $< > $@
+
+# Use FontForge to convert the sfd source files to woff2.
+.sfd.woff2:
+ @FONTFORGE@ -script sfd2woff $<