aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/mk-w32-dist
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/mk-w32-dist')
-rwxr-xr-xscripts/mk-w32-dist301
1 files changed, 0 insertions, 301 deletions
diff --git a/scripts/mk-w32-dist b/scripts/mk-w32-dist
deleted file mode 100755
index 3f687cafd..000000000
--- a/scripts/mk-w32-dist
+++ /dev/null
@@ -1,301 +0,0 @@
-#!/bin/sh
-#
-# Copyright (C) 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; as a special exception the author gives
-# unlimited permission to copy and/or distribute it, with or without
-# modifications, as long as this notice is preserved.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-set -e
-cd dist-w32
-
-tmp="`echo $0 | sed 's,.*gnupg-\([^/]*\)/.*,\1,'`"
-
-topdir=
-bindir=..
-
-if [ -f "../gnupg-$tmp/README" ]; then
- srcdir="../gnupg-$tmp"
- bindir="../gnupg-$tmp"
- topdir=".."
-elif [ -f ../README ]; then
- srcdir=..
-elif [ -f ../../README ]; then
- srcdir=../..
- bindir=..
-elif [ -f ../../gnupg-stable/README ]; then
- srcdir=../../gnupg-stable
-elif [ -f ../../../gnupg-stable/README ]; then
- srcdir=../../../gnupg-stable
-else
- echo "cannot figure out the source dir" >&2
- exit 1
-fi
-
-# Windows uses an internal build number. We use the last day of the
-# year concatenated with the hour. for it. If it happens that a new
-# release of the same version is to be made in the next year, the
-# build number must be given manually by adding the appropriate number
-# of days.
-if [ "$1" = "--build-number" -a -n "$2" ]; then
- build_number="$2"
- shift
- shift
-else
- build_number=$(date -u '+%j%k' | sed 's/^0*\(.*\)/\1/')
-fi
-
-
-if i586-mingw32msvc-strip --version >/dev/null 2>&1 ; then
- STRIP=i586-mingw32msvc-strip
-else
- STRIP="mingw32 strip"
-fi
-
-# If we don't have an installer we don't need to prepare for it.
-if ! makensis -version >/dev/null 2>&1 ; then
- topdir=
-fi
-
-
-# A function to return a plain ASCII (or Latin-1) encoded description
-# text for a language identifier. We need this to display the list of
-# available languages in the installer. NSIS does not support utf-8
-# so we need to standardize on one character set. Note that this
-# script itself is written in utf-8 but the resulting file will get
-# converted to Latin-1
-get_langname () {
- case "$1" in
- be) r="Belarusian"; ;;
- ca) r="Català"; ;;
- cs) r="Cesky"; ;;
- da) r="Danish"; ;;
- de) r="Deutsch"; ;;
- el) r="Greek"; ;;
- en|en@*) r="English"; ;;
- eo) r="Esperanto"; ;;
- es) r="Español"; ;;
- et) r="Eesti keel"; ;;
- fi) r="Suomi"; ;;
- fr) r="Français"; ;;
- gl) r="Galician"; ;;
- hu) r="Magyar"; ;;
- id) r="Indonesian"; ;;
- it) r="Italiano"; ;;
- ja) r="Japanese"; ;;
- pl) r="Polski"; ;;
- pt) r="Português"; ;;
- pt_BR) r="Português (do Brasil)"; ;;
- ro) r="Romana"; ;;
- ru) r="Russian"; ;;
- sk) r="Slovensky"; ;;
- sv) r="Svenska"; ;;
- tr) r="Türkçe"; ;;
- zh_CN) r="Chinese (simplified)"; ;;
- zh_TW) r="Chinese (traditional)"; ;;
-
- *) r="" ;;
- esac
- echo "$r"
-}
-
-
-# Figure out the version
-version=$(sed -n 's/^#[ ]*define[ ][ ]*VERSION[ ][ ]*\"\([0-9.a-z-]*\)\"/\1/p' $bindir/config.h)
-prod_version=$(echo "$version"|awk -F'[^0-9]' '{print $1 "." $2 "." $3 }')
-prod_version="${prod_version}.${build_number}"
-echo "building version $version ($prod_version)"
-
-rm * >/dev/null 2>/dev/null || true
-
-cp ${bindir}/g10/gpg.exe gpg.exe
-$STRIP gpg.exe
-cp ${bindir}/g10/gpgv.exe gpgv.exe
-$STRIP gpgv.exe
-for name in hkp curl ldap finger; do
- cp ${bindir}/keyserver/gpgkeys_$name.exe gpgkeys_$name.exe
- $STRIP gpgkeys_$name.exe
-done
-cp ${bindir}/tools/gpgsplit.exe gpgsplit.exe
-$STRIP gpgsplit.exe
-
-for i in FAQ; do
- cp ${bindir}/doc/$i $i.txt
- todos $i.txt
-done
-man -Tlatin1 -l ${srcdir}/doc/gpg.1 | sed `printf "s/\b.//g"` >gpg.man
-todos gpg.man
-man -Tlatin1 -l ${srcdir}/doc/gpgv.1 | sed `printf "s/\b.//g"` >gpgv.man
-todos gpgv.man
-man -Tlatin1 -l ${srcdir}/doc/gnupg.7 | sed `printf "s/\b.//g"` >gnupg.man
-todos gnupg.man
-for i in README COPYING NEWS; do
- cp ${srcdir}/$i $i.txt
- todos $i.txt
-done
-
-cp ${srcdir}/doc/README.W32 README-W32.txt
-todos README-W32.txt
-
-patches_defs=
-for i in `find "$topdir/patches" -type f -name '*.diff'`; do
- cp $i .
- patches_defs="-DWITH_PATCHES"
-done
-
-
-# We must distribute the MO files in UTF-8, the conversion is done by
-# gpg at runtime. To include English at the right position in the list we
-# need a special case.
-langlist=""
-langdesclist=""
-for i in `(ls ${srcdir}/po/*.po; echo ${srcdir}/po/en.po) | sort`; do
- lang=$(basename $i .po)
- if [ $lang != "en" ]; then
- grep -s $lang ${srcdir}/po/LINGUAS >/dev/null || continue
- [ -f$lang.mo -a $lang.mo -nt $i ] && continue
-
- fromset=`sed -n '/^"Content-Type:/ s/.*charset=\([a-zA-Z0-9_-]*\).*/\1/p' $i`
- case "$fromset" in
- utf8|utf-8|UTF8|UTF-8)
- echo "$lang: keeping $fromset" >&2
- msgfmt --output-file=$lang.mo $i
- ;;
- *)
- echo "$lang: converting from $fromset to utf-8" >&2
- iconv --silent --from-code=$fromset --to-code=utf-8 < $i | \
- sed "/^\"Content-Type:/ s/charset=[a-zA-Z0-9_-]*/charset=utf-8/"|\
- msgfmt --output-file=$lang.mo -
- ;;
- esac
- fi
- langlist="$langlist $lang"
- langname="`get_langname $lang`"
- [ -n "$langdesclist" ] && langdesclist="${langdesclist}|"
- langdesclist="${langdesclist}${lang} - ${langname}"
-done
-
-
-# Create the option file for use with the NSIS installer.
-cat <<EOF | iconv --silent --from-code=utf-8 --to-code=latin1 >opt.ini
-[Settings]
-NumFields=1
-
-[Field 1]
-Type=DropList
-Left=0
-Right=130
-Top=20
-Bottom=100
-ListItems="$langdesclist"
-EOF
-
-
-# If we have a topdir, assume the full build environment and
-# prepare the installer
-if [ -n "$topdir" ]; then
- winpt_defs=
- src_defs=
- buildinfo="`date -u '+%Y-%m-%d %H:%M UTC'`"
-
- # iconv.dll is a hard requirement
- if [ ! -f "$topdir/iconv/iconv.dll" ]; then
- echo "iconv.dll not available" >&2
- exit 1
- fi
- ln "$topdir/iconv/iconv.dll" iconv.dll
- for i in COPYING.LIB README.iconv; do
- cp ${topdir}/iconv/$i $i.txt
- todos $i.txt
- done
-
- # WinPT is optional
- if [ -f "$topdir/winpt/WinPT.exe" ]; then
- ln "$topdir/winpt/WinPT.exe" WinPT.exe
- ln "$topdir/winpt/PTD.dll" PTD.dll
- cp "$topdir/winpt/README-0.9.txt" README.winpt.txt
- cp "$topdir/winpt/NEWS-0.9.txt" NEWS.winpt.txt
- cp "$topdir/winpt/keyserver.conf" keyserver.conf
- winpt_defs="-DWITH_WINPT"
- fi
-
- # See whether we should include the source and figure out the
- # version numbers of the source files.
- if [ -d "$topdir/tarballs" ]; then
- have_gnupg_src=no
- have_libiconv_src=no
- have_winpt_src=no
- for i in `find "$topdir/tarballs" -type f -name '*.tar.gz'`; do
- fname=$(basename "$i" .gz)
- zcat "$i" > "$fname"
- case "$fname" in
- gnupg-*)
- tmp=$(echo "$fname" | \
- sed -n 's/^[^-]*-\([0-9.a-z-]*\)\.tar$/\1/p')
- echo "gnupg source version is $tmp" >&2
- if [ "$version" != "$tmp" ]; then
- echo "gnupg source version does not match" >&2
- exit 1
- fi
- have_gnupg_src=yes
- ;;
- libiconv-*)
- tmp=$(echo "$fname" | \
- sed -n 's/^[^-]*-\([0-9.a-z-]*\)\.tar$/\1/p')
- echo "libiconv source version is $tmp" >&2
- src_defs="$src_defs -DLIBICONV_VERSION=$tmp"
- have_libiconv_src=yes
- ;;
- winpt-*)
- tmp=$(echo "$fname" | \
- sed -n 's/^[^-]*-\([0-9.a-z-]*\)\.tar$/\1/p')
- echo "winpt source version is $tmp" >&2
- src_defs="$src_defs -DWINPT_VERSION=$tmp"
- have_winpt_src=yes
- ;;
-
- *)
- echo "WARNING: unknown source file $fname ignored" >&2
- ;;
- esac
- done
- if [ -n "$src_defs" ]; then
- if [ $have_gnupg_src = "no" ]; then
- echo "gnupg source missing" >&2
- exit 1
- fi
- if [ $have_libiconv_src = "no" ]; then
- echo "libiconv source missing" >&2
- exit 1
- fi
- if [ -n "$winpt_defs" ]; then
- if [ $have_winpt_src = "no" ]; then
- echo "winpt source missing" >&2
- exit 1
- fi
- fi
-
- src_defs="$src_defs -DWITH_SOURCE"
- fi
-
- fi
-
- # Now run the installer
- echo "invoking installer as:"
- echo makensis -v0 -nocd -DVERSION="${version}" \
- -DPROD_VERSION="${prod_version}" \
- -DGNUPG_SRCDIR="${srcdir}" ${winpt_defs} ${src_defs} \
- ${patches_defs} ${srcdir}/scripts/w32installer.nsi
- BUILDINFO=$buildinfo makensis -v0 -nocd -DVERSION="${version}" \
- -DPROD_VERSION="${prod_version}" \
- -DGNUPG_SRCDIR="${srcdir}" ${winpt_defs} ${src_defs} \
- ${patches_defs} ${srcdir}/scripts/w32installer.nsi
- echo "Installer created" >&2
-else
- zip -9 "gnupg-w32cli-${version}.zip" *
- echo "ZIP archive created" >&2
-fi