Enhance icon.pl to be a fully general Windows icon builder: it now
[sgt/puzzles] / icons / Makefile
index 233f767..ce79dc9 100644 (file)
@@ -19,6 +19,7 @@ P16D24 = $(patsubst %,%-16d24.png,$(PUZZLES))
 P16D8 = $(patsubst %,%-16d8.png,$(PUZZLES))
 P16D4 = $(patsubst %,%-16d4.png,$(PUZZLES))
 ICONS = $(patsubst %,%.ico,$(PUZZLES))
+CICONS = $(patsubst %,%-icon.c,$(PUZZLES))
 RC = $(patsubst %,%.rc,$(PUZZLES))
 
 BIN = ../
@@ -28,6 +29,8 @@ base: $(BASE)
 web: $(WEB)
 pngicons: $(P48D24) $(P32D24) $(P16D24)
 winicons: $(ICONS) $(RC)
+gtkicons: $(CICONS)
+all: base web pngicons winicons gtkicons
 
 # Build the base puzzle screenshots from which all the other images
 # are derived. Some of them involve showing a move animation
@@ -114,11 +117,17 @@ $(P16D4): %-16d4.png: %-ibase.png
 $(ICONS): %.ico: %-48d24.png %-48d8.png %-48d4.png \
                  %-32d24.png %-32d8.png %-32d4.png \
                  %-16d24.png %-16d8.png %-16d4.png
-       $(PIC)icon.pl $? > $@
+       $(PIC)icon.pl -24 $*-48d24.png $*-32d24.png $*-16d24.png \
+                     -8  $*-48d8.png  $*-32d8.png  $*-16d8.png  \
+                     -4  $*-48d4.png  $*-32d4.png  $*-16d4.png  > $@
 
 # Build the .RC files which bind the icons into the applications.
 $(RC): %.rc:
        echo '200 ICON "$*.ico"' > $@
 
+# Build the GTK icon source files.
+$(CICONS): %-icon.c: %-16d24.png %-32d24.png %-48d24.png
+       $(PIC)cicon.pl $^ > $@  
+
 clean:
-       rm -f *.png *.ico *.rc
+       rm -f *.png *.ico *.rc *-icon.c