* configure.ac (have_w32_system): New. Disable Pth checks for W32.

Link jnlib/w32-pth.h to pth.h.

* Makefile.am (pkglib_PROGRAMS): Build only for W32.

* keydb.c: Don't define DIRSEP_S here.
This commit is contained in:
Werner Koch 2004-12-06 13:49:14 +00:00
parent 14524a8e79
commit 8f620c8c2c
9 changed files with 85 additions and 22 deletions

View File

@ -1,3 +1,8 @@
2004-12-06 Werner Koch <wk@g10code.com>
* configure.ac (have_w32_system): New. Disable Pth checks for W32.
Link jnlib/w32-pth.h to pth.h.
2004-12-03 Werner Koch <wk@g10code.com>
Released 1.9.13.

2
NEWS
View File

@ -7,7 +7,7 @@ Noteworthy changes in version 1.9.13 (2004-12-03)
* [gpgsm] New option --prefer-system-dirmngr.
* Minor cleanups and debbuging aids.
* Minor cleanups and debugging aids.
Noteworthy changes in version 1.9.12 (2004-10-22)

View File

@ -1,10 +1,15 @@
./configure --enable-maintainer-mode --prefix=/home/wk/w32root \
#!/bin/sh
[ -z "$w32root" ] && w32root="$HOME/w32root"
./configure --enable-maintainer-mode --prefix=${w32root} \
--host=i586-mingw32msvc --build=`scripts/config.guess` \
--with-gpg-error-prefix=/home/wk/w32root \
--with-ksba-prefix=/home/wk/w32root \
--with-libgcrypt-prefix=/home/wk/w32root \
--with-libassuan-prefix=/home/wk/w32root \
--with-zlib=/home/wk/w32root
--with-gpg-error-prefix=${w32root} \
--with-ksba-prefix=${w32root} \
--with-libgcrypt-prefix=${w32root} \
--with-libassuan-prefix=${w32root} \
--with-zlib=${w32root} \
--with-pth-prefix=${w32root}

View File

