= Building a GnuPG installer for Windows =

GnuPG 2.1 comes with scripts to ease the building of a Windows
installer including a few graphical components.

However several development tools and libraries need to be installed
to succeed.  The script only tests and downloads the directly GnuPG
related libraries but not external supporting libraries, like
libiconv and the Gtk+ libraries.

There are the main steps:

{{{
  tar xjvf gnupg-2.1.0.tar.bz2
  cd gnupg-2.1.0
  make -f build-aux/speedo.mk w32-installer
}}}

On my X220 i5-2410M laptop the build process takes about 18 minutes.

However, the supporting libraries are required.  The easiest way is to
put them into a sibling directory of the gnupg-2.1.0 directory with
the name tarballs.  Here is the list of tarballs used to build the
2.1.0_20141105 installer:

{{{
atk-1.32.0.tar.bz2
cairo-1.12.16.tar.xz
gdk-pixbuf-2.26.5.tar.xz
gettext-0.18.2.1.tar.gz
glib-2.34.3.tar.xz
gtk+-2.24.17.tar.xz
libffi-3.0.13.tar.gz
libiconv-1.14.tar.gz
libpng-1.4.12.tar.bz2
pango-1.29.4.tar.bz2
pixman-0.32.4.tar.gz
pkg-config-0.23.tar.gz
}}}

If you download these tarballs, somehow make sure that you got the
genuine tarballs (integrity check).  There is no standard or de-facto
standard for this, thus the speedo script has no provisions to
download them on the fly.

To recap: This is the directory structure you should setup including
some example files yuu would see there:

{{{
  foo/
     /gnupg-2.1.0/
                  build-aux/speed.mk
                  PLAY/inst/gnugp-2.1.0_20141105.exe
     /tarballs/
               atk-1.32.0.tar.bz2
               cairo-1.12.16.tar.xz
}}}


Another option is to use the large tarball with all sources.  That
tarball has been created from the actually build directory by
including all unpacked source directories and certain stamp files.
All you need to do is:

{{{
  tar xJf gnupg-2.1.0_DATE.tar.xz
  cd gnupg-2.1.0_DATE
  make -f build-aux/speedo.mk this-w32-installer
}}}

However this has not been tested with the current version!