[svn] gpgme - r1496 - in trunk: . contrib contrib/conf-w32ce-msc src

svn author wk cvs at cvs.gnupg.org
Tue Nov 2 17:27:50 CET 2010


Author: wk
Date: 2010-11-02 17:27:46 +0100 (Tue, 02 Nov 2010)
New Revision: 1496

Added:
   trunk/contrib/
   trunk/contrib/ChangeLog
   trunk/contrib/conf-w32ce-msc/
   trunk/contrib/conf-w32ce-msc/build.mk
   trunk/contrib/conf-w32ce-msc/config.h
Modified:
   trunk/ChangeLog
   trunk/autogen.sh
   trunk/configure.ac
   trunk/src/ChangeLog
   trunk/src/Makefile.am
   trunk/src/ath-pthread.c
   trunk/src/ath.c
   trunk/src/ath.h
   trunk/src/data-compat.c
   trunk/src/data-fd.c
   trunk/src/data-mem.c
   trunk/src/data.c
   trunk/src/debug.c
   trunk/src/encrypt-sign.c
   trunk/src/engine-assuan.c
   trunk/src/engine-g13.c
   trunk/src/engine-gpg.c
   trunk/src/engine-gpgconf.c
   trunk/src/engine-gpgsm.c
   trunk/src/engine-uiserver.c
   trunk/src/gpgme.c
   trunk/src/posix-io.c
   trunk/src/posix-sema.c
   trunk/src/priv-io.h
   trunk/src/ttyname_r.c
   trunk/src/util.h
   trunk/src/vfs-create.c
   trunk/src/w32-ce.c
   trunk/src/w32-ce.h
   trunk/src/w32-glib-io.c
   trunk/src/w32-io.c
   trunk/src/w32-sema.c
   trunk/src/w32-util.c
Log:
First take on changes to allow building with MSC for W32CE.
Fixed regression in plain W32 build.


Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/ChangeLog	2010-11-02 16:27:46 UTC (rev 1496)
@@ -1,3 +1,7 @@
+2010-11-02  Werner Koch  <wk at g10code.com>
+
+	* configure.ac (AC_CHECK_HEADERS): Check for sys.time.h.
+
 2010-08-19  Werner Koch  <wk at g10code.com>
 
 	* configure.ac (AH_BOTTOM): Define GPG_ERR_ENABLE_ERRNO_MACROS.

Modified: trunk/src/ChangeLog
===================================================================
--- trunk/src/ChangeLog	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/ChangeLog	2010-11-02 16:27:46 UTC (rev 1496)
@@ -1,5 +1,30 @@
-2010-10-28  Marcus Brinkmann  <marcus.brinkmann at ruhr-uni-bochum.de>
+2010-11-02  Werner Koch  <wk at g10code.com>
 
+	* w32-io.c (handle_to_fd, fd_tohandle): Add.  We need them for W32.
+	* w32-util.c (_WIN32_IE): Define to 0x0400.
+
+	* util.h [W32]: Include windows.h.
+	* w32-sema.c: Do not include windows.h directly.
+	* ath.c (ssize_t, pid_t)[_MSC_VER]: Add new types.
+	* gpgme.c (gpgme_result_ref, gpgme_result_unref): Do not use a
+	void pointer in pointer arithmetic.
+	* w32-util.c: Include util.h prior to ath.h.  Don't include
+	windows.h directly.
+	(F_OK): Define if not defined.
+	* w32-ce.c: Include string.h.
+	(RegQueryValueExA): Use WINAPI modifier to match the declaration.
+	* vfs-create.c: Include string.h because under W32CE with MSC we
+	get a warning related to our strerror replacement.
+	* encrypt-sign.c: Include stdlib.h, string.h and errno.h.
+	* priv-io.h [W32CE]: Include w32-ce.h
+	* w32-ce.h: Include winsock2.h and ws2tcpip.h.
+	(_MSV_VER): Remove useless macro.
+	(pid_t): Add typedef.
+
+	Guard all includes of unistd.h and sys/time.h.
+
+2010-10-28  Marcus Brinkmann  <marcus at g10code.com>
+
 	* opassuan.c (gpgme_op_assuan_transact_ext): Fix uninitialized
 	value use.  Reported by Marc Mutz.
 

Modified: trunk/autogen.sh
===================================================================
--- trunk/autogen.sh	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/autogen.sh	2010-11-02 16:27:46 UTC (rev 1496)
@@ -127,7 +127,7 @@
         fi
     fi
 
-    ./configure --enable-maintainer-mode  --prefix=${w32root}  \
+    $tsdir/configure --enable-maintainer-mode  --prefix=${w32root}  \
             --host=${host} --build=${build} \
             --with-gpg-error-prefix=${w32root} \
             --with-libassuan-prefix=${w32root} "$@"

Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/configure.ac	2010-11-02 16:27:46 UTC (rev 1496)
@@ -774,7 +774,7 @@
 # Replacement functions.
 AC_REPLACE_FUNCS(stpcpy)
 # Check for unistd.h for setenv replacement function.
