X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/edb6ace98249d5fadedbe2b7228151de9cdf4cef..HEAD:/Buildscr diff --git a/Buildscr b/Buildscr index 568196a8..e9dc295f 100644 --- a/Buildscr +++ b/Buildscr @@ -7,19 +7,22 @@ module putty set Makever -DSVN_REV=$(revision) ifneq "$(!numeric $(revision))" "yes" set Makever $(Makever) -DMODIFIED ifneq "$(RELEASE)" "" set Makever $(Makever) -DRELEASE=$(RELEASE) +ifneq "$(PRERELEASE)" "" set Makever $(Makever) -DPRERELEASE=$(PRERELEASE) ifneq "$(date)" "" set Makever $(Makever) -DSNAPSHOT=$(date) set Makeargs VER="$(Makever)" -ifneq "$(XFLAGS)" "" set Makeargs $(makeargs) XFLAGS="$(XFLAGS)" -ifneq "$(MAKEARGS)" "" set Makeargs $(makeargs) $(MAKEARGS) +ifneq "$(XFLAGS)" "" set Makeargs $(Makeargs) XFLAGS="$(XFLAGS)" +ifneq "$(MAKEARGS)" "" set Makeargs $(Makeargs) $(MAKEARGS) # Set up the version string for the docs build. set Docmakeargs VERSION="PuTTY revision $(revision)" ifneq "$(RELEASE)" "" set Docmakeargs VERSION="PuTTY release $(RELEASE)" -ifneq "$(date)" "" set Docmakeaargs VERSION="PuTTY development snapshot $(date)" +ifneq "$(PRERELEASE)" "" set Docmakeargs VERSION="PuTTY pre-release $(PRERELEASE):r$(revision)" +ifneq "$(date)" "" set Docmakeargs VERSION="PuTTY development snapshot $(date)" # Set up the version string for the Unix source archive. set Unxver r$(revision) ifneq "$(RELEASE)" "" set Unxver $(RELEASE) +ifneq "$(PRERELEASE)" "" set Unxver $(PRERELEASE)pre $(revision) ifneq "$(date)" "" set Unxver $(date) # Set up the various version strings for the installer. @@ -33,16 +36,15 @@ ifneq "$(RELEASE)" "" set Iname PuTTY version $(RELEASE) ifneq "$(RELEASE)" "" set Ivertext Release $(RELEASE) ifneq "$(RELEASE)" "" set Irev 0 ifneq "$(RELEASE)" "" set Ifilename putty-$(RELEASE)-installer.exe +ifneq "$(PRERELEASE)" "" set Iversion $(PRERELEASE):r$(revision) +ifneq "$(PRERELEASE)" "" set Iname PuTTY pre-release $(PRERELEASE):r$(revision) +ifneq "$(PRERELEASE)" "" set Ivertext Pre-release $(PRERELEASE):r$(revision) +ifneq "$(PRERELEASE)" "" set Ifilename putty-$(PRERELEASE)-pre$(revision)-installer.exe ifneq "$(date)" "" set Iversion $(date):r$(revision) ifneq "$(date)" "" set Iname PuTTY development snapshot $(date):r$(revision) ifneq "$(date)" "" set Ivertext Development snapshot $(date):r$(revision) ifneq "$(date)" "" set Ifilename putty-$(date)-installer.exe -# Set up the version string for the installer. -set Iversion r$(revision) -ifneq "$(RELEASE)" "" set Iversion $(RELEASE) -ifneq "$(date)" "" set Iversion $(date):r$(revision) - in putty do ./mksrcarc.sh in putty do ./mkunxarc.sh $(Unxver) in putty do perl mkfiles.pl @@ -56,6 +58,9 @@ in putty/windows do perl -i~ -pe 'BEGIN{$$a=shift@ARGV;}s/^(VersionInfoTextVersi in putty/windows do perl -i~ -pe 'BEGIN{$$a=shift@ARGV;}s/^(AppVersion=).*$$/$$1$$a/' '$(Iversion)' putty.iss in putty/windows do perl -i~ -pe 'BEGIN{$$a=shift@ARGV;$$a=~s/M//;}s/^(VersionInfoVersion=\d+\.\d+\.)\d+(\.\d+)\r?$$/$$1$$a$$2/' '$(Irev)' putty.iss +# Windowsify LICENCE, since it's going in the Windows installer. +in putty do perl -i~ -pe 'y/\015//d;s/$$/\015/' LICENCE + delegate windows # FIXME: Cygwin alternative? in putty/windows do cmd /c vcvars32 \& nmake -f Makefile.vc $(Makeargs) @@ -95,9 +100,14 @@ deliver putty/windows/*.map maps-x86/$@ # whatever key they want. deliver putty/sign.sh $@ -# Building the md5sums file is most easily done in the destination -# directory. -in-dest putty do md5sum `\find * -type f -print` > md5sums +# Create files of cryptographic checksums, which will be signed along +# with the files they verify. We've provided MD5 checksums for a +# while, but now MD5 is looking iffy, we're expanding our selection. +# +# Creating these files is most easily done in the destination +# directory, where all the files we're delivering are already in their +# final relative layout. +in-dest putty do a=`\find * -type f -print`; md5sum $$a > md5sums && sha1sum $$a > sha1sums && sha256sum $$a > sha256sums && sha512sum $$a > sha512sums # And construct .htaccess files. One in the top-level directory, # setting the MIME types for Windows help files and providing an