X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=Makefile.am;h=3e7137122ee10895ea5f435799ebba439adc9f98;hb=9eb427ba7d1ee66d2dcb3f74dc5616328361c4ec;hp=fdb1e43d2b85aa5c5b2334be4c274f699beadb1c;hpb=7099169c0bf41b12a068b9cda675fd61cfd86f29;p=charm-bypass.git diff --git a/Makefile.am b/Makefile.am index fdb1e43..3e71371 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,20 +1,70 @@ EXTRA_DIST = doc src -# 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 \ + serviceid \ + servicename \ + sky \ + ticket \ + ticketdate \ + tickettime + +# Optimize our SVG once using XSL, to catch a few things +# that "scour" misses. +tableau.min.svg: tableau.svg svgclean.xsl + @XSLTPROC@ svgclean.xsl $< > $@ + +# Optimize our SVG again, and remove its XML prologue so that it can +# be included directly into the HTML document. +tableau.min.min.svg: tableau.min.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.ff $< # Base64-encode a woff2 (web open font format 2.0) file. We use this # to embed fonts directly into the CSS that requires them. -tickettext.base64: src/tickettext.woff2 +.woff2.base64: @BASE64@ -w0 $< > $@ # Build index.html by substituting the contents of a few (single -# line!) files into @PLACEHOLDERS@ within src/index.html.in. If you -# put tildes in src/day.svg this will probably break, so please don't -# do that. -index.html: src/index.html.in day.svg tickettext.base64 - sed -e "s~@TICKETFONT@~$$(cat tickettext.base64)~" \ - -e "s~@SVGDATA@~$$(cat day.svg)~" \ +# line!) files into @PLACEHOLDERS@ within index.html.in. If you put +# tildes in tableau.svg this will probably break, so please don't do +# that. +index.html: index.html.in tableau.min.min.svg CharmBypass-Regular.base64 CharmBypass-Bold.base64 + sed -e "s~@CBPREGULAR@~$$(cat CharmBypass-Regular.base64)~" \ + -e "s~@CBPBOLD@~$$(cat CharmBypass-Bold.base64)~" \ + -e "s~@SVGDATA@~$$(cat tableau.min.min.svg)~" \ $< > $@ + +# If you really want to, we support installing index.html +# to (say) /usr/share/charm-bypass/index.html. +dist_pkgdata_DATA = index.html + +# Automake doesn't understand our wacky build process so we have to +# tell it which files are produced by running "make" +CLEANFILES = $(dist_pkgdata_DATA) \ + CharmBypass-Regular.base64 \ + CharmBypass-Bold.base64 \ + tableau.min.svg \ + tableau.min.min.svg