-AC_CHECK_HEADERS(unistd.h)
+AC_CHECK_HEADERS([unistd.h sys/time.h])
 AC_REPLACE_FUNCS(setenv)
 
 # Assuan check for descriptor passing.

Added: trunk/contrib/ChangeLog
===================================================================
--- trunk/contrib/ChangeLog	                        (rev 0)
+++ trunk/contrib/ChangeLog	2010-11-02 16:27:46 UTC (rev 1496)
@@ -0,0 +1,5 @@
+2010-11-01  Werner Koch  <wk at g10code.com>
+
+	* conf-w32ce-msc/config.h: New.
+	* conf-w32ce-msc/build.mk: New.
+

Added: trunk/contrib/conf-w32ce-msc/build.mk
===================================================================
--- trunk/contrib/conf-w32ce-msc/build.mk	                        (rev 0)
+++ trunk/contrib/conf-w32ce-msc/build.mk	2010-11-02 16:27:46 UTC (rev 1496)
@@ -0,0 +1,253 @@
+# build.mk - Makefile to build libgpg-error using Visual-C
+# Copyright 2010 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
+# 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.
+
+# This is a helper make script to build libgpg-error for WindowsCE
+# using the Microsoft Visual C compiler.  
+
+targetdir = /home/smb/xppro-gnu/src/gpgme/src
+# The target build directory where we run the Visual C compiler/ This
+# needs to be an absolute directory name.  Further we expect this
+# structure of the tree:
+# 
+#   TARGET/src - Source directories:  One directory for each project
+#         /bin - Installed DLLs
+#         /lib - Installed import libs.
+#         /include - Instaled header files.
+
+targetdir = /home/smb/xppro-gnu
+targetsrc = $(targetdir)/src
+
+# Install directories (relative)
+bindir = ../../../bin
+libdir = ../../../lib
+incdir = ../../../include
+
+
+help:
+	@echo "Run "
+	@echo "  make -f ../contrib/conf-w32ce-msc/build.mk copy-source"
+	@echo "on the POSIX system and then"
+	@echo "  nmake -f build.mk all"
+	@echo "  nmake -f build.mk install"
+	@echo "on the Windows system"
+
+ce_defines = -DWINCE -D_WIN32_WCE=0x502 -DUNDER_CE \
+             -DWIN32_PLATFORM_PSPC -D_UNICODE -DUNICODE \
+             -D_CONSOLE -DARM -D_ARM_
+#-D_DEBUG -DDEBUG 
+
+CFLAGS = -nologo -W3 -fp:fast -Os $(ce_defines) \
+         -DHAVE_CONFIG_H -DDLL_EXPORT -D_CRT_SECURE_NO_WARNINGS \
+	 -I. -I$(incdir) -I$(incdir)/gpg-extra
+
+LDFLAGS =
+
+# Standard source files
+sources = \
+	assuan-support.c    \
+	ath-pth.c	    \
+	ath-pthread.c	    \
+	ath.c		    \
+	ath.h		    \
+	context.h	    \
+	conversion.c	    \
+	data-compat.c	    \
+	data-fd.c	    \
+	data-mem.c	    \
+	data-stream.c	    \
+	data-user.c	    \
+	data.c		    \
+	data.h		    \
+	debug.c		    \
+	debug.h		    \
+	decrypt-verify.c    \
+	decrypt.c	    \
+	delete.c	    \
+	dirinfo.c	    \
+	edit.c		    \
+	encrypt-sign.c	    \
+	encrypt.c	    \
+	engine-assuan.c	    \
+	engine-backend.h    \
+	engine-g13.c	    \
+	engine-gpg.c	    \
+	engine-gpgconf.c    \
+	engine-gpgsm.c	    \
+	engine-uiserver.c   \
+	engine.c	    \
+	engine.h	    \
+	error.c		    \
+	export.c	    \
+	funopen.c	    \
+	genkey.c	    \
+	get-env.c	    \
+	getauditlog.c	    \
+	gpgconf.c	    \
+	gpgme-tool.c	    \
+	gpgme-w32spawn.c    \
+	gpgme.c		    \
+	import.c	    \
+	isascii.c	    \
+	kdpipeiodevice.h    \
+	key.c		    \
+	keylist.c	    \
+	memrchr.c	    \
+	op-support.c	    \
+	opassuan.c	    \
+	ops.h		    \
+	passphrase.c	    \
+	passwd.c	    \
+	priv-io.h	    \
+	progress.c	    \
+	putc_unlocked.c	    \
+	sema.h		    \
+	setenv.c	    \
+	sig-notation.c	    \
+	sign.c		    \
+	signers.c	    \
+	stpcpy.c	    \
+	trust-item.c	    \
+	trustlist.c	    \
+	ttyname_r.c	    \
+	util.h		    \
+	vasprintf.c	    \
+	verify.c	    \
+	version.c	    \
+	vfs-create.c	    \
+	vfs-mount.c	    \
+	w32-ce.c	    \
+	w32-ce.h	    \
+	w32-glib-io.c	    \
+	w32-io.c	    \
+	w32-sema.c	    \
+	w32-util.c	    \
+	wait-global.c	    \
+	wait-private.c	    \
+	wait-user.c	    \
+	wait.c		    \
+	wait.h              \
+	gpgme.def
+
+# The object files we need to create from sources.
+objs = \
+	conversion.obj     \
+	get-env.obj  	   \
+	data.obj  	   \
+	data-fd.obj  	   \
+	data-stream.obj    \
+	data-mem.obj  	   \
+	data-user.obj  	   \
+	data-compat.obj    \
+	signers.obj  	   \
+	sig-notation.obj   \
+	wait.obj  	   \
+	wait-global.obj    \
+	wait-private.obj   \
+	wait-user.obj  	   \
+	op-support.obj     \
+	encrypt.obj  	   \
+	encrypt-sign.obj   \
+	decrypt.obj  	   \
+	decrypt-verify.obj \
+	verify.obj  	   \
+	sign.obj  	   \
+	passphrase.obj 	   \
+	progress.obj  	   \
+	key.obj  	   \
+	keylist.obj  	   \
+	trust-item.obj 	   \
+	trustlist.obj  	   \
+	import.obj  	   \
+	export.obj  	   \
+	genkey.obj  	   \
+	delete.obj  	   \
+	edit.obj  	   \
+	getauditlog.obj	   \
+	opassuan.obj  	   \
+	passwd.obj  	   \
+	engine.obj  	   \
+	engine-gpg.obj 	   \
+	engine-gpgsm.obj     \
+	assuan-support.obj   \
+	engine-assuan.obj    \
+	engine-gpgconf.obj   \
+	engine-g13.obj 	   \
+	vfs-mount.obj  	   \
+	vfs-create.obj 	   \
+	gpgconf.obj  	   \
+	w32-ce.obj  	   \
+	w32-util.obj  	   \
+	w32-sema.obj  	   \
+	w32-io.obj  	   \
+	dirinfo.obj  	   \
+	debug.obj  	   \
+	gpgme.obj  	   \
+	version.obj  	   \
+	error.obj  	   \
+	ath.obj  	   \
+	vasprintf.obj  	   \
+	ttyname_r.obj  	   \
+	stpcpy.obj  	   \
+	setenv.obj
+
+
+# Sources files in this directory inclduing this Makefile
+conf_sources = \
+	build.mk \
+	config.h
+
+# Source files built by running the standard build system.
+built_sources = \
+	gpgme.h         \
+	status-table.h
+
+
+copy-static-source:
+	@if [ ! -f ./gpgme.c ]; then \
+           echo "Please cd to the src/ directory first"; \
+	   exit 1; \
+        fi
+	cp -t $(targetsrc)/gpgme/src $(sources);
+	cd ../contrib/conf-w32ce-msc ; \
+            cp -t $(targetsrc)/gpgme/src $(conf_sources)
+
+
+copy-built-source:
+	@if [ ! -f ./gpgme.h ]; then \
+           echo "Please build using ./autogen.sh --build-w32ce first"; \
+	   exit 1; \
+        fi
+	cp -t $(targetsrc)/gpgme/src $(built_sources)
+
+copy-source: copy-static-source copy-built-source
+
+
+.c.obj:
+	$(CC) $(CFLAGS) -c $<
+
+all:  $(sources) $(conf_sources) $(built_sources) $(objs)
+	link    /DLL /IMPLIB:libgpgme-11-msc.lib \
+                /OUT:libgpgme-11-msc.dll \
+		/DEF:gpgme.def /NOLOGO /MANIFEST:NO \
+		/NODEFAULTLIB:"oldnames.lib" /DYNAMICBASE:NO \
+	        $(objs) \
+		$(libdir)/libgpg-error-0-msc.lib \
+		$(libdir)/libassuan-0-msc.lib \
+		coredll.lib corelibc.lib ole32.lib oleaut32.lib uuid.lib \
+		commctrl.lib /subsystem:windowsce,5.02
+
+# Note that we don't need to create the install directories because
+# libgpg-error must have been build and installed prior to this
+# package.
+install: all
+	copy /y gpgme.h $(incdir:/=\)
+	copy /y libgpgme-11-msc.dll $(bindir:/=\)
+	copy /y libgpgme-11-msc.lib $(libdir:/=\)


