INN 2.6.0 release candidate
Julien ÉLIE
julien at trigofacile.com
Sat May 2 10:14:25 UTC 2015
Hi Dennis,
> The current version of darwin is 14.x.y. I would suggest to check the darwin
> version and set the LDFLAGS only for versions below darwin14.
>
> Something like this (which does *not* work!, I'm not familiar with the right
> syntax):
>
> | *darwin[0-9]*|*darwin1[0-3]*)
> | LDFLAGS="$LDFLAGS -multiply_defined suppress"
> | ;;
It should work. I bet your "configure" file (not "configure.ac" file)
was not regenerated. You have to run "./autogen" to regenerate it.
I see that Clang became the only compiler available from Xcode starting
from Mavericks. Isn't that change linked and therefore we should also
do the change for darwin13?
Here is a suggestion, similar to yours:
--- configure.ac (révision 9831)
+++ configure.ac (copie de travail)
@@ -214,8 +214,9 @@
fi
;;
-dnl OSX needs -multiply_defined suppress.
-*darwin*)
+dnl OSX needs "-multiply_defined suppress" before this linker flag became
+dnl obsolete (darwin13 is Mavericks, OS X v10.9).
+*-darwin[0-9].*|*-darwin1[0-2].*)
LDFLAGS="$LDFLAGS -multiply_defined suppress"
;;
> As far as I know, it's not possible to detect whether a typedef was done
> earlier or not. My compiler does not complain when the same typedef is done
> twice. Unfortunately, Apple has change the typedef from
>
> typedef int (*sasl_callback_ft)(void);
>
> to
>
> typedef int (*sasl_callback_ft)();
Here is suggestion of patch that should fix the bug.
The need was in fact to define sasl_callback_ft when it was not defined,
and the first version that defines it is 2.1.25 (not 2.1.24).
--- innfeed/imap_connection.c (révision 9831)
+++ innfeed/imap_connection.c (copie de travail)
@@ -52,8 +52,8 @@
# include <sasl/sasl.h>
# include <sasl/saslplug.h>
# include <sasl/saslutil.h>
-/* For Cyrus SASL versions < 2.1.24. */
-# ifndef sasl_callback_ft
+/* For Cyrus SASL versions < 2.1.25 (in hexadecimal notation below). */
+# if !defined (SASL_VERSION_FULL) || SASL_VERSION_FULL < 0x020119
typedef int (*sasl_callback_ft)(void);
# endif
#endif
Do you confirm everything now works fine with these two patches?
I also see that a few functions from OpenSSL are deprecated in Mac OS X...
One has to install the real OpenSSL package, and not the one shipped with
Mac OS X, based upon Common Crypto.
article.c:81:14: error: 'SSL_get_error' is deprecated: first deprecated in OS X 10.7 [-Werror,-Wdeprecated-declarations]
switch (SSL_get_error(tls_conn, result)) {
^
/usr/include/openssl/ssl.h:1517:5: note: 'SSL_get_error' has been explicitly marked deprecated here
int SSL_get_error(const SSL *s,int ret_code) DEPRECATED_IN_MAC_OS_X_...
^
--
Julien ÉLIE
« Un myope qui lit sur les lèvres entend mieux s'il porte des
lunettes. » (Philippe Geluck)
More information about the inn-workers
mailing list