]> granicus.if.org Git - python/commitdiff
add --enable-loadable-sqlite-extensions #10268
authorBenjamin Peterson <benjamin@python.org>
Sun, 31 Oct 2010 17:11:02 +0000 (17:11 +0000)
committerBenjamin Peterson <benjamin@python.org>
Sun, 31 Oct 2010 17:11:02 +0000 (17:11 +0000)
Misc/NEWS
configure
configure.in
setup.py

index 08da2e674572f941e4516c1d7993537c07e7720c..5c0acfb04b1766050f0efd13d87622e517395724 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -239,6 +239,8 @@ Tests
 Build
 -----
 
+- Issue #10268: Add a --enable-loadable-sqlite-extensions option to configure.
+
 - Issue #8852: Allow the socket module to build on OpenSolaris.
 
 - Drop -OPT:Olimit compiler option.
index 77b982ec551a99c8f794845294829961f243344d..9135d4a45d19bdd5f74e4e34c45b4ada2cf2afc5 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 85697 .
+# From configure.in Revision: 86042 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.65 for python 3.2.
 #
@@ -739,6 +739,7 @@ with_pydebug
 with_libs
 with_system_expat
 with_system_ffi
+enable_loadable_sqlite_extensions
 with_dbmliborder
 with_signal_module
 with_dec_threads
@@ -1381,6 +1382,8 @@ Optional Features:
                           Build (MacOSX|Darwin) framework
   --enable-shared         disable/enable building shared python library
   --enable-profiling      enable C-level code profiling
+  --enable-loadable-sqlite-extensions
+                          support loadable extensions in _sqlite module
   --enable-ipv6           Enable ipv6 (with ipv4) support
   --disable-ipv6          Disable ipv6 support
   --enable-big-digits[=BITS]
@@ -8141,6 +8144,20 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_system_ffi" >&5
 $as_echo "$with_system_ffi" >&6; }
 
+# Check for support for loadable sqlite extensions
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --enable-loadable-sqlite-extensions" >&5
+$as_echo_n "checking for --enable-loadable-sqlite-extensions... " >&6; }
+# Check whether --enable-loadable-sqlite-extensions was given.
+if test "${enable_loadable_sqlite_extensions+set}" = set; then :
+  enableval=$enable_loadable_sqlite_extensions;
+else
+  enable_loadable_sqlite_extensions="no"
+fi
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_loadable_sqlite_extensions" >&5
+$as_echo "$enable_loadable_sqlite_extensions" >&6; }
+
 # Check for --with-dbmliborder
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-dbmliborder" >&5
 $as_echo_n "checking for --with-dbmliborder... " >&6; }
index 24bbddafbf1d20d61ed44c12efbfb1104ea9e609..56dbd0e165f93875bae8656201fe6d3ed7f40976 100644 (file)
@@ -1956,6 +1956,15 @@ AC_SUBST(LIBFFI_INCLUDEDIR)
 
 AC_MSG_RESULT($with_system_ffi)
 
+# Check for support for loadable sqlite extensions
+AC_MSG_CHECKING(for --enable-loadable-sqlite-extensions)
+AC_ARG_ENABLE(loadable-sqlite-extensions,
+              AS_HELP_STRING([--enable-loadable-sqlite-extensions], [support loadable extensions in _sqlite module]),
+              [],
+              [enable_loadable_sqlite_extensions="no"])
+
+AC_MSG_RESULT($enable_loadable_sqlite_extensions)
+
 # Check for --with-dbmliborder
 AC_MSG_CHECKING(for --with-dbmliborder)
 AC_ARG_WITH(dbmliborder,
index 6cb8a28c0be526e307d787916f11b5f5c7cf6ea0..d7d482ec776fd5a936398ba7ce6834521910913f 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -997,8 +997,10 @@ class PyBuildExt(build_ext):
             else:
                 sqlite_defines.append(('MODULE_NAME', '\\"sqlite3\\"'))
 
-            # Comment this out if you want the sqlite3 module to be able to load extensions.
-            sqlite_defines.append(("SQLITE_OMIT_LOAD_EXTENSION", "1"))
+            # Enable support for loadable extensions in the sqlite3 module
+            # if --enable-loadable-sqlite-extensions configure option is used.
+            if '--enable-loadable-sqlite-extensions' not in sysconfig.get_config_var("CONFIG_ARGS"):
+                sqlite_defines.append(("SQLITE_OMIT_LOAD_EXTENSION", "1"))
 
             if sys.platform == 'darwin':
                 # In every directory on the search path search for a dynamic