Property changes on: trunk/contrib/conf-w32ce-msc/build.mk
___________________________________________________________________
Added: svn:executable
   + *

Added: trunk/contrib/conf-w32ce-msc/config.h
===================================================================
--- trunk/contrib/conf-w32ce-msc/config.h	                        (rev 0)
+++ trunk/contrib/conf-w32ce-msc/config.h	2010-11-02 16:27:46 UTC (rev 1496)
@@ -0,0 +1,314 @@
+/* config.h for building with Visual-C for WindowsCE. 
+ * Copyright 2010 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
+ * 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.
+ */
+
+/* This file was originally created by running 
+ *   ./autogen.sh --build-w32ce
+ * on svn revision 1495 (gpgme 1.3.1-svn1495) and then adjusted to work
+ * with Visual-C.
+ */
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "1.3.1-svn1495-msc1"
+
+/* Name of this package */
+#define PACKAGE "gpgme"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT "bug-gpgme at gnupg.org"
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "gpgme"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "gpgme " PACKAGE_VERSION
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "gpgme"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL ""
+
+
+
+/* Whether Assuan support is enabled */
+#define ENABLE_ASSUAN 1
+
+/* Whether G13 support is enabled */
+#define ENABLE_G13 1
+
+/* Whether GPGCONF support is enabled */
+#define ENABLE_GPGCONF 1
+
+/* Whether GPGSM support is enabled */
+#define ENABLE_GPGSM 1
+
+/* Defined if we are building with uiserver support. */
+/* #undef ENABLE_UISERVER */
+
+/* Path to the G13 binary. */
+#define G13_PATH "c:\\gnupg\\g13.exe"
+
+/* Path to the GPGCONF binary. */
+#define GPGCONF_PATH "c:\\gnupg\\gpgconf.exe"
+
+/* version of the libassuan library */
+#define GPGME_LIBASSUAN_VERSION "2.0.2-svn381"
+
+/* Path to the GPGSM binary. */
+#define GPGSM_PATH "c:\\gnupg\\gpgsm.exe"
+
+/* The default error source for GPGME. */
+#define GPG_ERR_SOURCE_DEFAULT GPG_ERR_SOURCE_GPGME
+
+/* Path to the GnuPG binary. */
+#define GPG_PATH "c:\\gnupg\\gpg.exe"
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+/* #undef HAVE_DLFCN_H */
+
+/* Defined if we run on some of the PCDOS like systems (DOS, Windoze. OS/2)
+   with special properties like no file modes */
+#define HAVE_DOSISH_SYSTEM 1
+
+/* Define to 1 if the system has the type `error_t'. */
+/* #undef HAVE_ERROR_T */
+
+/* Define to 1 if you have the `fopencookie' function. */
+/* #undef HAVE_FOPENCOOKIE */
+
+/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
+/* #undef HAVE_FSEEKO */
+
+/* Define to 1 if you have the `funopen' function. */
+/* #undef HAVE_FUNOPEN */
+
+/* Define to 1 if you have the `getegid' function. */
+/* #undef HAVE_GETEGID */
+
+/* Define to 1 if you have the `getenv_r' function. */
+/* #undef HAVE_GETENV_R */
+
+/* Define to 1 if you have the `getgid' function. */
+/* #undef HAVE_GETGID */
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if you have the <locale.h> header file. */
+/* #undef HAVE_LOCALE_H */
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define if we have Pth. */
+/* #undef HAVE_PTH */
+
+/* Define if we have pthread. */
+/* #undef HAVE_PTHREAD */
+
+/* Define to 1 if you have the `setenv' function. */
+/* #undef HAVE_SETENV */
+
+/* Define to 1 if you have the `setlocale' function. */
+/* #undef HAVE_SETLOCALE */
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the `stpcpy' function. */
+/* #undef HAVE_STPCPY */
+
+/* Define to 1 if you have the <strings.h> header file. */
+/* #undef HAVE_STRINGS_H */
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the <sys/select.h> header file. */
+/* #undef HAVE_SYS_SELECT_H */
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+/* #undef HAVE_SYS_STAT_H */
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+/* #undef HAVE_SYS_TYPES_H */
+
+/* Define to 1 if you have the <sys/uio.h> header file. */
+/* #undef HAVE_SYS_UIO_H */
+
+/* Define if getenv() is thread-safe */
+/* #undef HAVE_THREAD_SAFE_GETENV */
+
+/* Define to 1 if you have the `timegm' function. */
+/* #undef HAVE_TIMEGM */
+
+/* Define if __thread is supported */
+/* #define HAVE_TLS 1 */
+
+/* Define to 1 if you have the `ttyname_r' function. */
+/* #undef HAVE_TTYNAME_R */
+
+/* Define to 1 if the system has the type `uintptr_t'. */
+#define HAVE_UINTPTR_T 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+/* #define HAVE_UNISTD_H 1 */
+
+/* Define to 1 if you have the `vasprintf' function. */
+/* #undef HAVE_VASPRINTF */
+
+/* Defined if we run on a W32 CE API based system */
+#define HAVE_W32CE_SYSTEM 1
+
+/* Defined if we run on a W32 API based system */
+#define HAVE_W32_SYSTEM 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+#define LT_OBJDIR ".libs/"
+
+/* used to implement the va_copy macro */
+/* #undef MUST_COPY_VA_BYVAL */
+
+/* Min. needed G13 version. */
+#define NEED_G13_VERSION "2.1.0"
+
+/* Min. needed GPGCONF version. */
+#define NEED_GPGCONF_VERSION "2.0.4"
+
+/* Min. needed GPGSM version. */
+#define NEED_GPGSM_VERSION "1.9.6"
+
+/* Min. needed GnuPG version. */
+#define NEED_GPG_VERSION "1.4.0"
+
+
+/* Separators as used in $PATH.  */
+#ifdef HAVE_DOSISH_SYSTEM
+#define PATHSEP_C ';'
+#else
+#define PATHSEP_C ':'
+#endif
+
+
+/* The size of `unsigned int', as computed by sizeof. */
+#define SIZEOF_UNSIGNED_INT 4
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Defined if descriptor passing is enabled and supported */
+/* #undef USE_DESCRIPTOR_PASSING */
+
+/* Enable extensions on AIX 3, Interix.  */
+#ifndef _ALL_SOURCE
+# define _ALL_SOURCE 1
+#endif
+/* Enable GNU extensions on systems that have them.  */
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE 1
+#endif
+/* Enable threading extensions on Solaris.  */
+#ifndef _POSIX_PTHREAD_SEMANTICS
+# define _POSIX_PTHREAD_SEMANTICS 1
+#endif
+/* Enable extensions on HP NonStop.  */
+#ifndef _TANDEM_SOURCE
+# define _TANDEM_SOURCE 1
+#endif
+/* Enable general extensions on Solaris.  */
+#ifndef __EXTENSIONS__
+# define __EXTENSIONS__ 1
+#endif
+
+
+/* Version of this package */
+#define VERSION PACKAGE_VERSION
+
+/* Number of bits in a file offset, on hosts where this is settable. */
+/* #undef _FILE_OFFSET_BITS */
+
+/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
+/* #undef _LARGEFILE_SOURCE */
+
+/* Define for large files, on AIX-style hosts. */
+/* #undef _LARGE_FILES */
+
+/* Define to 1 if on MINIX. */
+/* #undef _MINIX */
+
+/* Define to 2 if the system does not provide POSIX.1 features except with
+   this defined. */
+/* #undef _POSIX_1_SOURCE */
+
+/* Define to 1 if you need to in order for `stat' and other things to work. */
+/* #undef _POSIX_SOURCE */
+
+/* To allow the use of GPGME in multithreaded programs we have to use
+  special features from the library.
+  IMPORTANT: gpgme is not yet fully reentrant and you should use it
+  only from one thread.  */
+#ifndef _REENTRANT
+# define _REENTRANT 1
+#endif
+
+/* Activate POSIX interface on MacOS X */
+/* #undef _XOPEN_SOURCE */
+
+/* Define to a type to use for `error_t' if it is not otherwise available. */
+#define error_t int
+
+/* Define to `__inline__' or `__inline' if that's what the C compiler
+   calls it, or to nothing if 'inline' is not supported under any name.  */
+#ifndef __cplusplus
+#define inline __inline
+#endif
+
+/* Define to `long int' if <sys/types.h> does not define. */
+/* #undef off_t */
+
+/* Define to the type of an unsigned integer type wide enough to hold a
+   pointer, if such a type exists, and if the system does not define it. */
+/* #undef uintptr_t */
+
+
+/* Definition of GCC specific attributes.  */
+#if __GNUC__ > 2 
+# define GPGME_GCC_A_PURE  __attribute__ ((__pure__))
+#else
+# define GPGME_GCC_A_PURE
+#endif
+
+/* Under WindowsCE we need gpg-error's strerror macro.  */
+#define GPG_ERR_ENABLE_ERRNO_MACROS 1
+
+/* snprintf is not part of oldnames.lib thus we redefine it here. */
+#define snprintf _snprintf
+
+/* We don't want warnings like this:
+
+   warning C4996: e.g. "The POSIX name for this item is
+   deprecated. Instead, use the ISO C++ conformant name: _fileno"
+
+   warning C4018: '<' : signed/unsigned mismatch
+
+   warning C4244: '=' : conversion from 'time_t' to
+                        'unsigned long', possible loss of data
+
+ */
+#pragma warning(disable:4996 4018 4244)
+
+
+

