From 076ed00003ef0d94871d9dc070ae42c854a89718 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Sun, 31 Oct 2010 17:11:02 +0000 Subject: [PATCH] add --enable-loadable-sqlite-extensions #10268 --- Misc/NEWS | 2 ++ configure | 19 ++++++++++++++++++- configure.in | 9 +++++++++ setup.py | 6 ++++-- 4 files changed, 33 insertions(+), 3 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index 08da2e67457..5c0acfb04b1 100644 --- 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. diff --git a/configure b/configure index 77b982ec551..9135d4a45d1 100755 --- 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; } diff --git a/configure.in b/configure.in index 24bbddafbf1..56dbd0e165f 100644 --- a/configure.in +++ b/configure.in @@ -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, diff --git a/setup.py b/setup.py index 6cb8a28c0be..d7d482ec776 100644 --- 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