@ -141,7 +141,7 @@ AC_ARG_ENABLE(agent-only,
build_agent_only=$enableval)
# Configure option to allow ot disallow execution of external
# Configure option to allow or disallow execution of external
# programs, like a photo viewer.
AC_MSG_CHECKING([whether to enable external program execution])
AC_ARG_ENABLE(exec,
@ -343,6 +343,7 @@ GNUPG_CHECK_DOCBOOK_TO_TEXI
try_gettext=yes
have_dosish_system=no
have_w32_system=no
case "${host}" in
*-*-mingw32*)
# special stuff for Windoze NT
@ -356,6 +357,7 @@ case "${host}" in
MingW32 systems and these systems lack Posix functions,
we use a simplified version of gettext])
have_dosish_system=yes
have_w32_system=yes
try_gettext="no"
;;
i?86-emx-os2 | i?86-*-os2*emx )
@ -409,12 +411,18 @@ esac
if test "$have_dosish_system" = yes; then
AC_DEFINE(HAVE_DOSISH_SYSTEM,1,
[defined if we run on some of the PCDOS like systems
[Defined if we run on some of the PCDOS like systems
(DOS, Windoze. OS/2) with special properties like
no file modes])
fi
AM_CONDITIONAL(HAVE_DOSISH_SYSTEM, test "$have_dosish_system" = yes)
if test "$have_w32_system" = yes; then
AC_DEFINE(HAVE_W32_SYSTEM,1, [Defined if we run on a W32 API based system])
fi
AM_CONDITIONAL(HAVE_W32_SYSTEM, test "$have_w32_system" = yes)
#
# Checks for libraries.
@ -480,6 +488,7 @@ AM_CONDITIONAL(HAVE_OPENSC, test "$have_opensc" = "yes")
#
# Check whether the (highly desirable) GNU Pth library is available
# Note, that we include a Pth emulation for W32.
#
AC_ARG_WITH(pth-prefix,
AC_HELP_STRING([--with-pth-prefix=PFX],
@ -489,7 +498,8 @@ if test x$pth_config_prefix != x ; then
PTH_CONFIG="$pth_config_prefix/bin/pth-config"
fi
AC_PATH_PROG(PTH_CONFIG, pth-config, no)
if test "$PTH_CONFIG" = "no"; then
if test "$have_w32_system" = no; then
if test "$PTH_CONFIG" = "no"; then
AC_MSG_WARN([[
***
*** To support concurrent access to the gpg-agent and the SCdaemon
@ -498,7 +508,7 @@ if test "$PTH_CONFIG" = "no"; then
*** On a Debian GNU/Linux system you might want to try
*** apt-get install libpth-dev
***]])
else
else
GNUPG_PTH_VERSION_CHECK(1.3.7)
if test $have_pth = yes; then
PTH_CFLAGS=`$PTH_CONFIG --cflags`
@ -507,6 +517,12 @@ else
AC_DEFINE(USE_GNU_PTH, 1,
[Defined if the GNU Portable Thread Library should be used])
fi
fi
else
have_pth=yes
PTH_CFLAGS=""
PTH_LIBS=""
AC_DEFINE(USE_GNU_PTH, 1)
fi
AC_SUBST(PTH_CFLAGS)
AC_SUBST(PTH_LIBS)
@ -968,15 +984,11 @@ AM_CONDITIONAL(CROSS_COMPILING, test x$cross_compiling = xyes)
GNUPG_CHECK_GNUMAKE
# add some extra libs here so that previous tests don't fail for
# Add some extra libs here so that previous tests don't fail for
# mysterious reasons - the final link step should bail out.
case "${host}" in
*-*-mingw32*)
W32LIBS="-lwsock32"
;;
*)
;;
esac
if test "$have_w32_system" = yes; then
W32LIBS="-lwsock32"
fi
if test "$GCC" = yes; then
@ -996,6 +1008,10 @@ AC_SUBST(W32LIBS)
AC_DEFINE(HAVE_JNLIB_LOGGING, 1,
[Defined if jnlib style logging functions are available])
# For W32 we need to use our Pth emulation code
if test "$have_w32_system" = yes; then
AC_CONFIG_LINKS(pth.h:jnlib/w32-pth.h)
fi
#

29
jnlib/w32-pth.h Normal file
View File

@ -0,0 +1,29 @@
/* w32-pth.h - GNU Pth emulation for W32 (MS Windows).
* Copyright (C) 2004 g10 Code GmbH
*
* This file is part of GnuPG.
*
* GnuPG is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation; either version 2.1 of
* the License, or (at your option) any later version.
*
* GnuPG is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
/* Note that this header is usually through a symlinked pth.h file.
This is needed so that we don't have a pth.h file here which would
conflict if a system really has pth available. */
#ifndef W32_PTH_H
#define W32_PTH_H
#endif /*W32_PTH_H*/

View File

@ -1,3 +1,7 @@
2004-12-06 Werner Koch <wk@g10code.com>
* Makefile.am (pkglib_PROGRAMS): Build only for W32.
2004-10-22 Werner Koch <wk@g10code.com>
* app-openpgp.c (verify_chv3): The minium length for CHV3 is

View File

@ -19,7 +19,9 @@
## Process this file with automake to produce Makefile.in
bin_PROGRAMS = scdaemon sc-copykeys
if HAVE_W32_SYSTEM
pkglib_PROGRAMS = pcsc-wrapper
endif
AM_CPPFLAGS = -I$(top_srcdir)/intl -I$(top_srcdir)/common

View File

@ -1,3 +1,7 @@
2004-12-06 Werner Koch <wk@g10code.com>
* keydb.c: Don't define DIRSEP_S here.
2004-12-02 Werner Koch <wk@g10code.com>
* certchain.c (gpgsm_basic_cert_check): Dump certs with bad

View File

@ -33,8 +33,6 @@
#include "keydb.h"
#include "i18n.h"
#define DIRSEP_C '/'
static int active_handles;
typedef enum {