Modified: trunk/src/Makefile.am
===================================================================
--- trunk/src/Makefile.am	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/Makefile.am	2010-11-02 16:27:46 UTC (rev 1496)
@@ -203,7 +203,8 @@
 	$(libgpgme_version_script_cmd) -version-info \
 	@LIBGPGME_LT_CURRENT@:@LIBGPGME_LT_REVISION@:@LIBGPGME_LT_AGE@
 libgpgme_la_DEPENDENCIES = @LTLIBOBJS@ $(srcdir)/libgpgme.vers $(gpgme_deps)
-libgpgme_la_LIBADD = $(gpgme_res) @LIBASSUAN_LIBS@ @LTLIBOBJS@ @GPG_ERROR_LIBS@
+libgpgme_la_LIBADD = $(gpgme_res) @LIBASSUAN_LIBS@ @LTLIBOBJS@ \
+	             @GPG_ERROR_LIBS@
 
 libgpgme_pthread_la_LDFLAGS = $(no_undefined) $(export_symbols) \
 	$(libgpgme_version_script_cmd) -version-info \

Modified: trunk/src/ath-pthread.c
===================================================================
--- trunk/src/ath-pthread.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/ath-pthread.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -24,11 +24,15 @@
 
 #include <stdlib.h>
 #include <errno.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #ifdef HAVE_SYS_SELECT_H
 # include <sys/select.h>
 #else
