aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2005-01-17 10:19:57 +0000
committerWerner Koch <[email protected]>2005-01-17 10:19:57 +0000
commitcc19a07082a8c1f623b224bae4c1238b8dc32500 (patch)
treef8ee489e5cbf988e47fd7cd7448cbe46b5d8bb3a
parentMake --without-included-zlib work as (diff)
downloadgnupg-cc19a07082a8c1f623b224bae4c1238b8dc32500.tar.gz
gnupg-cc19a07082a8c1f623b224bae4c1238b8dc32500.zip
Same for
--without-included-regex.
Diffstat (limited to '')
-rw-r--r--ChangeLog3
-rw-r--r--configure.ac2
-rwxr-xr-xscripts/mk-w32-dist12
-rw-r--r--scripts/w32installer.nsi53
-rw-r--r--util/ChangeLog5
-rw-r--r--util/strgutil.c38
6 files changed, 100 insertions, 13 deletions
diff --git a/ChangeLog b/ChangeLog
index c18c95258..3085e2342 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,8 @@
2005-01-17 Werner Koch <[email protected]>
* configure.ac: Make --without-included-zlib work as
- expected. Reported by Norihiko Murase.
+ expected. Reported by Norihiko Murase. Same for
+ --without-included-regex.
2005-01-03 David Shaw <[email protected]>
diff --git a/configure.ac b/configure.ac
index 38d0ff139..4b7056c91 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1080,7 +1080,7 @@ if test "$use_regex" = yes ; then
AC_MSG_CHECKING([whether the included regex lib is requested])
AC_ARG_WITH(included-regex,
[ --with-included-regex use the included GNU regex library],
- [gnupg_cv_included_regex=yes],[gnupg_cv_included_regex=no])
+ [gnupg_cv_included_regex="$withval"],[gnupg_cv_included_regex=no])
AC_MSG_RESULT($gnupg_cv_included_regex)
if test $gnupg_cv_included_regex = no ; then
diff --git a/scripts/mk-w32-dist b/scripts/mk-w32-dist
index a73bfda1e..5b3881cab 100755
--- a/scripts/mk-w32-dist
+++ b/scripts/mk-w32-dist
@@ -39,7 +39,8 @@ fi
version=$(sed -n 's/^#[ ]*define[ ][ ]*VERSION[ ][ ]*\"\([0-9.a-z-]*\)\"/\1/p' $bindir/config.h)
-echo "building version $version"
+prod_version=$(echo "$version"|awk -F'[^0-9]' '{print $1 "." $2 "." $3 ".1"}')
+echo "building version $version ($prod_version)"
rm * >/dev/null 2>/dev/null || true
@@ -93,7 +94,12 @@ for i in ${srcdir}/po/*.po; do
;;
esac
done
-zip -9 "gnupg-w32cli-${version}.zip" *
+
if makensis -version >/dev/null 2>&1 ; then
- makensis -v2 -nocd -DVERSION="${version}" ${srcdir}/scripts/w32installer.nsi
+ makensis -v3 -nocd -DVERSION="${version}" \
+ -DPROD_VERSION="${prod_version}" ${srcdir}/scripts/w32installer.nsi
+ echo "Installer created" >&2
+else
+ zip -9 "gnupg-w32cli-${version}.zip" *
+ echo "ZIP archive created" >&2
fi
diff --git a/scripts/w32installer.nsi b/scripts/w32installer.nsi
index 8a3ebe167..036df8c30 100644
--- a/scripts/w32installer.nsi
+++ b/scripts/w32installer.nsi
@@ -41,6 +41,23 @@ SetCompressor lzma
ReserveFile "COPYING.txt"
+VIProductVersion "${PROD_VERSION}"
+VIAddVersionKey "ProductName" "GNU Privacy Guard (${VERSION})"
+VIAddVersionKey "Comments" \
+ "GnuPG is Free Software; you can redistribute it and/or modify \
+ it under the terms of the GNU General Public License. You should \
+ have received a copy of the GNU General Public License along with \
+ this software; if not, write to the Free Software Foundation, Inc., \
+ 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA"
+VIAddVersionKey "CompanyName" "Free Software Foundation"
+VIAddVersionKey "LegalTrademarks" ""
+VIAddVersionKey "LegalCopyright" \
+ "Copyright (C) 2005 Free Software Foundation, Inc."
+VIAddVersionKey "FileDescription" \
+ "GnuPG: Encryption and digital signature tool"
+VIAddVersionKey "FileVersion" "${PROD_VERSION}"
+
+
; ------------------
; Interface Settings
; ------------------
@@ -166,6 +183,42 @@ SectionEnd ; Section Source
!endif
+;----------------------
+Section "-Finish"
+
+ ClearErrors
+ GetDllVersion "iconv.dll" $R0 $R1
+ IfErrors 0 +3
+ MessageBox MB_OK \
+ "iconv.dll is not installed.$\r$\n \
+ It is highy suggested to install \
+ this DLL to help with character set conversion.$\r$\n$\r$\n \
+ See http://www.gnupg.org/download/iconv.html for instructions."
+ Return
+
+ IntOp $R2 $R0 / 0x00010000
+ IntOp $R3 $R0 & 0x0000FFFF
+ IntOp $R4 $R1 / 0x00010000
+ IntOp $R5 $R1 & 0x0000FFFF
+ StrCpy $0 "$R2.$R3.$R4.$R5"
+
+ DetailPrint "iconv.dll version is $0"
+
+ IntCmp $R2 1 0 IconvTooOld
+ IntCmp $R3 9 0 IconvTooOld
+ goto +3
+ IconvTooOld:
+ MessageBox MB_OK \
+ "The installed iconv.dll is too old.$\r$\n \
+ We require at least version 1.9.0.0 (installed: $0).$\r$\n \
+ It is highly suggested to install an updated DLL to help \
+ with character set conversion.$\r$\n$\r$\n \
+ See http://www.gnupg.org/download/iconv.html for instructions."
+
+
+SectionEnd
+
+
;------------------
Section "Uninstall"
diff --git a/util/ChangeLog b/util/ChangeLog
index 42aed3bfa..89f1f59cb 100644
--- a/util/ChangeLog
+++ b/util/ChangeLog
@@ -1,3 +1,8 @@
+2005-01-11 Werner Koch <[email protected]>
+
+ * strgutil.c (set_native_charset) [W32]: Use the alias table from
+ libiconv 1.9.2.
+
2005-01-13 David Shaw <[email protected]>
* http.c (connect_server): Use INADDR_NONE instead of
diff --git a/util/strgutil.c b/util/strgutil.c
index 6205910e2..515132f95 100644
--- a/util/strgutil.c
+++ b/util/strgutil.c
@@ -482,6 +482,7 @@ set_native_charset( const char *newset )
#ifdef _WIN32
static char codepage[30];
unsigned int cpno;
+ const char *aliases;
/* We are a console program thus we need to use the
GetConsoleOutputCP function and not the the GetACP which
@@ -494,14 +495,35 @@ set_native_charset( const char *newset )
if (!cpno)
cpno = GetACP ();
sprintf (codepage, "CP%u", cpno );
- /* If it is the Windows name for Latin-1 we use the standard
- name instead to avoid loading of iconv.dll. Unfortunately
- it is often CP850 and we don't have a custom translation
- for it. */
- if (!strcmp (codepage, "CP1252"))
- newset = "iso-8859-1";
- else
- newset = codepage;
+ /* Resolve alias. We use a long string string and not the
+ usual array to optimize if the code is taken to a DSO.
+ Taken from libiconv 1.9.2. */
+ newset = codepage;
+ for (aliases = ("CP936" "\0" "GBK" "\0"
+ "CP1361" "\0" "JOHAB" "\0"
+ "CP20127" "\0" "ASCII" "\0"
+ "CP20866" "\0" "KOI8-R" "\0"
+ "CP21866" "\0" "KOI8-RU" "\0"
+ "CP28591" "\0" "ISO-8859-1" "\0"
+ "CP28592" "\0" "ISO-8859-2" "\0"
+ "CP28593" "\0" "ISO-8859-3" "\0"
+ "CP28594" "\0" "ISO-8859-4" "\0"
+ "CP28595" "\0" "ISO-8859-5" "\0"
+ "CP28596" "\0" "ISO-8859-6" "\0"
+ "CP28597" "\0" "ISO-8859-7" "\0"
+ "CP28598" "\0" "ISO-8859-8" "\0"
+ "CP28599" "\0" "ISO-8859-9" "\0"
+ "CP28605" "\0" "ISO-8859-15" "\0");
+ *aliases;
+ aliases += strlen (aliases) + 1, aliases += strlen (aliases) + 1)
+ {
+ if (!strcmp (codepage, aliases) ||(*aliases == '*' && !aliases[1]))
+ {
+ newset = aliases + strlen (aliases) + 1;
+ break;
+ }
+ }
+
#else
#ifdef HAVE_LANGINFO_CODESET
newset = nl_langinfo (CODESET);