Insert platform dependent typedefs into gpgme.h

We already modify gpgme.h per playform and thus we can also get rid of
some #ifdefs.  The change does not change anything for current
platforms but should do the right think for W64.

Note that as per MS specs ssize_t is to be defined as LONG_PTR which
translates to a long on 32 bit platforms and to __int64 on 64 bit
Windows platforms.  We already used long in the past.  There seems to
be a problem with some versions of mingw32 which includes a ssize_t
type typedefed to int.  O(n 32 bit W32 platforms int and long are
identically.
This commit is contained in:
Werner Koch 2011-04-06 13:45:15 +02:00
parent b001a8df68
commit 7e547d87d2
5 changed files with 121 additions and 75 deletions

View File

@ -1,3 +1,9 @@
2011-04-06 Werner Koch <wk@g10code.com>
* autogen.sh (--build-w32): Support option --build-w64.
* configure.ac (HAVE_W64_SYSTEM): Define.
(INSERT__TYPEDEFS_FOR_GPGME_H): New.
2011-02-02 Marcus Brinkmann <mb@g10code.com> 2011-02-02 Marcus Brinkmann <mb@g10code.com>
* configure.ac (NEED_LIBASSUAN_VERSION): Bump to 2.0.2 for system hooks. * configure.ac (NEED_LIBASSUAN_VERSION): Bump to 2.0.2 for system hooks.
@ -168,12 +174,12 @@
2008-09-16 Marcus Brinkmann <marcus@g10code.com> 2008-09-16 Marcus Brinkmann <marcus@g10code.com>
* configure.ac (_XOPEN_SOURCE) [apple-darwin]: Define it. * configure.ac (_XOPEN_SOURCE) [apple-darwin]: Define it.
2008-07-04 Werner Koch <wk@g10code.com> 2008-07-04 Werner Koch <wk@g10code.com>
* config.guess, config.sub: Update to 2007-11-19. Also update * config.guess, config.sub: Update to 2007-11-19. Also update
missing et al scripts. missing et al scripts.
2008-04-01 Werner Koch <wk@g10code.com> 2008-04-01 Werner Koch <wk@g10code.com>
@ -252,7 +258,7 @@
* assuan/Makefile.am (INCLUDES): Include $(top_srcdir)/gpgme. * assuan/Makefile.am (INCLUDES): Include $(top_srcdir)/gpgme.
* assuan/assuan.h: Include <ath.h> instead of trying to duplicate * assuan/assuan.h: Include <ath.h> instead of trying to duplicate
the definitions. the definitions.
* assuan/: Update files to 2007-07-04 version of assuan. * assuan/: Update files to 2007-07-04 version of assuan.
* autogen.sh: Use = not == in test. * autogen.sh: Use = not == in test.
@ -268,7 +274,7 @@
2007-01-29 Marcus Brinkmann <marcus@g10code.de> 2007-01-29 Marcus Brinkmann <marcus@g10code.de>
Released 1.1.3. Released 1.1.3.
* configure.ac (LIBGPGME_LT_REVISION): Bump for release. * configure.ac (LIBGPGME_LT_REVISION): Bump for release.
2007-01-26 Werner Koch <wk@g10code.com> 2007-01-26 Werner Koch <wk@g10code.com>
@ -515,7 +521,7 @@
2004-04-06 Werner Koch <wk@gnupg.org> 2004-04-06 Werner Koch <wk@gnupg.org>
Released 0.4.6. Released 0.4.6.
* config.guess, config.sub, ltmain.sh: Updated to those from * config.guess, config.sub, ltmain.sh: Updated to those from
libtools 1.5.4. libtools 1.5.4.
@ -552,8 +558,8 @@
2004-01-12 Werner Koch <wk@gnupg.org> 2004-01-12 Werner Koch <wk@gnupg.org>
Released 0.4.4. Released 0.4.4.
* configure.ac: Bumbed LT_Revision; now at C12/A1/R1. * configure.ac: Bumbed LT_Revision; now at C12/A1/R1.
(NEED_GPGSM_VERSION): Set to 1.9.3. (NEED_GPGSM_VERSION): Set to 1.9.3.
(min_automake_version): Added. (min_automake_version): Added.
* README.CVS: New. * README.CVS: New.
@ -650,7 +656,7 @@
(AC_CONFIG_FILES): Remove bonobo/Makefile. (AC_CONFIG_FILES): Remove bonobo/Makefile.
* Makefile.am (bonobo): Remove variable. * Makefile.am (bonobo): Remove variable.
(SUBDIRS): Remove ${bonobo}. (SUBDIRS): Remove ${bonobo}.
* configure.ac: Remove all uses of GNUPG_CHECK_TYPEDEF, for byte, * configure.ac: Remove all uses of GNUPG_CHECK_TYPEDEF, for byte,
ushort, ulong, u16 and u32. ushort, ulong, u16 and u32.
* acinclude.m4 (GNUPG_CHECK_TYPEDEF): Remove macro. * acinclude.m4 (GNUPG_CHECK_TYPEDEF): Remove macro.
@ -663,7 +669,7 @@
2002-12-23 Marcus Brinkmann <marcus@g10code.de> 2002-12-23 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Bump up to 0.4.1. * configure.ac: Bump up to 0.4.1.
Released 0.4.0. Released 0.4.0.
2002-12-23 Marcus Brinkmann <marcus@g10code.de> 2002-12-23 Marcus Brinkmann <marcus@g10code.de>
@ -708,7 +714,7 @@
2002-09-20 Werner Koch <wk@gnupg.org> 2002-09-20 Werner Koch <wk@gnupg.org>
Released 0.3.11. Released 0.3.11.
* configure.ac: Bump up LIBGPGME_LT_REVISION. * configure.ac: Bump up LIBGPGME_LT_REVISION.
* configure.ac (AC_CHECK_HEADERS): Check for sys/select.h. * configure.ac (AC_CHECK_HEADERS): Check for sys/select.h.
@ -788,7 +794,7 @@
2002-06-25 Werner Koch <wk@gnupg.org> 2002-06-25 Werner Koch <wk@gnupg.org>
Released 0.3.8. Released 0.3.8.
* configure.ac: Bumbed LT version to 9/3/0. * configure.ac: Bumbed LT version to 9/3/0.
(NEED_GPGSM_VERSION): Need 0.3.8 due to fixed export command. (NEED_GPGSM_VERSION): Need 0.3.8 due to fixed export command.
@ -844,7 +850,7 @@
* configure.ac: Bumbed version to 0.3.4-cvs to continue development. * configure.ac: Bumbed version to 0.3.4-cvs to continue development.
Released 0.3.4. Released 0.3.4.
* configure.ac: Bumbed LT version numbers to (7,1,0), requires * configure.ac: Bumbed LT version numbers to (7,1,0), requires
gpgsm 0.3.1. gpgsm 0.3.1.
@ -863,7 +869,7 @@
* jnlib/Makefile.am: Rever to older version that includes xmalloc * jnlib/Makefile.am: Rever to older version that includes xmalloc
but not dotlock and some other files. Reported by Stéphane but not dotlock and some other files. Reported by Stéphane
Corthésy. Corthésy.
2002-02-10 Marcus Brinkmann <marcus@g10code.de> 2002-02-10 Marcus Brinkmann <marcus@g10code.de>
* Released 0.3.2. * Released 0.3.2.
@ -957,7 +963,7 @@
2001-09-17 Werner Koch <wk@gnupg.org> 2001-09-17 Werner Koch <wk@gnupg.org>
Released 0.2.3. Released 0.2.3.
* configure.in (NEED_GPG_VERSION): Set to 1.0.6. Incremented LT * configure.in (NEED_GPG_VERSION): Set to 1.0.6. Incremented LT
current and age. current and age.
@ -969,14 +975,14 @@
2001-04-05 Werner Koch <wk@gnupg.org> 2001-04-05 Werner Koch <wk@gnupg.org>
* configure.in (NEED_GPG_VERSION): Set to 1.0.4g * configure.in (NEED_GPG_VERSION): Set to 1.0.4g
2001-04-02 Werner Koch <wk@gnupg.org> 2001-04-02 Werner Koch <wk@gnupg.org>
Released 0.2.1. Released 0.2.1.
Changed the copyright notices all over the place. Changed the copyright notices all over the place.
2001-02-28 Werner Koch <wk@gnupg.org> 2001-02-28 Werner Koch <wk@gnupg.org>
Released 0.2.0. Released 0.2.0.

View File

@ -1,5 +1,5 @@
#! /bin/sh #! /bin/sh
# Run this to generate all the initial makefiles, etc. # Run this to generate all the initial makefiles, etc.
# #
# Copyright (C) 2003 g10 Code GmbH # Copyright (C) 2003 g10 Code GmbH
# #
@ -43,7 +43,7 @@ w32ce_toolprefixes=
w32ce_extraoptions= w32ce_extraoptions=
amd64_toolprefixes= amd64_toolprefixes=
# End list of optional variables sourced from ~/.gnupg-autogen.rc # End list of optional variables sourced from ~/.gnupg-autogen.rc
# What follows are variables which are sourced but default to # What follows are variables which are sourced but default to
# environment variables or lacking them hardcoded values. # environment variables or lacking them hardcoded values.
#w32root= #w32root=
#w32ce_root= #w32ce_root=
@ -55,7 +55,7 @@ if [ -f "$HOME/.gnupg-autogen.rc" ]; then
fi fi
# Convenience option to use certain configure options for some hosts. # Convenience option to use certain configure options for some hosts.
myhost="" myhost=""
myhostsub="" myhostsub=""
case "$1" in case "$1" in
--build-w32) --build-w32)
@ -65,6 +65,10 @@ case "$1" in
myhost="w32" myhost="w32"
myhostsub="ce" myhostsub="ce"
;; ;;
--build-w64)
myhost="w32"
myhostsub="64"
;;
--build-amd64) --build-amd64)
myhost="amd64" myhost="amd64"
;; ;;
@ -95,13 +99,18 @@ if [ "$myhost" = "w32" ]; then
[ -z "$w32root" ] && w32root="$HOME/w32ce_root" [ -z "$w32root" ] && w32root="$HOME/w32ce_root"
toolprefixes="arm-mingw32ce" toolprefixes="arm-mingw32ce"
;; ;;
64)
w32root="$w64root"
[ -z "$w32root" ] && w32root="$HOME/w64root"
toolprefixes="amd64-mingw32msvc"
;;
*) *)
[ -z "$w32root" ] && w32root="$HOME/w32root" [ -z "$w32root" ] && w32root="$HOME/w32root"
toolprefixes="i586-mingw32msvc i386-mingw32msvc" toolprefixes="i586-mingw32msvc i386-mingw32msvc"
;; ;;
esac esac
echo "Using $w32root as standard install directory" >&2 echo "Using $w32root as standard install directory" >&2
crossbindir= crossbindir=
for host in $toolprefixes; do for host in $toolprefixes; do
if ${host}-gcc --version >/dev/null 2>&1 ; then if ${host}-gcc --version >/dev/null 2>&1 ; then
@ -112,14 +121,14 @@ if [ "$myhost" = "w32" ]; then
done done
if [ -z "$crossbindir" ]; then if [ -z "$crossbindir" ]; then
echo "Cross compiler kit not installed" >&2 echo "Cross compiler kit not installed" >&2
if [ -z "$sub" ]; then if [ -z "$myhostsub" ]; then
echo "Under Debian GNU/Linux, you may install it using" >&2 echo "Under Debian GNU/Linux, you may install it using" >&2
echo " apt-get install mingw32 mingw32-runtime mingw32-binutils" >&2 echo " apt-get install mingw32 mingw32-runtime mingw32-binutils" >&2
fi fi
echo "Stop." >&2 echo "Stop." >&2
exit 1 exit 1
fi fi
if [ -f "$tsdir/config.log" ]; then if [ -f "$tsdir/config.log" ]; then
if ! head $tsdir/config.log | grep "$host" >/dev/null; then if ! head $tsdir/config.log | grep "$host" >/dev/null; then
echo "Pease run a 'make distclean' first" >&2 echo "Pease run a 'make distclean' first" >&2
@ -151,7 +160,7 @@ if [ "$myhost" = "amd64" ]; then
[ -z "$amd64root" ] && amd64root="$HOME/amd64root" [ -z "$amd64root" ] && amd64root="$HOME/amd64root"
echo "Using $amd64root as standard install directory" >&2 echo "Using $amd64root as standard install directory" >&2
# Locate the cross compiler # Locate the cross compiler
crossbindir= crossbindir=
for host in x86_64-linux-gnu amd64-linux-gnu; do for host in x86_64-linux-gnu amd64-linux-gnu; do
@ -166,7 +175,7 @@ if [ "$myhost" = "amd64" ]; then
echo "Stop." >&2 echo "Stop." >&2
exit 1 exit 1
fi fi
if [ -f "$tsdir/config.log" ]; then if [ -f "$tsdir/config.log" ]; then
if ! head $tsdir/config.log | grep "$host" >/dev/null; then if ! head $tsdir/config.log | grep "$host" >/dev/null; then
echo "Please run a 'make distclean' first" >&2 echo "Please run a 'make distclean' first" >&2
@ -175,7 +184,7 @@ if [ "$myhost" = "amd64" ]; then
fi fi
$tsdir/configure --enable-maintainer-mode --prefix=${amd64root} \ $tsdir/configure --enable-maintainer-mode --prefix=${amd64root} \
--host=${host} --build=${build} --host=${host} --build=${build}
rc=$? rc=$?
exit $rc exit $rc
fi fi
@ -184,19 +193,19 @@ fi
# Grep the required versions from configure.ac # Grep the required versions from configure.ac
autoconf_vers=`sed -n '/^AC_PREREQ(/ { autoconf_vers=`sed -n '/^AC_PREREQ(/ {
s/^.*(\(.*\))/\1/p s/^.*(\(.*\))/\1/p
q q
}' ${configure_ac}` }' ${configure_ac}`
autoconf_vers_num=`echo "$autoconf_vers" | cvtver` autoconf_vers_num=`echo "$autoconf_vers" | cvtver`
automake_vers=`sed -n '/^min_automake_version=/ { automake_vers=`sed -n '/^min_automake_version=/ {
s/^.*="\(.*\)"/\1/p s/^.*="\(.*\)"/\1/p
q q
}' ${configure_ac}` }' ${configure_ac}`
automake_vers_num=`echo "$automake_vers" | cvtver` automake_vers_num=`echo "$automake_vers" | cvtver`
#gettext_vers=`sed -n '/^AM_GNU_GETTEXT_VERSION(/ { #gettext_vers=`sed -n '/^AM_GNU_GETTEXT_VERSION(/ {
#s/^.*(\(.*\))/\1/p #s/^.*(\(.*\))/\1/p
#q #q
#}' ${configure_ac}` #}' ${configure_ac}`
@ -233,9 +242,9 @@ fi
if test "$DIE" = "yes"; then if test "$DIE" = "yes"; then
cat <<EOF cat <<EOF
Note that you may use alternative versions of the tools by setting Note that you may use alternative versions of the tools by setting
the corresponding environment variables; see README.CVS for details. the corresponding environment variables; see README.CVS for details.
EOF EOF
exit 1 exit 1
fi fi
@ -249,6 +258,6 @@ $AUTOMAKE --gnu;
echo "Running autoconf${FORCE} ..." echo "Running autoconf${FORCE} ..."
$AUTOCONF${FORCE} $AUTOCONF${FORCE}
echo "You may now run echo "You may now run
./configure --enable-maintainer-mode && make ./configure --enable-maintainer-mode && make
" "

View File

@ -1,24 +1,24 @@
# configure.ac for GPGME # configure.ac for GPGME
# Copyright (C) 2000 Werner Koch (dd9jn) # Copyright (C) 2000 Werner Koch (dd9jn)
# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
# 2009, 2010 g10 Code GmbH # 2009, 2010, 2011 g10 Code GmbH
# #
# This file is part of GPGME. # This file is part of GPGME.
# #
# GPGME is free software; you can redistribute it and/or modify it # GPGME is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as # under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2.1 of the # published by the Free Software Foundation; either version 2.1 of the
# License, or (at your option) any later version. # License, or (at your option) any later version.
# #
# GPGME is distributed in the hope that it will be useful, but WITHOUT # GPGME is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
# Public License for more details. # Public License for more details.
# #
# You should have received a copy of the GNU Lesser General Public # You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software # License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
# (Process this file with autoconf to produce a configure script.) # (Process this file with autoconf to produce a configure script.)
AC_PREREQ(2.59) AC_PREREQ(2.59)
min_automake_version="1.10" min_automake_version="1.10"
@ -39,7 +39,7 @@ m4_define([svn_revision], m4_esyscmd([printf "%d" $( (svn info 2>/dev/null \
|| echo 'Revision: 0')|sed -n '/^Revision:/ {s/[^0-9]//gp;q;}')])) || echo 'Revision: 0')|sed -n '/^Revision:/ {s/[^0-9]//gp;q;}')]))
m4_define([git_revision], m4_esyscmd([git branch -v 2>/dev/null \ m4_define([git_revision], m4_esyscmd([git branch -v 2>/dev/null \
| awk '/^\* / {printf "%s",$3}'])) | awk '/^\* / {printf "%s",$3}']))
AC_INIT([gpgme], AC_INIT([gpgme],
[my_version[]m4_if(my_issvn,[yes], [my_version[]m4_if(my_issvn,[yes],
[m4_if(git_revision,[],[-svn[]svn_revision],[-git[]git_revision])])], [m4_if(git_revision,[],[-svn[]svn_revision],[-git[]git_revision])])],
[bug-gpgme@gnupg.org]) [bug-gpgme@gnupg.org])
@ -132,16 +132,19 @@ G13_DEFAULT=no
component_system=None component_system=None
have_dosish_system=no have_dosish_system=no
have_w32_system=no have_w32_system=no
have_w64_system=no
build_w32_glib=no build_w32_glib=no
build_w32_qt=no build_w32_qt=no
case "${host}" in case "${host}" in
x86_64-*mingw32*)
have_w64_system=yes
;;
*-mingw32ce*) *-mingw32ce*)
have_w32ce_system=yes have_w32ce_system=yes
;; ;;
esac esac
case "${host}" in case "${host}" in
*-mingw32ce*|*-mingw32*) *-mingw32ce*|*-mingw32*)
# special stuff for Windoze NT
have_dosish_system=yes have_dosish_system=yes
have_w32_system=yes have_w32_system=yes
GPG_DEFAULT='c:\\gnupg\\gpg.exe' GPG_DEFAULT='c:\\gnupg\\gpg.exe'
@ -187,20 +190,31 @@ esac
if test "$have_dosish_system" = yes; then if test "$have_dosish_system" = yes; then
AC_DEFINE(HAVE_DOSISH_SYSTEM,1, 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 (DOS, Windoze. OS/2) with special properties like
no file modes]) no file modes])
fi fi
AM_CONDITIONAL(HAVE_DOSISH_SYSTEM, test "$have_dosish_system" = yes) AM_CONDITIONAL(HAVE_DOSISH_SYSTEM, test "$have_dosish_system" = yes)
if test "$have_w32_system" = yes; then if test "$have_w32_system" = yes; then
AC_DEFINE(HAVE_W32_SYSTEM,1, [Defined if we run on a W32 API based system]) AC_DEFINE(HAVE_W32_SYSTEM,1,
[Defined if we run on any kind of W32 API based system])
ACSUBST
fi fi
AM_CONDITIONAL(HAVE_W32_SYSTEM, test "$have_w32_system" = yes) AM_CONDITIONAL(HAVE_W32_SYSTEM, test "$have_w32_system" = yes)
if test "$have_w64_system" = yes; then
AC_DEFINE(HAVE_W64_SYSTEM,1,
[Defined if we run on a 64 bit W32 API based system])
fi
AM_CONDITIONAL(HAVE_W64_SYSTEM, test "$have_w64_system" = yes)
if test "$have_w32ce_system" = yes; then if test "$have_w32ce_system" = yes; then
AC_DEFINE(HAVE_W32CE_SYSTEM,1, [Defined if we run on a W32 CE API based system]) AC_DEFINE(HAVE_W32CE_SYSTEM,1,
[Defined if we run on a W32 CE API based system])
fi fi
AM_CONDITIONAL(HAVE_W32CE_SYSTEM, test "$have_w32ce_system" = yes) AM_CONDITIONAL(HAVE_W32CE_SYSTEM, test "$have_w32ce_system" = yes)
AM_CONDITIONAL(BUILD_W32_GLIB, test "$build_w32_glib" = yes) AM_CONDITIONAL(BUILD_W32_GLIB, test "$build_w32_glib" = yes)
AM_CONDITIONAL(BUILD_W32_QT, test "$build_w32_qt" = yes) AM_CONDITIONAL(BUILD_W32_QT, test "$build_w32_qt" = yes)
@ -233,6 +247,22 @@ case "$ac_cv_sys_file_offset_bits" in
esac esac
AC_SUBST(NEED__FILE_OFFSET_BITS) AC_SUBST(NEED__FILE_OFFSET_BITS)
# Figure out platform dependent typedefs for gpgme.h
if test "$have_w32_system" = yes; then
if test "$have_w64_system" = yes; then
INSERT__TYPEDEFS_FOR_GPGME_H="/* Typedefs for the 64 bit W32 API. */
#include <basetsd.h>
typedef long off_t;
typedef __int64 ssize_t;"
else
INSERT__TYPEDEFS_FOR_GPGME_H="/* Typedefs for the 32 bit W32 API. */
typedef long off_t;
typedef long ssize_t;"
fi
else
INSERT__TYPEDEFS_FOR_GPGME_H="#include <sys/types.h>"
fi
AC_SUBST(INSERT__TYPEDEFS_FOR_GPGME_H)
# Checks for compiler features. # Checks for compiler features.
if test "$GCC" = yes; then if test "$GCC" = yes; then
@ -835,7 +865,7 @@ AM_CONDITIONAL(BUILD_COMPLUS, test "$component_system" = "COM+")
# Generate values for the DLL version info # Generate values for the DLL version info
if test "$have_w32_system" = yes; then if test "$have_w32_system" = yes; then
BUILD_TIMESTAMP=`date --iso-8601=minutes` BUILD_TIMESTAMP=`date --iso-8601=minutes`
changequote(,)dnl changequote(,)dnl
BUILD_FILEVERSION=`echo "$VERSION" | sed 's/\([0-9.]*\).*/\1./;s/\./,/g'` BUILD_FILEVERSION=`echo "$VERSION" | sed 's/\([0-9.]*\).*/\1./;s/\./,/g'`
changequote([,])dnl changequote([,])dnl
BUILD_FILEVERSION="${BUILD_FILEVERSION}${BUILD_REVISION}" BUILD_FILEVERSION="${BUILD_FILEVERSION}${BUILD_REVISION}"
@ -857,7 +887,7 @@ AH_VERBATIM([SEPCONSTANTS],
AH_BOTTOM([ AH_BOTTOM([
/* Definition of GCC specific attributes. */ /* Definition of GCC specific attributes. */
#if __GNUC__ > 2 #if __GNUC__ > 2
# define GPGME_GCC_A_PURE __attribute__ ((__pure__)) # define GPGME_GCC_A_PURE __attribute__ ((__pure__))
#else #else
# define GPGME_GCC_A_PURE # define GPGME_GCC_A_PURE
@ -868,7 +898,7 @@ AH_BOTTOM([
]) ])
# Substitution used for gpgme-config # Substitution used for gpgme-config
GPGME_CONFIG_LIBS="-lgpgme" GPGME_CONFIG_LIBS="-lgpgme"
GPGME_CONFIG_CFLAGS="" GPGME_CONFIG_CFLAGS=""
AC_SUBST(GPGME_CONFIG_API_VERSION) AC_SUBST(GPGME_CONFIG_API_VERSION)
@ -917,10 +947,10 @@ fi
# #
# Create config files # Create config files
AC_CONFIG_FILES(Makefile src/Makefile AC_CONFIG_FILES(Makefile src/Makefile
tests/Makefile tests/Makefile
tests/gpg/Makefile tests/gpg/Makefile
tests/gpgsm/Makefile tests/gpgsm/Makefile
tests/opassuan/Makefile tests/opassuan/Makefile

View File

@ -1,3 +1,8 @@
2011-04-06 Werner Koch <wk@g10code.com>
* gpgme.h.in: Use INSERT__TYPEDEFS_FOR_GPGME_H to include platform
specific typedefs.
2011-02-03 Werner Koch <wk@g10code.com> 2011-02-03 Werner Koch <wk@g10code.com>
* extra-stati.h: New. * extra-stati.h: New.
@ -18,7 +23,7 @@
(is_socket): Remove function. (is_socket): Remove function.
(_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Remove some dead code. (_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Remove some dead code.
(_gpgme_io_spawn): Translate handles before DuplicateHandle them. (_gpgme_io_spawn): Translate handles before DuplicateHandle them.
2011-02-02 Marcus Brinkmann <mb@g10code.com> 2011-02-02 Marcus Brinkmann <mb@g10code.com>
* w32-util.c (mkstemp): Don't use CreateFile instead of open (the * w32-util.c (mkstemp): Don't use CreateFile instead of open (the
@ -7074,7 +7079,8 @@
* data.c (gpgme_data_rewind): Allow to rewind data_type_none. * data.c (gpgme_data_rewind): Allow to rewind data_type_none.
Copyright 2001,2002,2003,2004,2005,2006,2007,2008,2009 g10 Code GmbH Copyright 2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,
2011 g10 Code GmbH
This file is free software; as a special exception the author gives This file is free software; as a special exception the author gives
unlimited permission to copy and/or distribute it, with or without unlimited permission to copy and/or distribute it, with or without

View File

@ -4,20 +4,20 @@
2010 g10 Code GmbH 2010 g10 Code GmbH
This file is part of GPGME. This file is part of GPGME.
GPGME is free software; you can redistribute it and/or modify it GPGME is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation; either version 2.1 of published by the Free Software Foundation; either version 2.1 of
the License, or (at your option) any later version. the License, or (at your option) any later version.
GPGME is distributed in the hope that it will be useful, but GPGME is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this program; if not, see <http://www.gnu.org/licenses/>. License along with this program; if not, see <http://www.gnu.org/licenses/>.
File: @configure_input@ */ File: @configure_input@ */
#ifndef GPGME_H #ifndef GPGME_H
@ -34,12 +34,7 @@
/* Include stdio.h for the FILE type definition. */ /* Include stdio.h for the FILE type definition. */
#include <stdio.h> #include <stdio.h>
#ifdef _WIN32 @INSERT__TYPEDEFS_FOR_GPGME_H@
typedef long off_t;
typedef long ssize_t;
#else
# include <sys/types.h>
#endif
#include <time.h> #include <time.h>
@ -233,7 +228,7 @@ gpgme_pubkey_algo_t;
/* Hash algorithms from libgcrypt. */ /* Hash algorithms from libgcrypt. */
typedef enum typedef enum
{ {
GPGME_MD_NONE = 0, GPGME_MD_NONE = 0,
GPGME_MD_MD5 = 1, GPGME_MD_MD5 = 1,
GPGME_MD_SHA1 = 2, GPGME_MD_SHA1 = 2,
GPGME_MD_RMD160 = 3, GPGME_MD_RMD160 = 3,
@ -341,7 +336,7 @@ typedef enum
GPGME_PROTOCOL_GPGCONF = 2, /* Special code for gpgconf. */ GPGME_PROTOCOL_GPGCONF = 2, /* Special code for gpgconf. */
GPGME_PROTOCOL_ASSUAN = 3, /* Low-level access to an Assuan server. */ GPGME_PROTOCOL_ASSUAN = 3, /* Low-level access to an Assuan server. */
GPGME_PROTOCOL_G13 = 4, GPGME_PROTOCOL_G13 = 4,
GPGME_PROTOCOL_UISERVER= 5, GPGME_PROTOCOL_UISERVER= 5,
GPGME_PROTOCOL_DEFAULT = 254, GPGME_PROTOCOL_DEFAULT = 254,
GPGME_PROTOCOL_UNKNOWN = 255 GPGME_PROTOCOL_UNKNOWN = 255
} }
@ -367,7 +362,7 @@ typedef unsigned int gpgme_export_mode_t;
/* Flags for the audit log functions. */ /* Flags for the audit log functions. */
#define GPGME_AUDITLOG_HTML 1 #define GPGME_AUDITLOG_HTML 1
#define GPGME_AUDITLOG_WITH_HELP 128 #define GPGME_AUDITLOG_WITH_HELP 128
@ -523,7 +518,7 @@ struct _gpgme_engine_info
/* The file name of the engine binary. */ /* The file name of the engine binary. */
char *file_name; char *file_name;
/* The version string of the installed engine. */ /* The version string of the installed engine. */
char *version; char *version;
@ -576,7 +571,7 @@ struct _gpgme_subkey
/* Internal to GPGME, do not use. */ /* Internal to GPGME, do not use. */
unsigned int _unused : 21; unsigned int _unused : 21;
/* Public key algorithm supported by this subkey. */ /* Public key algorithm supported by this subkey. */
gpgme_pubkey_algo_t pubkey_algo; gpgme_pubkey_algo_t pubkey_algo;
@ -688,7 +683,7 @@ struct _gpgme_user_id
unsigned int _unused : 30; unsigned int _unused : 30;
/* The validity of the user ID. */ /* The validity of the user ID. */
gpgme_validity_t validity; gpgme_validity_t validity;
/* The user ID string. */ /* The user ID string. */
char *uid; char *uid;
@ -1718,7 +1713,7 @@ struct _gpgme_trust_item
/* The calculated validity. */ /* The calculated validity. */
char *validity; char *validity;
/* Internal to GPGME, do not use. */ /* Internal to GPGME, do not use. */
char _validity[2]; char _validity[2];
@ -1772,13 +1767,13 @@ int gpgme_trust_item_get_int_attr (gpgme_trust_item_t item, _gpgme_attr_t what,
available GPG_ERR_NO_DATA is returned. */ available GPG_ERR_NO_DATA is returned. */
gpgme_error_t gpgme_op_getauditlog_start (gpgme_ctx_t ctx, gpgme_data_t output, gpgme_error_t gpgme_op_getauditlog_start (gpgme_ctx_t ctx, gpgme_data_t output,
unsigned int flags); unsigned int flags);
gpgme_error_t gpgme_op_getauditlog (gpgme_ctx_t ctx, gpgme_data_t output, gpgme_error_t gpgme_op_getauditlog (gpgme_ctx_t ctx, gpgme_data_t output,
unsigned int flags); unsigned int flags);
/* Low-level Assuan protocol access. */ /* Low-level Assuan protocol access. */
typedef gpgme_error_t (*gpgme_assuan_data_cb_t) typedef gpgme_error_t (*gpgme_assuan_data_cb_t)
(void *opaque, const void *data, size_t datalen); (void *opaque, const void *data, size_t datalen);
typedef gpgme_error_t (*gpgme_assuan_inquire_cb_t) typedef gpgme_error_t (*gpgme_assuan_inquire_cb_t)
@ -1790,7 +1785,7 @@ typedef gpgme_error_t (*gpgme_assuan_status_cb_t)
/* Send the Assuan COMMAND and return results via the callbacks. /* Send the Assuan COMMAND and return results via the callbacks.
Asynchronous variant. */ Asynchronous variant. */
gpgme_error_t gpgme_op_assuan_transact_start (gpgme_ctx_t ctx, gpgme_error_t gpgme_op_assuan_transact_start (gpgme_ctx_t ctx,
const char *command, const char *command,
gpgme_assuan_data_cb_t data_cb, gpgme_assuan_data_cb_t data_cb,
void *data_cb_value, void *data_cb_value,
@ -1801,7 +1796,7 @@ gpgme_error_t gpgme_op_assuan_transact_start (gpgme_ctx_t ctx,
/* Send the Assuan COMMAND and return results via the callbacks. /* Send the Assuan COMMAND and return results via the callbacks.
Synchronous variant. */ Synchronous variant. */
gpgme_error_t gpgme_op_assuan_transact_ext (gpgme_ctx_t ctx, gpgme_error_t gpgme_op_assuan_transact_ext (gpgme_ctx_t ctx,
const char *command, const char *command,
gpgme_assuan_data_cb_t data_cb, gpgme_assuan_data_cb_t data_cb,
void *data_cb_value, void *data_cb_value,
@ -1931,7 +1926,7 @@ typedef struct gpgme_conf_arg
typedef struct gpgme_conf_opt typedef struct gpgme_conf_opt
{ {
struct gpgme_conf_opt *next; struct gpgme_conf_opt *next;
/* The option name. */ /* The option name. */
char *name; char *name;
@ -1954,7 +1949,7 @@ typedef struct gpgme_conf_opt
/* The default value. */ /* The default value. */
gpgme_conf_arg_t default_value; gpgme_conf_arg_t default_value;
char *default_description; char *default_description;
/* The default value if the option is not set. */ /* The default value if the option is not set. */
gpgme_conf_arg_t no_arg_value; gpgme_conf_arg_t no_arg_value;
char *no_arg_description; char *no_arg_description;
@ -1987,7 +1982,7 @@ typedef struct gpgme_conf_comp
char *description; char *description;
/* The program name (an absolute path to the program). */ /* The program name (an absolute path to the program). */
char *program_name; char *program_name;
/* A linked list of options for this component. */ /* A linked list of options for this component. */
struct gpgme_conf_opt *options; struct gpgme_conf_opt *options;
@ -2013,7 +2008,7 @@ gpgme_error_t gpgme_conf_opt_change (gpgme_conf_opt_t opt, int reset,
/* Release a set of configurations. */ /* Release a set of configurations. */
void gpgme_conf_release (gpgme_conf_comp_t conf); void gpgme_conf_release (gpgme_conf_comp_t conf);
/* Retrieve the current configurations. */ /* Retrieve the current configurations. */
gpgme_error_t gpgme_op_conf_load (gpgme_ctx_t ctx, gpgme_conf_comp_t *conf_p); gpgme_error_t gpgme_op_conf_load (gpgme_ctx_t ctx, gpgme_conf_comp_t *conf_p);