-# include <sys/time.h>
+# ifdef HAVE_SYS_TIME_H
+#  include <sys/time.h>
+# endif
 #endif
 #include <sys/types.h>
 #include <sys/wait.h>

Modified: trunk/src/ath.c
===================================================================
--- trunk/src/ath.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/ath.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -23,17 +23,26 @@
 #endif
 
 #include <assert.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #ifdef HAVE_SYS_SELECT_H
 # include <sys/select.h>
 #else
-# include <sys/time.h>
+# ifdef HAVE_SYS_TIME_H
+#  include <sys/time.h>
+# endif
 #endif
 #include <sys/types.h>
 #ifndef HAVE_W32_SYSTEM
 #include <sys/wait.h>
 #endif
 
+#ifdef _MSC_VER
+  typedef long ssize_t;
+  typedef int  pid_t;
+#endif
+
 #include "ath.h"
 
 

Modified: trunk/src/ath.h
===================================================================
--- trunk/src/ath.h	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/ath.h	2010-11-02 16:27:46 UTC (rev 1496)
@@ -36,7 +36,9 @@
 # ifdef HAVE_SYS_SELECT_H
 #  include <sys/select.h>
 # else
-#  include <sys/time.h>
+#  ifdef HAVE_SYS_TIME_H
+#   include <sys/time.h>
+#  endif
 # endif
 # include <sys/types.h>
 # include <sys/socket.h>

