Initial set of changes to build MSIs out of source.
* build.sh: Support for building MSI packages * docker/gpg4win-bookworm/Dockerfile: Install uuid-runtime. * src/Makefile.am (msidir): New. (RUNCMD): New. ($(stampdir)/stamp-msi-base): Rewrite to use RUNCMD. ($(stampdir)/stamp-rtlib-files): Create dummy DLLs. * src/gpg4win.mk.in: Various name adjustments. (empty,space): New helper macros. (SETVARS_WINE,SETVARS_WINE_TWO_DOLLAR): Remove. ($(MSI_FNAME_PREFIX)-$(VERSION).wxs): Adjust for changes. ($(idir)/$(MSI_FNAME_PREFIX)-$(VERSION).wixlib): Rewrite to use RUNCMD. (installers/$(MSI_FNAME_PREFIX)-$(VSD_VERSION_FILE)-$(1).msi): Ditto. ($(idir)/$(1).wixlib): Ditto. ($(msidir)/$(1)/$(1).wxs): Pass VSDDIR to the script. ($(msidir)/$(1)/VERSION.sig): Rewrite to run gpg via RUNCMD. * src/make-msi.pl (scan_dir): Scan source and build dir. (dump_all): Adjust for this. (dump_help): Ditto. (dump_single_custom): Ditto. (dump_customs): Get option -DVSDDIR.
This has been tested after having build the NSIS using
./build.sh --builddir=/home/builder/b/vsd-4-beta --shell --msi cd build/src make TOPSRCDIR=/src PLAYGROUND=/build msi
Full integration test has not yet been done but an MSI packages was
created, it installed successfully and worked mostly.