+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>
* configure.ac (NEED_LIBASSUAN_VERSION): Bump to 2.0.2 for system hooks.
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>
* 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>
* assuan/Makefile.am (INCLUDES): Include $(top_srcdir)/gpgme.
* assuan/assuan.h: Include <ath.h> instead of trying to duplicate
the definitions.
-
+
* assuan/: Update files to 2007-07-04 version of assuan.
* autogen.sh: Use = not == in test.
2007-01-29 Marcus Brinkmann <marcus@g10code.de>
Released 1.1.3.
-
+
* configure.ac (LIBGPGME_LT_REVISION): Bump for release.
2007-01-26 Werner Koch <wk@g10code.com>
2004-04-06 Werner Koch <wk@gnupg.org>
Released 0.4.6.
-
+
* config.guess, config.sub, ltmain.sh: Updated to those from
libtools 1.5.4.
2004-01-12 Werner Koch <wk@gnupg.org>
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.
(min_automake_version): Added.
* README.CVS: New.
(AC_CONFIG_FILES): Remove bonobo/Makefile.
* Makefile.am (bonobo): Remove variable.
(SUBDIRS): Remove ${bonobo}.
-
+
* configure.ac: Remove all uses of GNUPG_CHECK_TYPEDEF, for byte,
ushort, ulong, u16 and u32.
* acinclude.m4 (GNUPG_CHECK_TYPEDEF): Remove macro.
2002-12-23 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Bump up to 0.4.1.
-
+
Released 0.4.0.
2002-12-23 Marcus Brinkmann <marcus@g10code.de>
2002-09-20 Werner Koch <wk@gnupg.org>
Released 0.3.11.
-
+
* configure.ac: Bump up LIBGPGME_LT_REVISION.
* configure.ac (AC_CHECK_HEADERS): Check for sys/select.h.
2002-06-25 Werner Koch <wk@gnupg.org>
Released 0.3.8.
-
+
* configure.ac: Bumbed LT version to 9/3/0.
(NEED_GPGSM_VERSION): Need 0.3.8 due to fixed export command.
* configure.ac: Bumbed version to 0.3.4-cvs to continue development.
Released 0.3.4.
-
+
* configure.ac: Bumbed LT version numbers to (7,1,0), requires
gpgsm 0.3.1.
* jnlib/Makefile.am: Rever to older version that includes xmalloc
but not dotlock and some other files. Reported by Stéphane
Corthésy.
-
+
2002-02-10 Marcus Brinkmann <marcus@g10code.de>
* Released 0.3.2.
2001-09-17 Werner Koch <wk@gnupg.org>
Released 0.2.3.
-
+
* configure.in (NEED_GPG_VERSION): Set to 1.0.6. Incremented LT
current and age.
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>
Released 0.2.1.
Changed the copyright notices all over the place.
-
+
2001-02-28 Werner Koch <wk@gnupg.org>
Released 0.2.0.
#! /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
#
w32ce_extraoptions=
amd64_toolprefixes=
# 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.
#w32root=
#w32ce_root=
fi
# Convenience option to use certain configure options for some hosts.
-myhost=""
+myhost=""
myhostsub=""
case "$1" in
--build-w32)
myhost="w32"
myhostsub="ce"
;;
+ --build-w64)
+ myhost="w32"
+ myhostsub="64"
+ ;;
--build-amd64)
myhost="amd64"
;;
[ -z "$w32root" ] && w32root="$HOME/w32ce_root"
toolprefixes="arm-mingw32ce"
;;
+ 64)
+ w32root="$w64root"
+ [ -z "$w32root" ] && w32root="$HOME/w64root"
+ toolprefixes="amd64-mingw32msvc"
+ ;;
*)
[ -z "$w32root" ] && w32root="$HOME/w32root"
toolprefixes="i586-mingw32msvc i386-mingw32msvc"
;;
esac
echo "Using $w32root as standard install directory" >&2
-
+
crossbindir=
for host in $toolprefixes; do
if ${host}-gcc --version >/dev/null 2>&1 ; then
done
if [ -z "$crossbindir" ]; then
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 " apt-get install mingw32 mingw32-runtime mingw32-binutils" >&2
+ echo " apt-get install mingw32 mingw32-runtime mingw32-binutils" >&2
fi
echo "Stop." >&2
exit 1
fi
-
+
if [ -f "$tsdir/config.log" ]; then
if ! head $tsdir/config.log | grep "$host" >/dev/null; then
echo "Pease run a 'make distclean' first" >&2
[ -z "$amd64root" ] && amd64root="$HOME/amd64root"
echo "Using $amd64root as standard install directory" >&2
-
+
# Locate the cross compiler
crossbindir=
for host in x86_64-linux-gnu amd64-linux-gnu; do
echo "Stop." >&2
exit 1
fi
-
+
if [ -f "$tsdir/config.log" ]; then
if ! head $tsdir/config.log | grep "$host" >/dev/null; then
echo "Please run a 'make distclean' first" >&2
fi
$tsdir/configure --enable-maintainer-mode --prefix=${amd64root} \
- --host=${host} --build=${build}
+ --host=${host} --build=${build}
rc=$?
exit $rc
fi
# Grep the required versions from configure.ac
-autoconf_vers=`sed -n '/^AC_PREREQ(/ {
+autoconf_vers=`sed -n '/^AC_PREREQ(/ {
s/^.*(\(.*\))/\1/p
q
}' ${configure_ac}`
autoconf_vers_num=`echo "$autoconf_vers" | cvtver`
-automake_vers=`sed -n '/^min_automake_version=/ {
+automake_vers=`sed -n '/^min_automake_version=/ {
s/^.*="\(.*\)"/\1/p
q
}' ${configure_ac}`
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
#q
#}' ${configure_ac}`
if test "$DIE" = "yes"; then
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.
-
+
EOF
exit 1
fi
echo "Running autoconf${FORCE} ..."
$AUTOCONF${FORCE}
-echo "You may now run
+echo "You may now run
./configure --enable-maintainer-mode && make
"
# configure.ac for GPGME
# Copyright (C) 2000 Werner Koch (dd9jn)
# 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.
-#
+#
# GPGME 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.
-#
+#
# GPGME 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
-
+
# (Process this file with autoconf to produce a configure script.)
AC_PREREQ(2.59)
min_automake_version="1.10"
|| echo 'Revision: 0')|sed -n '/^Revision:/ {s/[^0-9]//gp;q;}')]))
m4_define([git_revision], m4_esyscmd([git branch -v 2>/dev/null \
| awk '/^\* / {printf "%s",$3}']))
-AC_INIT([gpgme],
+AC_INIT([gpgme],
[my_version[]m4_if(my_issvn,[yes],
[m4_if(git_revision,[],[-svn[]svn_revision],[-git[]git_revision])])],
[bug-gpgme@gnupg.org])
component_system=None
have_dosish_system=no
have_w32_system=no
+have_w64_system=no
build_w32_glib=no
build_w32_qt=no
case "${host}" in
+ x86_64-*mingw32*)
+ have_w64_system=yes
+ ;;
*-mingw32ce*)
have_w32ce_system=yes
;;
esac
case "${host}" in
*-mingw32ce*|*-mingw32*)
- # special stuff for Windoze NT
have_dosish_system=yes
have_w32_system=yes
GPG_DEFAULT='c:\\gnupg\\gpg.exe'
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])
+ AC_DEFINE(HAVE_W32_SYSTEM,1,
+ [Defined if we run on any kind of W32 API based system])
+ ACSUBST
fi
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
- 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
AM_CONDITIONAL(HAVE_W32CE_SYSTEM, test "$have_w32ce_system" = yes)
+
AM_CONDITIONAL(BUILD_W32_GLIB, test "$build_w32_glib" = yes)
AM_CONDITIONAL(BUILD_W32_QT, test "$build_w32_qt" = yes)
esac
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.
if test "$GCC" = yes; then
# Generate values for the DLL version info
if test "$have_w32_system" = yes; then
BUILD_TIMESTAMP=`date --iso-8601=minutes`
- changequote(,)dnl
+ changequote(,)dnl
BUILD_FILEVERSION=`echo "$VERSION" | sed 's/\([0-9.]*\).*/\1./;s/\./,/g'`
changequote([,])dnl
BUILD_FILEVERSION="${BUILD_FILEVERSION}${BUILD_REVISION}"
AH_BOTTOM([
/* Definition of GCC specific attributes. */
-#if __GNUC__ > 2
+#if __GNUC__ > 2
# define GPGME_GCC_A_PURE __attribute__ ((__pure__))
#else
# define GPGME_GCC_A_PURE
])
-# Substitution used for gpgme-config
+# Substitution used for gpgme-config
GPGME_CONFIG_LIBS="-lgpgme"
GPGME_CONFIG_CFLAGS=""
AC_SUBST(GPGME_CONFIG_API_VERSION)
#
-# Create config files
+# Create config files
AC_CONFIG_FILES(Makefile src/Makefile
- tests/Makefile
+ tests/Makefile
tests/gpg/Makefile
tests/gpgsm/Makefile
tests/opassuan/Makefile
+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>
* extra-stati.h: New.
(is_socket): Remove function.
(_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Remove some dead code.
(_gpgme_io_spawn): Translate handles before DuplicateHandle them.
-
+
2011-02-02 Marcus Brinkmann <mb@g10code.com>
* w32-util.c (mkstemp): Don't use CreateFile instead of open (the
* 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
unlimited permission to copy and/or distribute it, with or without
2010 g10 Code GmbH
This file is part of GPGME.
-
+
GPGME 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.
-
+
GPGME 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, see <http://www.gnu.org/licenses/>.
-
+
File: @configure_input@ */
#ifndef GPGME_H
/* Include stdio.h for the FILE type definition. */
#include <stdio.h>
-#ifdef _WIN32
- typedef long off_t;
- typedef long ssize_t;
-#else
-# include <sys/types.h>
-#endif
+@INSERT__TYPEDEFS_FOR_GPGME_H@
#include <time.h>
/* Hash algorithms from libgcrypt. */
typedef enum
{
- GPGME_MD_NONE = 0,
+ GPGME_MD_NONE = 0,
GPGME_MD_MD5 = 1,
GPGME_MD_SHA1 = 2,
GPGME_MD_RMD160 = 3,
GPGME_PROTOCOL_GPGCONF = 2, /* Special code for gpgconf. */
GPGME_PROTOCOL_ASSUAN = 3, /* Low-level access to an Assuan server. */
GPGME_PROTOCOL_G13 = 4,
- GPGME_PROTOCOL_UISERVER= 5,
+ GPGME_PROTOCOL_UISERVER= 5,
GPGME_PROTOCOL_DEFAULT = 254,
GPGME_PROTOCOL_UNKNOWN = 255
}
\f
/* Flags for the audit log functions. */
-#define GPGME_AUDITLOG_HTML 1
+#define GPGME_AUDITLOG_HTML 1
#define GPGME_AUDITLOG_WITH_HELP 128
\f
/* The file name of the engine binary. */
char *file_name;
-
+
/* The version string of the installed engine. */
char *version;
/* Internal to GPGME, do not use. */
unsigned int _unused : 21;
-
+
/* Public key algorithm supported by this subkey. */
gpgme_pubkey_algo_t pubkey_algo;
unsigned int _unused : 30;
/* The validity of the user ID. */
- gpgme_validity_t validity;
+ gpgme_validity_t validity;
/* The user ID string. */
char *uid;
/* The calculated validity. */
char *validity;
-
+
/* Internal to GPGME, do not use. */
char _validity[2];
available GPG_ERR_NO_DATA is returned. */
gpgme_error_t gpgme_op_getauditlog_start (gpgme_ctx_t ctx, gpgme_data_t output,
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);
\f
/* 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);
typedef gpgme_error_t (*gpgme_assuan_inquire_cb_t)
/* Send the Assuan COMMAND and return results via the callbacks.
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,
gpgme_assuan_data_cb_t data_cb,
void *data_cb_value,
/* Send the Assuan COMMAND and return results via the callbacks.
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,
gpgme_assuan_data_cb_t data_cb,
void *data_cb_value,
typedef struct gpgme_conf_opt
{
struct gpgme_conf_opt *next;
-
+
/* The option name. */
char *name;
/* The default value. */
gpgme_conf_arg_t default_value;
char *default_description;
-
+
/* The default value if the option is not set. */
gpgme_conf_arg_t no_arg_value;
char *no_arg_description;
char *description;
/* The program name (an absolute path to the program). */
- char *program_name;
+ char *program_name;
/* A linked list of options for this component. */
struct gpgme_conf_opt *options;
/* Release a set of configurations. */
void gpgme_conf_release (gpgme_conf_comp_t conf);
-
+
/* Retrieve the current configurations. */
gpgme_error_t gpgme_op_conf_load (gpgme_ctx_t ctx, gpgme_conf_comp_t *conf_p);