Modified: trunk/src/data-compat.c
===================================================================
--- trunk/src/data-compat.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/data-compat.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -23,7 +23,9 @@
 #endif
 
 #include <errno.h>
-#include <sys/time.h>
+#ifdef HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
 #include <sys/stat.h>
 #include <stdlib.h>
 

Modified: trunk/src/data-fd.c
===================================================================
--- trunk/src/data-fd.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/data-fd.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -22,7 +22,9 @@
 #include <config.h>
 #endif
 
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #include <sys/types.h>
 
 #include "debug.h"

Modified: trunk/src/data-mem.c
===================================================================
--- trunk/src/data-mem.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/data-mem.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -24,7 +24,9 @@
 
 #include <errno.h>
 #include <stdlib.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #include <assert.h>
 #include <string.h>
 

Modified: trunk/src/data.c
===================================================================
--- trunk/src/data.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/data.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -23,7 +23,9 @@
 #endif
 
 #include <stdlib.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #include <errno.h>
 #include <string.h>
 

Modified: trunk/src/debug.c
===================================================================
--- trunk/src/debug.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/debug.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -26,7 +26,9 @@
 #include <stdlib.h>
 #include <string.h>
 #include <stdarg.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #include <ctype.h>
 #include <errno.h>
 #include <time.h>

Modified: trunk/src/encrypt-sign.c
===================================================================
--- trunk/src/encrypt-sign.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/encrypt-sign.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -22,6 +22,9 @@
 #if HAVE_CONFIG_H
 #include <config.h>
 #endif
+#include <stdlib.h>
+#include <string.h>
+#include <errno.h>
 
 #include "gpgme.h"
 #include "debug.h"

