Author: brane
Date: Wed May 8 01:52:16 2013
New Revision: 1480149
URL: http://svn.apache.org/r1480149
Log:
Work around a problem on older OS X systems: sqlite3.c includes
<libkern/OSAtomic.h>, which uses 'inline' and thus cannot be compiled
with -std=c89 that we are using for all files.
* subversion/libsvn_subr/sqlite3wrapper.c
(toplevel): Define 'inline' as '__inline__' (which gcc accepts even in c89
mode) during a pre-emptive inclusion of <libkern/OSAtomic.h>.
* subversion/tests/libsvn_wc/wc-queries-test.c
(toplevel): Likewise.
Patch by: mattiase
Modified:
subversion/trunk/subversion/libsvn_subr/sqlite3wrapper.c
subversion/trunk/subversion/tests/libsvn_wc/wc-queries-test.c
Modified: subversion/trunk/subversion/libsvn_subr/sqlite3wrapper.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/sqlite3wrapper.c?rev=1480149&r1=1480148&r2=1480149&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/sqlite3wrapper.c (original)
+++ subversion/trunk/subversion/libsvn_subr/sqlite3wrapper.c Wed May 8
01:52:16 2013
@@ -39,6 +39,17 @@
# pragma GCC diagnostic ignored "-Wshorten-64-to-32"
# endif
# endif
+# ifdef __APPLE__
+# include <Availability.h>
+# if __MAC_OS_X_VERSION_MIN_REQUIRED < 1060
+ /* <libkern/OSAtomic.h> is included on OS X by sqlite3.c, and
+ on old systems (Leopard or older), it cannot be compiled
+ with -std=c89 because it uses inline. This is a work-around. */
+# define inline __inline__
+# include <libkern/OSAtomic.h>
+# undef inline
+# endif
+# endif
# include <sqlite3.c>
# if __GNUC__ > 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ >= 6))
# pragma GCC diagnostic pop
Modified: subversion/trunk/subversion/tests/libsvn_wc/wc-queries-test.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/libsvn_wc/wc-queries-test.c?rev=1480149&r1=1480148&r2=1480149&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/libsvn_wc/wc-queries-test.c (original)
+++ subversion/trunk/subversion/tests/libsvn_wc/wc-queries-test.c Wed May 8
01:52:16 2013
@@ -32,6 +32,17 @@
#ifdef SVN_SQLITE_INLINE
/* Include sqlite3 inline, making all symbols private. */
#define SQLITE_API static
+ #ifdef __APPLE__
+ #include <Availability.h>
+ #if __MAC_OS_X_VERSION_MIN_REQUIRED < 1060
+ /* <libkern/OSAtomic.h> is included on OS X by sqlite3.c, and
+ on old systems (Leopard or older), it cannot be compiled
+ with -std=c89 because it uses inline. This is a work-around. */
+ #define inline __inline__
+ #include <libkern/OSAtomic.h>
+ #undef inline
+ #endif
+ #endif
#include <sqlite3.c>
#else
#include <sqlite3.h>