JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
example code for scaling spritesheets
[wfpl-cms.git] / Makefile
index dcea8ba..e6222d1 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,24 +1,25 @@
-svgs=
+svgs= images/sprites.svg
+minified_svgs= $(svgs:.svg=.min.svg)
 generated_images= $(svgs:.svg=.png)
 images=
-images += $(generated_images)
+images += $(generated_images) $(minified_svgs)
 
-objects= $(generated_images) .image-mtimes.styl style.css tags
+objects= $(generated_images) $(minified_svgs) .sha1sums.styl css.css tags
 
 all: $(objects)
 
 clean:
        rm -f $(objects)
 
-style.css: styl.styl .image-mtimes.styl
-       compile-stylus $<
+css.css: style.styl .sha1sums.styl inc/wfpl/stylus_helpers.styl
+       stylus -p $< > $@ || rm -f "$@"
 
-.image-mtimes.styl: $(images)
+.sha1sums.styl: $(images)
        ( \
-               echo -n 'mtimes = {'; \
+               echo -n 'sha1 = {'; \
                div=' '; \
                for x in $^; do \
-                       echo -n "$$div '$$x': \"$$x?m=$$(stat -c '%Y' $$x)\""; \
+                       echo -n "$$div '$$x': \"$$x?m=$$(sha1sum < $$x | head -c 10)\""; \
                        div=,; \
                done; \
                echo " }"; \
@@ -36,5 +37,8 @@ style.css: styl.styl .image-mtimes.styl
                ; exit 1 \
        )
 
+%.min.svg: %.svg
+       svgo $< $@
+
 tags: *.php inc/*.php inc/wfpl/*.php
-       exuberant-ctags *.php inc/*.php inc/wfpl/*.php
+       ctags *.php inc/*.php inc/wfpl/*.php