Modified: trunk/src/engine-assuan.c
===================================================================
--- trunk/src/engine-assuan.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/engine-assuan.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -32,7 +32,9 @@
 #include <string.h>
 #include <sys/types.h>
 #include <assert.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #ifdef HAVE_LOCALE_H
 #include <locale.h>
 #endif

Modified: trunk/src/engine-g13.c
===================================================================
--- trunk/src/engine-g13.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/engine-g13.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -27,7 +27,9 @@
 #include <string.h>
 #include <sys/types.h>
 #include <assert.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #ifdef HAVE_LOCALE_H
 #include <locale.h>
 #endif

Modified: trunk/src/engine-gpg.c
===================================================================
--- trunk/src/engine-gpg.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/engine-gpg.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -27,7 +27,9 @@
 #include <string.h>
 #include <assert.h>
 #include <errno.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #ifdef HAVE_LOCALE_H
 #include <locale.h>
 #endif

Modified: trunk/src/engine-gpgconf.c
===================================================================
--- trunk/src/engine-gpgconf.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/engine-gpgconf.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -26,7 +26,9 @@
 #include <string.h>
 #include <sys/types.h>
 #include <assert.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #include <fcntl.h> /* FIXME */
 #include <errno.h>
 

Modified: trunk/src/engine-gpgsm.c
===================================================================
--- trunk/src/engine-gpgsm.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/engine-gpgsm.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -28,7 +28,9 @@
 #include <string.h>
 #include <sys/types.h>
 #include <assert.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #ifdef HAVE_LOCALE_H
 #include <locale.h>
 #endif

Modified: trunk/src/engine-uiserver.c
===================================================================
--- trunk/src/engine-uiserver.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/engine-uiserver.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -31,7 +31,9 @@
 #include <string.h>
 #include <sys/types.h>
 #include <assert.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #include <locale.h>
 #include <fcntl.h> /* FIXME */
 #include <errno.h>

Modified: trunk/src/gpgme.c
===================================================================
--- trunk/src/gpgme.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/gpgme.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -211,7 +211,7 @@
   if (! result)
     return;
 
-  data = result - sizeof (struct ctx_op_data);
+  data = (void*)((char*)result - sizeof (struct ctx_op_data));
 
   assert (data->magic == CTX_OP_DATA_MAGIC);
 
@@ -229,7 +229,7 @@
   if (! result)
     return;
 
-  data = result - sizeof (struct ctx_op_data);
+  data = (void*)((char*)result - sizeof (struct ctx_op_data));
 
   assert (data->magic == CTX_OP_DATA_MAGIC);
 

Modified: trunk/src/posix-io.c
===================================================================
--- trunk/src/posix-io.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/posix-io.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -28,8 +28,12 @@
 #include <errno.h>
 #include <signal.h>
 #include <fcntl.h>
-#include <unistd.h>
-#include <sys/time.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
 #include <sys/types.h>
 #include <sys/wait.h>
 #ifdef HAVE_SYS_UIO_H
@@ -37,7 +41,6 @@
 #endif
 #include <ctype.h>
 #include <sys/resource.h>
-#include <unistd.h>
 
 #include "util.h"
 #include "priv-io.h"

Modified: trunk/src/posix-sema.c
===================================================================
--- trunk/src/posix-sema.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/posix-sema.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -29,8 +29,12 @@
 #include <errno.h>
 #include <signal.h>
 #include <fcntl.h>
-#include <unistd.h>
-#include <sys/time.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
 #include <sys/types.h>
 
 #include "util.h"

Modified: trunk/src/priv-io.h
===================================================================
--- trunk/src/priv-io.h	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/priv-io.h	2010-11-02 16:27:46 UTC (rev 1496)
@@ -23,6 +23,9 @@
 #define IO_H
 
 #ifdef HAVE_W32_SYSTEM
+# ifdef HAVE_W32CE_SYSTEM
+#  include "w32-ce.h"
+# endif
 # include <windows.h>
 #else
 # include <sys/socket.h>

Modified: trunk/src/ttyname_r.c
===================================================================
--- trunk/src/ttyname_r.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/ttyname_r.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -24,10 +24,14 @@
 #include <stdlib.h>
 #include <errno.h>
 #include <string.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 
 
-#warning ttyname is not thread-safe, and ttyname_r is missing
+#ifdef __GNUC__
+# warning ttyname is not thread-safe, and ttyname_r is missing
+#endif
 
 int
 ttyname_r (int fd, char *buf, size_t buflen)

Modified: trunk/src/util.h
===================================================================
--- trunk/src/util.h	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/util.h	2010-11-02 16:27:46 UTC (rev 1496)
@@ -22,8 +22,12 @@
 #ifndef UTIL_H
 #define UTIL_H
 
