Home GnuPG

Add windows VERSIONINFO to all signed binaries

Description

Add windows VERSIONINFO to all signed binaries

* configure.ac (DISTRIBUTION_TEXT): Replace by PRODUCT_NAME.
(COMPANY_NAME, BUILD_FILEVERSION_TR): New.
(AC_CONFIG_FILES): Configure versioninfo, manifest and gccwrap.sh
* src/Makefile.am (EXTRA_DIST): Add new files.
* src/gpg4win.mk.in (stamp-directories): Install wrapper scripts
to native tools prefix.
* src/gccwrap.sh.in: New. Wrapper around gcc to inject the versioninfo.
* src/versioninfo.rc.in.in: New. template for versioninfo.
* src/gpg4win.w32-manifest.in: New. generic manifest.

Since we cannot patch each included library to include
the versioninfo we want it to have in their build system,
we now inject the versioninfo in the linker command by wrapping
gcc and g++. The wrapper script takes some information from
the configuration and build environment and writes out a
versioninfo.rc for each library and executable that is
not already blessed by its own versioninfo file.
This is then compiled with windres and added before calling
the real gcc.