- make -C src clean all CROSS_COMPILE=i686-w64-mingw32-
   - make doc zip
 after_success:
-  - make -C doc gh-pages
+  - make -f Makefile.gh-pages
 env:
   global:
     - secure: "h+hoQdEHGPLNwaqGKmSaM8NBRDLc2X+W05VsnNG2Feq/wPv/AiBjONNlzN7jRf6D6f3aoPXaQ2Lc3bYWdxGvFRCmwiofdxkJI9n5L8HPHLZ2lf37MQsXmGJzoTFOvjPLj73H6HlbI9Ux0El3zO6hvalxiXj6TfoZ41dbhNyvpYk="
 
--- /dev/null
+.PHONY: all
+
+.SUFFIXES:
+
+GH_PAGES = ../gh-pages
+
+all:
+       date +%D | zip -z cc65
+ifdef GH_TOKEN
+       git clone --branch=gh-pages https://$(GH_TOKEN)@github.com/oliverschmidt/cc65.git $(GH_PAGES)
+       cd $(GH_PAGES) && git config user.name "Oliver Schmidt"
+       cd $(GH_PAGES) && git config user.email "ol.sc@web.de"
+       cd $(GH_PAGES) && git config push.default simple
+       cd $(GH_PAGES) && $(RM) -r doc download
+       cd $(GH_PAGES) && mkdir doc download
+       cp html/*.* $(GH_PAGES)/doc
+       cp cc65.zip $(GH_PAGES)/download/cc65-snapshot.zip
+       cd $(GH_PAGES) && git add -A doc download
+       cd $(GH_PAGES) && git commit -m "Updated from commit $(TRAVIS_COMMIT)."
+       cd $(GH_PAGES) && git push
+endif
 
 
 TOC_LEVEL = 2
 
-GH_PAGES = ../../gh-pages
-
 clean:
        $(RM) -r ../html ../info
 
 zip:
-       cd .. && zip cc65 html/*.*
+       @cd .. && zip cc65 html/*.*
 
 doc: html info
 
 ../info/%.info: %.sgml | ../info
        @cd ../info && linuxdoc -B info ../doc/$<
 
-gh-pages: html
-ifdef GH_TOKEN
-       git clone --branch=gh-pages https://$(GH_TOKEN)@github.com/oliverschmidt/cc65.git $(GH_PAGES)
-       git --work-tree=$(GH_PAGES) --git-dir=$(GH_PAGES)/.git config user.name "Oliver Schmidt"
-       git --work-tree=$(GH_PAGES) --git-dir=$(GH_PAGES)/.git config user.email "ol.sc@web.de"
-       git --work-tree=$(GH_PAGES) --git-dir=$(GH_PAGES)/.git config push.default simple
-       $(RM) -r $(GH_PAGES)/doc
-       mkdir $(GH_PAGES)/doc
-       cp ../html/* $(GH_PAGES)/doc
-       git --work-tree=$(GH_PAGES) --git-dir=$(GH_PAGES)/.git add -A doc
-       -git --work-tree=$(GH_PAGES) --git-dir=$(GH_PAGES)/.git commit -m "Updated doc from commit $(TRAVIS_COMMIT)."
-       git --work-tree=$(GH_PAGES) --git-dir=$(GH_PAGES)/.git push
-endif
-
 endif # CMD_EXE
 
 
 define ZIP_recipe
 
-cd .. && zip cc65 $(dir)/*.*
+@cd .. && zip cc65 $(dir)/*.*
 
 endef # ZIP_recipe
 
 
 endif # CMD_EXE
 
 zip:
-       cd .. && zip cc65 bin/*
+       @cd .. && zip cc65 bin/*
 
 define OBJS_template