-#ifdef HAVE_W32CE_SYSTEM
-#include "w32-ce.h"
+#ifdef HAVE_W32_SYSTEM
+# ifdef HAVE_W32CE_SYSTEM
+#  include "w32-ce.h"
+# else
+#  include "windows.h"
+# endif
 #endif
 
 /* For pid_t.  */

Modified: trunk/src/vfs-create.c
===================================================================
--- trunk/src/vfs-create.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/vfs-create.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -23,6 +23,7 @@
 #endif
 
 #include <stdlib.h>
+#include <string.h>
 
 #include "gpgme.h"
 #include "debug.h"

Modified: trunk/src/w32-ce.c
===================================================================
--- trunk/src/w32-ce.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/w32-ce.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -22,6 +22,7 @@
 #include <config.h>
 #endif
 
+#include <string.h>
 #include <errno.h>
 #include <assert.h>
 
@@ -248,7 +249,7 @@
 }
 
 
-LONG
+LONG WINAPI
 RegQueryValueExA (HKEY hKey, LPCSTR lpValueName, LPDWORD lpReserved,
                   LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData)
 {

Modified: trunk/src/w32-ce.h
===================================================================
--- trunk/src/w32-ce.h	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/w32-ce.h	2010-11-02 16:27:46 UTC (rev 1496)
@@ -24,8 +24,12 @@
 #include <time.h>
 #include <stdarg.h>
 
-/* For getaddrinfo.  */
-#define _MSV_VER 0x401
+#ifdef _MSC_VER
+typedef int pid_t;
+#endif
+
+#include <winsock2.h>
+#include <ws2tcpip.h> /* For getaddrinfo.  */
 #include <windows.h>
 
 

Modified: trunk/src/w32-glib-io.c
===================================================================
--- trunk/src/w32-glib-io.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/w32-glib-io.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -28,8 +28,12 @@
 #include <assert.h>
 #include <errno.h>
 #include <fcntl.h>
-#include <unistd.h>
-#include <sys/time.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
 #include <sys/types.h>
 #include <glib.h>
 #include <windows.h>

Modified: trunk/src/w32-io.c
===================================================================
--- trunk/src/w32-io.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/w32-io.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -28,11 +28,14 @@
 #include <assert.h>
 #include <errno.h>
 #include <fcntl.h>
-#include <sys/time.h>
+#ifdef HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
 #include <sys/types.h>
-#include <windows.h>
 #include <io.h>
 
+#include "util.h"
+
 #ifdef HAVE_W32CE_SYSTEM
 #include <assuan.h>
 #include <winioctl.h>
@@ -42,7 +45,6 @@
   CTL_CODE (FILE_DEVICE_STREAMS, 2051, METHOD_BUFFERED, FILE_ANY_ACCESS)
 #endif
 
-#include "util.h"
 #include "sema.h"
 #include "priv-io.h"
 #include "debug.h"
@@ -123,6 +125,8 @@
 
 #define pid_to_handle(a) ((HANDLE)(a))
 #define handle_to_pid(a) ((int)(a))
+#define fd_to_handle(a)  ((HANDLE)(a))
+#define handle_to_fd(a)  ((int)(a))
 
 #define READBUF_SIZE 4096
 #define WRITEBUF_SIZE 4096

Modified: trunk/src/w32-sema.c
===================================================================
--- trunk/src/w32-sema.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/w32-sema.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -28,9 +28,10 @@
 #include <assert.h>
 #include <errno.h>
 #include <fcntl.h>
-#include <sys/time.h>
+#ifdef HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
 #include <sys/types.h>
-#include <windows.h>
 #include <io.h>
 
 #include "util.h"

Modified: trunk/src/w32-util.c
===================================================================
--- trunk/src/w32-util.c	2010-10-28 14:00:14 UTC (rev 1495)
+++ trunk/src/w32-util.c	2010-11-02 16:27:46 UTC (rev 1496)
@@ -29,17 +29,22 @@
 #include <assert.h>
 #include <errno.h>
 #include <stdint.h>
-#include <sys/time.h>
+#ifdef HAVE_SYS_TIME_H
+# include <sys/time.h>
+#endif
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
 #include <fcntl.h>
-#include <windows.h>
-#include <shlobj.h>
 #include <io.h>
 
+#define _WIN32_IE 0x0400 /* Required for SHGetSpecialFolderPathA.  */
+
+#include "util.h"
+#include <shlobj.h>
 #include "ath.h"
-#include "util.h"
 #include "sema.h"
 #include "debug.h"
 
@@ -47,6 +52,9 @@
 #ifndef HAVE_W32CE_SYSTEM
 #define HAVE_ALLOW_SET_FOREGROUND_WINDOW 1
 #endif
+#ifndef F_OK
+# define F_OK 0
+#endif
 
 
 DEFINE_STATIC_LOCK (get_path_lock);





More information about the Gnupg-commits mailing list