Page Menu
Home
GnuPG
Search
Configure Global Search
Log In
Files
F36276018
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Size
26 KB
Subscribers
None
View Options
diff --git a/NEWS b/NEWS
index f62a32c..f349b9e 100644
--- a/NEWS
+++ b/NEWS
@@ -1,384 +1,388 @@
+Noteworthy changes in version 2.1.1 (unreleased)
+------------------------------------------------
+
+
Noteworthy changes in version 2.1.0 (2013-02-22)
------------------------------------------------
* Support for the nPth library.
* Add assuan_check_version and two version macros.
* Interface changes relative to the 2.0.3 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ASSUAN_SYSTEM_NPTH_IMPL NEW macro.
ASSUAN_SYSTEM_NPTH NEW macro.
__assuan_read NEW (private).
__assuan_write NEW (private).
__assuan_recvmsg NEW (private).
__assuan_sendmsg NEW (private).
__assuan_waitpid NEW (private).
ASSUAN_VERSION NEW macro.
ASSUAN_VERSION_NUMBER NEW macro.
assuan_check_version NEW.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 2.0.3 (2011-12-20)
------------------------------------------------
* Make assuan_get_pid work correctly for pipe server.
* Interface changes relative to the 2.0.2 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ASSUAN_FORCE_CLOSE NEW.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 2.0.2 (2011-06-16)
------------------------------------------------
* A new flag may now be used to convey comments via assuan_transact.
* A new flag value may now be used to disable logging.
* The gpgcedev.c driver now provides a log device.
* It is now possible to overwrite socket and connect functions in
struct assuan_system_hooks.
* Interface changes relative to the 2.0.1 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ASSUAN_CONVEY_COMMENTS NEW.
ASSUAN_NO_LOGGING NEW.
assuan_system_hooks_t CHANGED: Added socket and connect members.
ASSUAN_SYSTEM_HOOKS_VERSION CHANGED: Bumped to 2.
assuan_register_pre_cmd_notify NEW.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 2.0.1 (2010-08-09)
------------------------------------------------
* Support for WindowsCE.
* Input and output notification handler can now really access the
parsed fd as stated in the manual.
* Cleaned up the logging.
* Interface changes relative to the 2.0.0 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
assuan_free NEW.
_assuan_w32ce_create_pipe NEW.
ASSUAN_LOG_CONTROL NEW.
ASSUAN_NO_LOGGING NEW.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 2.0.0 (2010-01-08)
------------------------------------------------
* Now using libtool and builds a DSO.
* Lots of interface cleanups. See below for details of the most
important changes. Here is a quick note on how to upgrade:
For each invocation of the connect or server functions, allocate a
context with assuan_new and use that. Instead of assuan_disconnect
or assuan_deinit_server, call assuan_release. Use
assuan_set_gpg_err_source instead of assuan_set_assuan_err_source.
If you use assuan_pipe_connect with NAME of NULL, you have to
provide a non-NULL ARGV argument and check that against "server" or
"client" to determine which end you got after fork(). If you use
the assuan sock interface, you must call assuan_sock_init after
setting global context defaults. Add a NULL as the last arg to
assuan_register_command.
* Pth support has changed. This now follows the same style as
libgcrypt by setting system hook callbacks.
* Interface changes relative to the 1.0.5 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_ASSUAN_ONLY_GPG_ERRORS REMOVED
assuan_set_assuan_err_source REMOVED: Use assuan_set_gpg_err_source.
assuan_set_gpg_err_source NEW
assuan_get_gpg_err_source NEW
assuan_strerror REMOVED
ASSUAN_* Error values removed.
assuan_error_t REMOVED
AssuanError REMOVED
assuan_init_connected_socket_server REMOVED
assuan_pipe_connect2 REMOVED
AssuanCommand REMOVED
assuan_flag_t CHANGED: From enum to unsigned int.
ASSUAN_CONTENT REMOVED
assuan_disconnect REMOVED: Use assuan_release.
assuan_deinit_server REMOVED: Use assuan_release.
assuan_get_malloc_hooks NEW
assuan_set_log_cb NEW
assuan_get_log_cb NEW
assuan_new_ext NEW
assuan_new NEW
assuan_release NEW
assuan_init_socket_server CHANGED: Take ctx arg instead of pointer to ctx.
CHANGED: As assuan_init_socket_server_ext was.
assuan_init_socket_server_ext REMOVED
assuan_socket_connect CHANGED: Take ctx arg instead of pointer to ctx.
CHANGED: Is what assuan_socket_connect_ext was.
assuan_socket_connect_ext REMOVED
assuan_pipe_connect CHANGED: Take ctx arg instead of pointer to ctx.
If NAME is NULL, ARGV will contain fork result.
CHANGED: Is now what assuan_pipe_connect_ext was.
CHANGED: Child fds are now assuan_fd_t.
assuan_pipe_connect_ext REMOVED
assuan_init_pipe_server CHANGED: Take ctx arg instead of pointer to ctx.
CHANGED: Swallows fds (are closed at end).
CHANGED: Take assuan_fd_t.
assuan_fdopen NEW
assuan_set_io_hooks REMOVED: Use assuan_system_hooks interface.
assuan_io_hooks_t REMOVED: Use assuan_system_hooks interface.
assuan_io_monitor_t CHANGED: Add a hook data argument.
assuan_get_command_name NEW
assuan_msghdr_t NEW
ASSUAN_INVALID_PID NEW
ASSUAN_NO_FIXSIGNALS NEW
ASSUAN_SYSTEM_HOOKS_VERSION NEW
assuan_system_hooks_t NEW
assuan_set_system_hooks NEW
assuan_ctx_set_system_hooks NEW
ASSUAN_SYSTEM_PTH_IMPL NEW
ASSUAN_SYSTEM_PTH_DECL NEW
ASSUAN_SYSTEM_PTH NEW
assuan_sock_init NEW
assuan_sock_deinit NEW
assuan_handler_t NEW
assuan_register_command CHANGED: Add arg HELP_STRING.
assuan_register_bye_notify CHANGED: Handler gets line and returns err now.
assuan_register_reset_notify CHANGED: Handler gets line and returns err now.
assuan_register_cancel_notify CHANGED: Handler gets line and returns err now.
assuan_register_input_notify CHANGED: Handler returns error now.
assuan_register_output_notify CHANGED: Handler returns error now.
assuan_process_next CHANGED: New DONE argument instead EOF return.
ASSUAN_PIPE_CONNECT_FDPASSING NEW
ASSUAN_PIPE_CONNECT_DETACHED NEW
ASSUAN_SOCKET_SERVER_FDPASSING NEW
ASSUAN_SOCKET_SERVER_ACCEPTED NEW
ASSUAN_SOCKET_CONNECT_FDPASSING NEW
assuan_peercred_t NEW
assuan_get_peercred CHANGED: Return assuan_peercred_t.
assuan_client_read_response NEW
assuan_client_parse_response NEW
assuan_fd_from_posix_fd NEW
ASSUAN_SPAWN_DETACHED NEW
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Noteworthy changes in version 1.0.5 (2008-05-25)
------------------------------------------------
* Minor fixes.
* Build library for GNU/Linux as PIC.
Noteworthy changes in version 1.0.4 (2007-12-12)
------------------------------------------------
* New socket wrapper functions to support Unix domain sockets under
Windows.
* New hook feature to enhance the internal I/O functions.
Noteworthy changes in version 1.0.3 (2007-08-24)
------------------------------------------------
* New type assuan_fd_t and constant ASSUAN_INVALID_FD for better W32
support. It does not change the semantics under Unix. Under W32
all file descriptors are now guaranteed to be system handles.
* New functions assuan_process_done and assuan_inquire_ext to support
external event loops.
* Changed the license of the library code back to LGPLv2.1 to support
a bunch of GPLv2(only) software which does not allow the use of
LGPLv3. Note that this is only a temporary change and authors of
GPLv2(only) software are asked to switch to GPLv3 or to add an
exception which allow the use of LPGLv3 software.
Noteworthy changes in version 1.0.2 (2007-07-05)
------------------------------------------------
* Changed license to LGPLv3.
* New flag ASSUAN_CONFIDENTIAL to return the state of
confidential logging.
* Better support for W32.
* Assorted bug fixed and code cleanups.
Noteworthy changes in version 1.0.1 (2006-11-22)
------------------------------------------------
* New function: assuan_set_io_monitor.
* New function: assuan_register_post_cmd_notify.
* Fixed a memory leak.
Noteworthy changes in version 1.0.0 (2006-10-31)
------------------------------------------------
* Finished the manual.
Noteworthy changes in version 0.9.3 (2006-10-10)
------------------------------------------------
* Portability fixes.
* Pth is not anymore linked by means of weak symbol tricks. It is
now required to link to the pth version of libassuan. New autoconf
macros are provided to to check for this. The pth version is only
build if Pth is available.
* configure does now check that descripotor passing is available. A
way to check at runtime for this is also provided
Noteworthy changes in version 0.9.2 (2006-10-04)
------------------------------------------------
* A fix to make CANCEL work again in Pinentries.
Noteworthy changes in version 0.9.1 (2006-10-04)
------------------------------------------------
* Minor bug fixes
* Portability fixes.
Noteworthy changes in version 0.9.0 (2006-09-14)
------------------------------------------------
* Internal cleanups to make inclusion of the code into libraries
easier.
* Made clear that the software is under the LGPL.
* New function assuan_set_assuan_err_source. All gpg-error enabled
software should call this right at startup to switch libassuan into
the gpg-error style mode. All error codes are then returned as
gpg-error style codes (GPG_ERR_ASS_* as well as others).
If the new macro _ASSUAN_ONLY_GPG_ERRORS is defned all old
definitions are excluded from assuan.h.
* Logging of hex strings is now limited to 16 bytes. To enable
printing of the full data, a new environment variable
ASSUAN_FULL_LOGGING may be set to any value.
* Removed the assuan_domain_* functions.
* New functions assuan_pipe_connect_ext and assuan_socket_connect_ext
to allow connections on a socketpair and to pass descriptors.
* New function assuan_get_peercred.
Noteworthy changes in version 0.6.10 (2005-06-20)
-------------------------------------------------
* New functions assuan_get_flag and assuan_set_flag.
* Add flag ASSUAN_NO_WAITPID.
Noteworthy changes in version 0.6.9 (2004-12-22)
------------------------------------------------
* Ported to W32 based systems.
Noteworthy changes in version 0.6.8 (2004-11-25)
------------------------------------------------
* assuan_write_status does now return an error code.
* Fixes for C89 compatibility and some first takes on a W32 port.
Noteworthy changes in version 0.6.7 (2004-09-27)
------------------------------------------------
* Minor build fixes.
Noteworthy changes in version 0.6.6 (2004-06-08)
------------------------------------------------
* assuan_set_hello_line may now take a multi line argument where the
first lines are send as comment lines and the last one as a OK
line.
Noteworthy changes in version 0.6.5 (2004-04-29)
------------------------------------------------
* Pass the client's pid to a pipe server.
Noteworthy changes in version 0.6.4 (2004-02-20)
------------------------------------------------
* Will now also build on systems not providing funopen or
fopencookie.
* Some smaller build fixes.
Noteworthy changes in version 0.6.3 (2004-01-29)
------------------------------------------------
* Fixed a data corruption bug in assuan_get_data_fp.
* New function assuan_pipe_connect2.
Noteworthy changes in version 0.6.2 (2003-12-18)
------------------------------------------------
* New function assuan_set_assuan_log_prefix to store a log prefix to
be used when no context is available. The existing function
assuan_get_assuan_log_context is not anymore declared as user
overridable.
* Documentation cleanups.
Noteworthy changes in version 0.6.1 (2003-11-17)
------------------------------------------------
* Fixed a bug in assuan_inquire which led to an Invalid_Value error
for large inquiry parameters.
* Fixed a bug in the client socket connect code.
Noteworthy changes in version 0.6.0 (2003-08-06)
------------------------------------------------
* Initial release as a standalone library.
Copyright 2003, 2004, 2006, 2007, 2011,
2013 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 file 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.
diff --git a/configure.ac b/configure.ac
index f1eea1f..67860a7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,444 +1,444 @@
# configure.ac - for libassuan
# Copyright (C) 2001, 2002, 2003, 2006, 2007, 2009,
# 2011, 2012, 2013 Free Software Foundation, Inc.
#
# This file is part of Assuan.
#
# Assuan 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.
#
# Assuan 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/>.
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.61)
min_automake_version="1.10"
# To build a release you need to create a tag with the version number
# (git tag -s libassuan-n.m.k) and run "./autogen.sh --force". Please
# bump the version number immediately after the release and do another
# commit and push so that the git magic is able to work. See below
# for the LT versions.
m4_define(mym4_version_major, [2])
m4_define(mym4_version_minor, [1])
-m4_define(mym4_version_micro, [0])
+m4_define(mym4_version_micro, [1])
# Below is m4 magic to extract and compute the revision number, the
# decimalized short revision number, a beta version string, and a flag
# indicating a development version (mym4_isgit). Note that the m4
# processing is done by autoconf and not during the configure run.
m4_define(mym4_version,
[mym4_version_major.mym4_version_minor.mym4_version_micro])
m4_define([mym4_revision],
m4_esyscmd([git rev-parse --short HEAD | tr -d '\n\r']))
m4_define([mym4_revision_dec],
m4_esyscmd_s([echo $((0x$(echo ]mym4_revision[|head -c 4)))]))
m4_define([mym4_betastring],
m4_esyscmd_s([git describe --match 'libassuan-[0-9].*[0-9]' --long|\
awk -F- '$3!=0{print"-beta"$3}']))
m4_define([mym4_isgit],m4_if(mym4_betastring,[],[no],[yes]))
m4_define([mym4_full_version],[mym4_version[]mym4_betastring])
AC_INIT([libassuan],[mym4_full_version],[http://bugs.gnupg.org])
# LT Version numbers, remember to change them just *before* a release.
# (Code changed: REVISION++)
# (Interfaces added/removed/changed: CURRENT++, REVISION=0)
# (Interfaces added: AGE++)
# (Interfaces removed/changed: AGE=0)
#
LIBASSUAN_LT_CURRENT=4
LIBASSUAN_LT_AGE=4
LIBASSUAN_LT_REVISION=0
# If the API is changed in an incompatible way: increment the next counter.
LIBASSUAN_CONFIG_API_VERSION=2
##############################################
AC_SUBST(LIBASSUAN_LT_CURRENT)
AC_SUBST(LIBASSUAN_LT_AGE)
AC_SUBST(LIBASSUAN_LT_REVISION)
PACKAGE=$PACKAGE_NAME
VERSION=$PACKAGE_VERSION
AM_INIT_AUTOMAKE
AM_MAINTAINER_MODE
AC_CONFIG_SRCDIR(src/assuan.h.in)
AC_CONFIG_MACRO_DIR(m4)
AM_CONFIG_HEADER(config.h)
AC_CANONICAL_HOST
AB_INIT
AC_GNU_SOURCE
AC_SUBST(PACKAGE)
AC_SUBST(VERSION)
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package])
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version of this package])
AC_DEFINE_UNQUOTED(PACKAGE_BUGREPORT, "$PACKAGE_BUGREPORT",[Bug report address])
VERSION_NUMBER=m4_esyscmd(printf "0x%02x%02x%02x" mym4_version_major \
mym4_version_minor mym4_version_micro)
AC_SUBST(VERSION_NUMBER)
# Don't default to build static libs.
LT_PREREQ([2.2.6])
LT_INIT([win32-dll disable-static])
LT_LANG([Windows Resource])
# For now we hardcode the use of version scripts. It would be better
# to write a test for this or even implement this within libtool.
have_ld_version_script=no
case "${host}" in
*-*-linux*)
have_ld_version_script=yes
;;
*-*-gnu*)
have_ld_version_script=yes
;;
*-apple-darwin*)
AC_DEFINE(_XOPEN_SOURCE, 500, Activate POSIX interface on MacOS X)
AC_DEFINE(_DARWIN_C_SOURCE, 1, Activate CMSG_LEN/CMSG_SPACE on MacOS X)
;;
esac
AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_version_script" = "yes")
AH_TOP([
#ifndef _ASSUAN_CONFIG_H_INCLUDED
#define _ASSUAN_CONFIG_H_INCLUDED
/* Enable gpg-error's strerror macro under W32CE. */
#define GPG_ERR_ENABLE_ERRNO_MACROS 1
])
AH_BOTTOM([
#endif /*_ASSUAN_CONFIG_H_INCLUDED*/
])
# Checks for programs.
missing_dir=`cd $ac_aux_dir && pwd`
AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
AC_PROG_AWK
AC_PROG_CC
AC_PROG_CPP
AM_PROG_CC_C_O
if test "x$ac_cv_prog_cc_c89" = "xno" ; then
AC_MSG_ERROR([[No C-89 compiler found]])
fi
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
#AC_ARG_PROGRAM
# We need to compile and run a program on the build machine. A
# comment in libgpg-error says that the AC_PROG_CC_FOR_BUILD macro in
# the AC archive is broken for autoconf 2.57. Given that there is no
# newer version of that macro, we assume that it is also broken for
# autoconf 2.61 and thus we use a simple but usually sufficient
# approach.
AC_MSG_CHECKING(for cc for build)
if test "$cross_compiling" = "yes"; then
CC_FOR_BUILD="${CC_FOR_BUILD-cc}"
else
CC_FOR_BUILD="${CC_FOR_BUILD-$CC}"
fi
AC_MSG_RESULT($CC_FOR_BUILD)
AC_ARG_VAR(CC_FOR_BUILD,[build system C compiler])
if test "$GCC" = yes; then
CFLAGS="$CFLAGS -Wall -Wcast-align -Wshadow -Wstrict-prototypes"
AC_MSG_CHECKING([if gcc supports -Wpointer-arith])
_gcc_cflags_save=$CFLAGS
CFLAGS="-Wpointer-arith"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],_gcc_wopt=yes,_gcc_wopt=no)
AC_MSG_RESULT($_gcc_wopt)
CFLAGS=$_gcc_cflags_save;
if test x"$_gcc_wopt" = xyes ; then
CFLAGS="$CFLAGS -Wpointer-arith"
fi
fi
#
# Options depending on the host OS.
#
have_dosish_system=no
have_w32_system=no
have_w64_system=no
have_w32ce_system=no
case "${host}" in
*-linux*)
if test "$GCC" = yes; then
CFLAGS="$CFLAGS -fPIC -DPIC"
fi
;;
x86_64-*mingw32*)
have_w32_system=yes
have_w64_system=yes
;;
*-mingw32ce*)
have_dosish_system=yes
have_w32_system=yes
have_w32ce_system=yes
;;
*-mingw32*)
have_dosish_system=yes
have_w32_system=yes
;;
*-solaris*)
AC_DEFINE(_XOPEN_SOURCE, 500, Activate extensions on Solaris)
AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Activate extensions on Solaris)
AC_DEFINE(__EXTENSIONS__, 1, Activate extensions on Solaris)
;;
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
(DOS, Windoze. OS/2) with special properties like
no file modes])
fi
if test "$have_w32_system" = yes; then
AC_DEFINE(HAVE_W32_SYSTEM,1,[Defined if we run on a W32 API based system])
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
if test "$have_w32ce_system" = yes; then
AC_DEFINE(HAVE_W32CE_SYSTEM,1,[Defined if we run on WindowsCE])
fi
fi
AM_CONDITIONAL(HAVE_W32_SYSTEM, test "$have_w32_system" = yes)
AM_CONDITIONAL(HAVE_W32CE_SYSTEM, test "$have_w32ce_system" = yes)
AM_CONDITIONAL(HAVE_W64_SYSTEM, test "$have_w64_system" = yes)
#
# Provide information about the build.
#
BUILD_REVISION="mym4_revision"
AC_SUBST(BUILD_REVISION)
AC_DEFINE_UNQUOTED(BUILD_REVISION, "$BUILD_REVISION",
[GIT commit id revision used to build this package])
changequote(,)dnl
BUILD_FILEVERSION=`echo "$VERSION" | sed 's/\([0-9.]*\).*/\1./;s/\./,/g'`
changequote([,])dnl
BUILD_FILEVERSION="${BUILD_FILEVERSION}mym4_revision_dec"
AC_SUBST(BUILD_FILEVERSION)
BUILD_TIMESTAMP=`date -u +%Y-%m-%dT%H:%M+0000 2>/dev/null || date`
AC_SUBST(BUILD_TIMESTAMP)
AC_DEFINE_UNQUOTED(BUILD_TIMESTAMP, "$BUILD_TIMESTAMP",
[The time this package was configured for a build])
#
# Check for network libraries. They are needed for tests.
#
AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB(socket, setsockopt,
[NETLIBS="-lsocket $NETLIBS"]))
AC_SUBST(NETLIBS)
if test "$have_w32_system" = yes; then
if test "$have_w32ce_system" = yes; then
NETLIBS="-lws2 $NETLIBS"
else
# FIXME: Check why we need to use ws2_32 and document that.
NETLIBS="-lws2_32 $NETLIBS"
fi
fi
#
# Provide info for src/libassuan-config.in
#
LIBASSUAN_CONFIG_LIB="-lassuan"
LIBASSUAN_CONFIG_CFLAGS=""
LIBASSUAN_CONFIG_HOST="$host"
LIBASSUAN_CONFIG_EXTRA_LIBS=
if test x"$NETLIBS" != x; then
LIBASSUAN_CONFIG_EXTRA_LIBS="$LIBASSUAN_CONFIG_EXTRA_LIBS $NETLIBS"
fi
AC_SUBST(LIBASSUAN_CONFIG_LIB)
AC_SUBST(LIBASSUAN_CONFIG_CFLAGS)
AC_SUBST(LIBASSUAN_CONFIG_HOST)
AC_SUBST(LIBASSUAN_CONFIG_API_VERSION)
AC_SUBST(LIBASSUAN_CONFIG_EXTRA_LIBS)
#
# Checks for header files.
#
AC_HEADER_STDC
AC_CHECK_HEADERS([string.h locale.h sys/uio.h stdint.h inttypes.h \
sys/types.h sys/stat.h unistd.h sys/time.h fcntl.h \
sys/select.h ])
AC_TYPE_UINTPTR_T
AC_TYPE_UINT16_T
#
# Checks for typedefs, structures, and compiler characteristics.
#
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T
AC_TYPE_SIGNAL
AC_DECL_SYS_SIGLIST
gl_HEADER_SYS_SOCKET
gl_TYPE_SOCKLEN_T
AC_CHECK_MEMBER(struct cmsghdr.cmsg_len,
[use_descriptor_passing=yes],
[use_descriptor_passing=no
AC_MSG_WARN([
***
*** Data structure for sending ancillary data missing.
*** Descriptor passing won't work.
***])],[
#include <stdlib.h>
#include <stddef.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/un.h>
#if HAVE_SYS_UIO_H
#include <sys/uio.h>
#endif
#include <unistd.h>
])
if test "$use_descriptor_passing" = "yes"; then
AC_DEFINE(USE_DESCRIPTOR_PASSING, 1,
[Defined if descriptor passing is supported])
fi
AM_CONDITIONAL(USE_DESCRIPTOR_PASSING, test "$use_descriptor_passing" = "yes")
# Checking for libgpg-error.
AM_PATH_GPG_ERROR(1.8,, AC_MSG_ERROR([libgpg-error was not found]))
#
# Checks for library functions.
#
AC_CHECK_FUNCS([flockfile funlockfile inet_pton])
# On some systems (e.g. Solaris) nanosleep requires linking to librl.
# Given that we use nanosleep only as an optimization over a select
# based wait function we want it only if it is available in libc.
_save_libs="$LIBS"
AC_SEARCH_LIBS([nanosleep], [],
[AC_DEFINE(HAVE_NANOSLEEP,1,
[Define to 1 if you have the `nanosleep' function in libc.])])
LIBS="$_save_libs"
# Check for funopen
AC_CHECK_FUNCS(funopen)
if test $ac_cv_func_funopen != yes; then
# No funopen but we can implement that in terms of fopencookie.
AC_CHECK_FUNCS(fopencookie)
if test $ac_cv_func_fopencookie = yes; then
AC_LIBOBJ([funopen])
else
AC_MSG_WARN([
***
*** No implementation of fopencookie or funopen available.
*** The assuan_get_data_fp function won't work; see the
*** manual for details. GnuPG does not require this feature.
***])
fi
fi
AC_REPLACE_FUNCS(isascii)
AC_REPLACE_FUNCS(putc_unlocked)
AC_REPLACE_FUNCS(memrchr)
AC_REPLACE_FUNCS(stpcpy)
AC_CHECK_HEADERS(unistd.h)
AC_REPLACE_FUNCS(setenv)
AC_REPLACE_FUNCS(vasprintf)
#
# Check for the getsockopt SO_PEERCRED
#
AC_MSG_CHECKING(for SO_PEERCRED)
AC_CACHE_VAL(assuan_cv_sys_so_peercred,
[AC_TRY_COMPILE([#include <sys/socket.h>],
[struct ucred cr;
int cl = sizeof cr;
getsockopt (1, SOL_SOCKET, SO_PEERCRED, &cr, &cl);],
assuan_cv_sys_so_peercred=yes,
assuan_cv_sys_so_peercred=no)
])
AC_MSG_RESULT($assuan_cv_sys_so_peercred)
if test $assuan_cv_sys_so_peercred = yes; then
AC_DEFINE(HAVE_SO_PEERCRED, 1,
[Defined if SO_PEERCRED is supported (Linux specific)])
else
# Check for the getsockopt LOCAL_PEEREID (NetBSD)
AC_MSG_CHECKING(for LOCAL_PEEREID)
AC_CACHE_VAL(assuan_cv_sys_so_local_peereid,
[AC_TRY_COMPILE([#include <sys/socket.>
#include <sys/un.h>],
[struct unpcbid unp;
int unpl = sizeof unp;
getsockopt (1, SOL_SOCKET, LOCAL_PEEREID, &unp, &unpl);],
assuan_cv_sys_so_local_peereid=yes,
assuan_cv_sys_so_local_peereid=no)
])
AC_MSG_RESULT($assuan_cv_sys_so_local_peereid)
if test $assuan_cv_sys_so_local_peereid = yes; then
AC_DEFINE(HAVE_LOCAL_PEEREID, 1,
[Defined if LOCAL_PEEREID is supported (NetBSD specific)])
else
# (Open)Solaris
AC_CHECK_FUNCS([getpeerucred], AC_CHECK_HEADERS([ucred.h]))
if test $ac_cv_func_getpeerucred != yes; then
# FreeBSD
AC_CHECK_FUNCS([getpeereid])
fi
fi
fi
#
# Create the config files.
#
AC_CONFIG_FILES([Makefile])
AC_CONFIG_FILES([m4/Makefile])
AC_CONFIG_FILES([src/Makefile])
AC_CONFIG_FILES([doc/Makefile])
AC_CONFIG_FILES([tests/Makefile])
AC_CONFIG_FILES([src/libassuan-config], [chmod +x src/libassuan-config])
AC_CONFIG_FILES([src/versioninfo.rc])
AC_OUTPUT
echo "
Libassuan v${VERSION} has been configured as follows:
Revision: mym4_revision (mym4_revision_dec)
Platform: $host
"
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sun, Feb 22, 6:37 PM (29 m, 3 s)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
20/8d/95a173fbd11e0f7688890e2aa9f2
Attached To
rA Assuan
Event Timeline
Log In to Comment