annotate src/vmime-1-win32.patch @ 641:dab071eac9c0

simplified file markers
author Volker Grabsch <vog@notjusthosting.com>
date Sat, 16 Jan 2010 23:02:02 +0100
parents 6c39b5f524fd
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
641
dab071eac9c0 simplified file markers
Volker Grabsch <vog@notjusthosting.com>
parents: 590
diff changeset
1 This file is part of mingw-cross-env.
dab071eac9c0 simplified file markers
Volker Grabsch <vog@notjusthosting.com>
parents: 590
diff changeset
2 See doc/index.html or doc/README for further information.
474
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
3
577
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
4 diff -urN a/configure.in c/configure.in
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
5 --- libvmime-0.9.0.orig/configure.in 2008-10-19 14:36:08.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
6 +++ libvmime-0.9.0/configure.in 2009-12-04 14:55:17.000000000 +0100
474
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
7 @@ -369,7 +369,7 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
8
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
9 if test "x$conf_tls" = "xyes"; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
10 # -- GNU TLS Library (http://www.gnu.org/software/gnutls/)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
11 - AM_PATH_LIBGNUTLS(1.2.0, have_gnutls=yes, have_gnutls=no)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
12 + PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 1.2.0], have_gnutls=yes, have_gnutls=no)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
13
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
14 if test "x$have_gnutls" = "xyes"; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
15 AM_CONDITIONAL(VMIME_HAVE_TLS_SUPPORT, true)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
16 @@ -524,7 +524,7 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
17
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
18 # -- pthreads (POSIX)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
19
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
20 -ACX_PTHREAD([VMIME_ADDITIONAL_DEFINES="$VMIME_ADDITIONAL_DEFINES HAVE_PTHREAD"])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
21 +AX_PTHREAD([VMIME_ADDITIONAL_DEFINES="$VMIME_ADDITIONAL_DEFINES HAVE_PTHREAD"])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
22
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
23
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
24 if test "x$VMIME_DETECT_PLATFORM" = "xwindows"; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
25 @@ -654,10 +654,10 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
26 AC_TRY_COMPILE(,,echo yes,echo no; EXTRA_CFLAGS="$OLD_EXTRA_CFLAGS")
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
27
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
28 # -ansi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
29 -OLD_EXTRA_CFLAGS="$EXTRA_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
30 -EXTRA_CFLAGS="$EXTRA_CFLAGS -ansi"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
31 -AC_MSG_CHECKING(whether cc accepts -ansi)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
32 -AC_TRY_COMPILE(,,echo yes,echo no; EXTRA_CFLAGS="$OLD_EXTRA_CFLAGS")
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
33 +#OLD_EXTRA_CFLAGS="$EXTRA_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
34 +#EXTRA_CFLAGS="$EXTRA_CFLAGS -ansi"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
35 +#AC_MSG_CHECKING(whether cc accepts -ansi)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
36 +#AC_TRY_COMPILE(,,echo yes,echo no; EXTRA_CFLAGS="$OLD_EXTRA_CFLAGS")
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
37
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
38 # -pedantic
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
39 OLD_EXTRA_CFLAGS="$EXTRA_CFLAGS"
577
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
40 diff -urN a/m4/m4_ax_pthread.m4 c/m4/m4_ax_pthread.m4
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
41 --- libvmime-0.9.0.orig/m4/m4_ax_pthread.m4 1970-01-01 01:00:00.000000000 +0100
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
42 +++ libvmime-0.9.0/m4/m4_ax_pthread.m4 2009-12-04 14:55:17.000000000 +0100
474
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
43 @@ -0,0 +1,272 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
44 +# ===========================================================================
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
45 +# http://www.nongnu.org/autoconf-archive/ax_pthread.html
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
46 +# ===========================================================================
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
47 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
48 +# SYNOPSIS
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
49 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
50 +# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
51 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
52 +# DESCRIPTION
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
53 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
54 +# This macro figures out how to build C programs using POSIX threads. It
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
55 +# sets the PTHREAD_LIBS output variable to the threads library and linker
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
56 +# flags, and the PTHREAD_CFLAGS output variable to any special C compiler
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
57 +# flags that are needed. (The user can also force certain compiler
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
58 +# flags/libs to be tested by setting these environment variables.)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
59 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
60 +# Also sets PTHREAD_CC to any special C compiler that is needed for
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
61 +# multi-threaded programs (defaults to the value of CC otherwise). (This
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
62 +# is necessary on AIX to use the special cc_r compiler alias.)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
63 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
64 +# NOTE: You are assumed to not only compile your program with these flags,
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
65 +# but also link it with them as well. e.g. you should link with
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
66 +# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
67 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
68 +# If you are only building threads programs, you may wish to use these
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
69 +# variables in your default LIBS, CFLAGS, and CC:
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
70 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
71 +# LIBS="$PTHREAD_LIBS $LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
72 +# CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
73 +# CC="$PTHREAD_CC"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
74 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
75 +# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
76 +# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
77 +# (e.g. PTHREAD_CREATE_UNDETACHED on AIX).
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
78 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
79 +# ACTION-IF-FOUND is a list of shell commands to run if a threads library
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
80 +# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
81 +# is not found. If ACTION-IF-FOUND is not specified, the default action
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
82 +# will define HAVE_PTHREAD.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
83 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
84 +# Please let the authors know if this macro fails on any platform, or if
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
85 +# you have any other suggestions or comments. This macro was based on work
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
86 +# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
87 +# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
88 +# Alejandro Forero Cuervo to the autoconf macro repository. We are also
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
89 +# grateful for the helpful feedback of numerous users.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
90 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
91 +# LICENSE
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
92 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
93 +# Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
94 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
95 +# This program is free software: you can redistribute it and/or modify it
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
96 +# under the terms of the GNU General Public License as published by the
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
97 +# Free Software Foundation, either version 3 of the License, or (at your
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
98 +# option) any later version.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
99 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
100 +# This program is distributed in the hope that it will be useful, but
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
101 +# WITHOUT ANY WARRANTY; without even the implied warranty of
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
102 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
103 +# Public License for more details.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
104 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
105 +# You should have received a copy of the GNU General Public License along
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
106 +# with this program. If not, see <http://www.gnu.org/licenses/>.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
107 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
108 +# As a special exception, the respective Autoconf Macro's copyright owner
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
109 +# gives unlimited permission to copy, distribute and modify the configure
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
110 +# scripts that are the output of Autoconf when processing the Macro. You
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
111 +# need not follow the terms of the GNU General Public License when using
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
112 +# or distributing such scripts, even though portions of the text of the
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
113 +# Macro appear in them. The GNU General Public License (GPL) does govern
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
114 +# all other use of the material that constitutes the Autoconf Macro.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
115 +#
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
116 +# This special exception to the GPL applies to versions of the Autoconf
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
117 +# Macro released by the Autoconf Archive. When you make and distribute a
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
118 +# modified version of the Autoconf Macro, you may extend this special
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
119 +# exception to the GPL to apply to your modified version as well.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
120 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
121 +AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
122 +AC_DEFUN([AX_PTHREAD], [
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
123 +AC_REQUIRE([AC_CANONICAL_HOST])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
124 +AC_LANG_SAVE
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
125 +AC_LANG_C
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
126 +ax_pthread_ok=no
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
127 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
128 +# We used to check for pthread.h first, but this fails if pthread.h
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
129 +# requires special compiler flags (e.g. on True64 or Sequent).
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
130 +# It gets checked for in the link test anyway.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
131 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
132 +# First of all, check if the user has set any of the PTHREAD_LIBS,
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
133 +# etcetera environment variables, and if threads linking works using
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
134 +# them:
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
135 +if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
136 + save_CFLAGS="$CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
137 + CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
138 + save_LIBS="$LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
139 + LIBS="$PTHREAD_LIBS $LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
140 + AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
141 + AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
142 + AC_MSG_RESULT($ax_pthread_ok)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
143 + if test x"$ax_pthread_ok" = xno; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
144 + PTHREAD_LIBS=""
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
145 + PTHREAD_CFLAGS=""
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
146 + fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
147 + LIBS="$save_LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
148 + CFLAGS="$save_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
149 +fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
150 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
151 +# We must check for the threads library under a number of different
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
152 +# names; the ordering is very important because some systems
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
153 +# (e.g. DEC) have both -lpthread and -lpthreads, where one of the
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
154 +# libraries is broken (non-POSIX).
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
155 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
156 +# Create a list of thread flags to try. Items starting with a "-" are
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
157 +# C compiler flags, and other items are library names, except for "none"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
158 +# which indicates that we try without any flags at all, and "pthread-config"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
159 +# which is a program returning the flags for the Pth emulation library.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
160 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
161 +ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
162 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
163 +# The ordering *is* (sometimes) important. Some notes on the
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
164 +# individual items follow:
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
165 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
166 +# pthreads: AIX (must check this before -lpthread)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
167 +# none: in case threads are in libc; should be tried before -Kthread and
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
168 +# other compiler flags to prevent continual compiler warnings
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
169 +# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
170 +# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
171 +# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
172 +# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
173 +# -pthreads: Solaris/gcc
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
174 +# -mthreads: Mingw32/gcc, Lynx/gcc
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
175 +# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
176 +# doesn't hurt to check since this sometimes defines pthreads too;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
177 +# also defines -D_REENTRANT)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
178 +# ... -mt is also the pthreads flag for HP/aCC
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
179 +# pthread: Linux, etcetera
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
180 +# --thread-safe: KAI C++
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
181 +# pthread-config: use pthread-config program (for GNU Pth library)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
182 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
183 +case "${host_cpu}-${host_os}" in
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
184 + *solaris*)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
185 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
186 + # On Solaris (at least, for some versions), libc contains stubbed
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
187 + # (non-functional) versions of the pthreads routines, so link-based
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
188 + # tests will erroneously succeed. (We need to link with -pthreads/-mt/
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
189 + # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
190 + # a function called by this macro, so we could check for that, but
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
191 + # who knows whether they'll stub that too in a future libc.) So,
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
192 + # we'll just look for -pthreads and -lpthread first:
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
193 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
194 + ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
195 + ;;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
196 +esac
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
197 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
198 +if test x"$ax_pthread_ok" = xno; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
199 +for flag in $ax_pthread_flags; do
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
200 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
201 + case $flag in
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
202 + none)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
203 + AC_MSG_CHECKING([whether pthreads work without any flags])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
204 + ;;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
205 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
206 + -*)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
207 + AC_MSG_CHECKING([whether pthreads work with $flag])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
208 + PTHREAD_CFLAGS="$flag"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
209 + ;;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
210 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
211 + pthread-config)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
212 + AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
213 + if test x"$ax_pthread_config" = xno; then continue; fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
214 + PTHREAD_CFLAGS="`pthread-config --cflags`"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
215 + PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
216 + ;;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
217 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
218 + *)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
219 + AC_MSG_CHECKING([for the pthreads library -l$flag])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
220 + PTHREAD_LIBS="-l$flag"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
221 + ;;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
222 + esac
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
223 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
224 + save_LIBS="$LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
225 + save_CFLAGS="$CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
226 + LIBS="$PTHREAD_LIBS $LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
227 + CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
228 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
229 + # Check for various functions. We must include pthread.h,
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
230 + # since some functions may be macros. (On the Sequent, we
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
231 + # need a special flag -Kthread to make this header compile.)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
232 + # We check for pthread_join because it is in -lpthread on IRIX
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
233 + # while pthread_create is in libc. We check for pthread_attr_init
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
234 + # due to DEC craziness with -lpthreads. We check for
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
235 + # pthread_cleanup_push because it is one of the few pthread
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
236 + # functions on Solaris that doesn't have a non-functional libc stub.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
237 + # We try pthread_create on general principles.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
238 + AC_TRY_LINK([#include <pthread.h>],
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
239 + [pthread_t th; pthread_join(th, 0);
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
240 + pthread_attr_init(0); pthread_cleanup_push(0, 0);
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
241 + pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
242 + [ax_pthread_ok=yes])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
243 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
244 + LIBS="$save_LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
245 + CFLAGS="$save_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
246 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
247 + AC_MSG_RESULT($ax_pthread_ok)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
248 + if test "x$ax_pthread_ok" = xyes; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
249 + break;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
250 + fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
251 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
252 + PTHREAD_LIBS=""
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
253 + PTHREAD_CFLAGS=""
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
254 +done
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
255 +fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
256 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
257 +# Various other checks:
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
258 +if test "x$ax_pthread_ok" = xyes; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
259 + save_LIBS="$LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
260 + LIBS="$PTHREAD_LIBS $LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
261 + save_CFLAGS="$CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
262 + CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
263 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
264 + # Detect AIX lossage: JOINABLE attribute is called UNDETACHED.
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
265 + AC_MSG_CHECKING([for joinable pthread attribute])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
266 + attr_name=unknown
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
267 + for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
268 + AC_TRY_LINK([#include <pthread.h>], [int attr=$attr; return attr;],
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
269 + [attr_name=$attr; break])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
270 + done
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
271 + AC_MSG_RESULT($attr_name)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
272 + if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
273 + AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name,
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
274 + [Define to necessary symbol if this constant
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
275 + uses a non-standard name on your system.])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
276 + fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
277 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
278 + AC_MSG_CHECKING([if more special flags are required for pthreads])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
279 + flag=no
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
280 + case "${host_cpu}-${host_os}" in
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
281 + *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
282 + *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
283 + esac
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
284 + AC_MSG_RESULT(${flag})
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
285 + if test "x$flag" != xno; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
286 + PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
287 + fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
288 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
289 + LIBS="$save_LIBS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
290 + CFLAGS="$save_CFLAGS"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
291 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
292 + # More AIX lossage: must compile with xlc_r or cc_r
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
293 + if test x"$GCC" != xyes; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
294 + AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC})
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
295 + else
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
296 + PTHREAD_CC=$CC
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
297 + fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
298 +else
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
299 + PTHREAD_CC="$CC"
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
300 +fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
301 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
302 +AC_SUBST(PTHREAD_LIBS)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
303 +AC_SUBST(PTHREAD_CFLAGS)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
304 +AC_SUBST(PTHREAD_CC)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
305 +
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
306 +# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
307 +if test x"$ax_pthread_ok" = xyes; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
308 + ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1])
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
309 + :
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
310 +else
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
311 + ax_pthread_ok=no
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
312 + $2
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
313 +fi
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
314 +AC_LANG_RESTORE
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
315 +])dnl AX_PTHREAD
577
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
316 diff -urN a/SConstruct c/SConstruct
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
317 --- libvmime-0.9.0.orig/SConstruct 2008-10-19 14:27:32.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
318 +++ libvmime-0.9.0/SConstruct 2009-12-04 14:55:17.000000000 +0100
474
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
319 @@ -1620,7 +1620,7 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
320
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
321 if test "x$conf_tls" = "xyes"; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
322 # -- GNU TLS Library (http://www.gnu.org/software/gnutls/)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
323 - AM_PATH_LIBGNUTLS(1.2.0, have_gnutls=yes, have_gnutls=no)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
324 + PKG_CHECK_MODULES([LIBGNUTLS], [gnutls >= 1.2.0], have_gnutls=yes, have_gnutls=no)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
325
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
326 if test "x$have_gnutls" = "xyes"; then
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
327 AM_CONDITIONAL(VMIME_HAVE_TLS_SUPPORT, true)
577
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
328 diff -urN a/src/mailbox.cpp c/src/mailbox.cpp
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
329 --- libvmime-0.9.0.orig/src/mailbox.cpp 2008-10-12 11:03:13.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
330 +++ libvmime-0.9.0/src/mailbox.cpp 2009-12-04 14:56:38.000000000 +0100
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
331 @@ -415,7 +415,7 @@
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
332 bool newLine = true;
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
333
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
334 m_name.encodeAndFold(os, maxLineLength, pos, &pos,
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
335 - forceEncode ? text::FORCE_ENCODING : 0);
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
336 + text::QUOTE_IF_POSSIBLE | (forceEncode ? text::FORCE_ENCODING : 0));
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
337
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
338 if (pos + m_email.length() + 3 > maxLineLength)
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
339 {
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
340 diff -urN a/src/platforms/posix/posixFile.cpp c/src/platforms/posix/posixFile.cpp
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
341 --- libvmime-0.9.0.orig/src/platforms/posix/posixFile.cpp 2008-10-12 11:42:23.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
342 +++ libvmime-0.9.0/src/platforms/posix/posixFile.cpp 2009-12-04 16:00:23.000000000 +0100
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
343 @@ -120,6 +120,8 @@
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
344 {
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
345 if (::write(m_fd, data, count) == -1)
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
346 posixFileSystemFactory::reportError(m_path, errno);
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
347 +
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
348 + m_eof = false;
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
349 }
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
350
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
351
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
352 @@ -166,7 +168,7 @@
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
353 if ((c = ::read(m_fd, data, count)) == -1)
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
354 posixFileSystemFactory::reportError(m_path, errno);
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
355
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
356 - if (c == 0)
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
357 + if (c == 0 && count != 0)
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
358 m_eof = true;
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
359
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
360 return static_cast <size_type>(c);
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
361 diff -urN a/src/platforms/windows/windowsFile.cpp c/src/platforms/windows/windowsFile.cpp
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
362 --- libvmime-0.9.0.orig/src/platforms/windows/windowsFile.cpp 2008-10-12 10:54:31.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
363 +++ libvmime-0.9.0/src/platforms/windows/windowsFile.cpp 2009-12-04 14:55:17.000000000 +0100
474
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
364 @@ -268,7 +268,7 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
365 return true;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
366 }
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
367
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
368 -const windowsFile::length_type windowsFile::getLength()
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
369 +windowsFile::length_type windowsFile::getLength()
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
370 {
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
371 HANDLE hFile = CreateFile(
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
372 m_nativePath.c_str(),
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
373 @@ -464,7 +464,7 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
374 SetFilePointer(m_hFile, 0, NULL, FILE_BEGIN);
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
375 }
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
376
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
377 -const vmime::utility::stream::size_type windowsFileReaderInputStream::read(value_type* const data, const size_type count)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
378 +vmime::utility::stream::size_type windowsFileReaderInputStream::read(value_type* const data, const size_type count)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
379 {
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
380 DWORD dwBytesRead;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
381 if (!ReadFile(m_hFile, (LPVOID)data, (DWORD)count, &dwBytesRead, NULL))
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
382 @@ -472,7 +472,7 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
383 return dwBytesRead;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
384 }
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
385
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
386 -const vmime::utility::stream::size_type windowsFileReaderInputStream::skip(const size_type count)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
387 +vmime::utility::stream::size_type windowsFileReaderInputStream::skip(const size_type count)
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
388 {
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
389 DWORD dwCurPos = SetFilePointer(m_hFile, 0, NULL, FILE_CURRENT);
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
390 DWORD dwNewPos = SetFilePointer(m_hFile, (LONG)count, NULL, FILE_CURRENT);
577
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
391 diff -urN a/src/utility/stringUtils.cpp c/src/utility/stringUtils.cpp
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
392 --- libvmime-0.9.0.orig/src/utility/stringUtils.cpp 2008-10-12 11:11:24.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
393 +++ libvmime-0.9.0/src/utility/stringUtils.cpp 2009-12-04 16:03:36.000000000 +0100
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
394 @@ -142,7 +142,7 @@
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
395 {
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
396 if (parserHelpers::isAscii(*i))
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
397 {
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
398 - if (*i != '=' || *(i + 1) != '?') // To avoid bad behaviour...
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
399 + if (*i != '=' || ((i + 1) != end && *(i + 1) != '?')) // To avoid bad behaviour...
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
400 ++count;
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
401 }
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
402 }
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
403 diff -urN a/src/word.cpp c/src/word.cpp
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
404 --- libvmime-0.9.0.orig/src/word.cpp 2008-10-12 15:45:39.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
405 +++ libvmime-0.9.0/src/word.cpp 2009-12-04 14:56:38.000000000 +0100
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
406 @@ -352,10 +352,22 @@
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
407 noEncoding = false;
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
408 }
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
409
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
410 - if (noEncoding)
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
411 + // If possible and requested (with flag), quote the buffer (no folding is performed).
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
412 + // Quoting is possible if and only if:
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
413 + // - the whole buffer is ASCII-only
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
414 + // - the buffer does not contain quoting character (")
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
415 + // - there is enough remaining space on the current line to hold the whole buffer
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
416 + if ((flags & text::QUOTE_IF_POSSIBLE) &&
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
417 + asciiCount == m_buffer.length() &&
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
418 + m_buffer.find('"') == string::npos &&
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
419 + (curLineLength + 2 /* 2 x " */ + m_buffer.length()) < maxLineLength)
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
420 + {
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
421 + os << '"' << m_buffer << '"';
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
422 + curLineLength += 2 + m_buffer.length();
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
423 + }
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
424 + // We will fold lines without encoding them.
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
425 + else if (noEncoding)
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
426 {
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
427 - // We will fold lines without encoding them.
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
428 -
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
429 string::const_iterator lastWSpos = m_buffer.end(); // last white-space position
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
430 string::const_iterator curLineStart = m_buffer.begin(); // current line start
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
431
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
432 diff -urN a/vmime/platforms/windows/windowsFile.hpp c/vmime/platforms/windows/windowsFile.hpp
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
433 --- libvmime-0.9.0.orig/vmime/platforms/windows/windowsFile.hpp 2008-10-12 10:54:33.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
434 +++ libvmime-0.9.0/vmime/platforms/windows/windowsFile.hpp 2009-12-04 14:55:17.000000000 +0100
474
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
435 @@ -73,7 +73,7 @@
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
436 bool canRead() const;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
437 bool canWrite() const;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
438
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
439 - const length_type getLength();
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
440 + length_type getLength();
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
441
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
442 const path& getFullPath() const;
624e75610f23 new package: vmime (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents:
diff changeset
443
577
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
444 diff -urN a/vmime/text.hpp c/vmime/text.hpp
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
445 --- libvmime-0.9.0.orig/vmime/text.hpp 2008-10-12 10:54:34.000000000 +0200
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
446 +++ libvmime-0.9.0/vmime/text.hpp 2009-12-04 14:56:38.000000000 +0100
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
447 @@ -197,7 +197,8 @@
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
448
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
449 FORCE_NO_ENCODING = (1 << 0), /**< Just fold lines, don't encode them. */
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
450 FORCE_ENCODING = (1 << 1), /**< Encode lines even if they are plain ASCII text. */
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
451 - NO_NEW_LINE_SEQUENCE = (1 << 2) /**< Use CRLF instead of new-line sequence (CRLF + TAB). */
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
452 + NO_NEW_LINE_SEQUENCE = (1 << 2), /**< Use CRLF instead of new-line sequence (CRLF + TAB). */
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
453 + QUOTE_IF_POSSIBLE = (1 << 3) /**< Use quoting instead of encoding when possible (even if FORCE_ENCODING is specified). */
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
454 };
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
455
e8df86a739e2 include bugfixes for package vmime which are advertised on the vmime.org website (by Mark Brand)
Volker Grabsch <vog@notjusthosting.com>
parents: 474
diff changeset
456 /** Encode and fold text in respect to RFC-2047.
590
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
457 --- libvmime-0.9.0.orig/src/messageBuilder.cpp 2009-11-12 11:27:52.000000000 +0100
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
458 +++ libvmime-0.9.0/src/messageBuilder.cpp 2009-12-11 14:21:31.000000000 +0100
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
459 @@ -54,11 +54,15 @@
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
460 if (m_from.isEmpty())
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
461 throw exceptions::no_expeditor();
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
462
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
463 - if (m_to.isEmpty() || m_to.getAddressAt(0)->isEmpty())
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
464 + if ((m_to.isEmpty() || m_to.getAddressAt(0)->isEmpty()) &&
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
465 + (m_cc.isEmpty() || m_cc.getAddressAt(0)->isEmpty()) &&
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
466 + (m_bcc.isEmpty() || m_bcc.getAddressAt(0)->isEmpty()))
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
467 throw exceptions::no_recipient();
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
468
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
469 msg->getHeader()->From()->setValue(m_from);
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
470 - msg->getHeader()->To()->setValue(m_to);
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
471 +
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
472 + if (!m_to.isEmpty())
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
473 + msg->getHeader()->To()->setValue(m_to);
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
474
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
475 if (!m_cc.isEmpty())
6c39b5f524fd optional To recipients list in package vmime
Mark Brand <mabrand@mabrand.nl>
parents: 577
diff changeset
476 msg->getHeader()->Cc()->setValue(m_cc);