summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNed Deily <nad@acm.org>2012-08-07 10:10:57 (GMT)
committerNed Deily <nad@acm.org>2012-08-07 10:10:57 (GMT)
commit20416a20b75913ba932a801b81bf643bed800520 (patch)
tree07839ceef3fd0a23ace7ee8ad8d7deaf6d5b1ecd
parent0ed05059ded079b1c239187e9cc1bee37cf9bead (diff)
downloadcpython-20416a20b75913ba932a801b81bf643bed800520.zip
cpython-20416a20b75913ba932a801b81bf643bed800520.tar.gz
cpython-20416a20b75913ba932a801b81bf643bed800520.tar.bz2
Issue #15560: Ensure consistent sqlite3 behavior and feature availability
by building a local copy of libsqlite3 with OS X installers rather than depending on the wide range of versions supplied with various OS X releases.
-rwxr-xr-xMac/BuildScript/build-installer.py51
-rw-r--r--Misc/NEWS3
2 files changed, 30 insertions, 24 deletions
diff --git a/Mac/BuildScript/build-installer.py b/Mac/BuildScript/build-installer.py
index a1477d9..ca4c948 100755
--- a/Mac/BuildScript/build-installer.py
+++ b/Mac/BuildScript/build-installer.py
@@ -190,6 +190,8 @@ EXPECTED_SHARED_LIBS = {}
def library_recipes():
result = []
+ LT_10_5 = bool(DEPTARGET < '10.5')
+
result.extend([
dict(
name="XZ 5.0.3",
@@ -235,7 +237,25 @@ def library_recipes():
getVersion(),
),
),
- ])
+ dict(
+ name="SQLite 3.7.13",
+ url="http://www.sqlite.org/sqlite-autoconf-3071300.tar.gz",
+ checksum='c97df403e8a3d5b67bb408fcd6aabd8e',
+ extra_cflags=('-Os '
+ '-DSQLITE_ENABLE_FTS4 '
+ '-DSQLITE_ENABLE_FTS3_PARENTHESIS '
+ '-DSQLITE_ENABLE_RTREE '
+ '-DSQLITE_TCL=0 '
+ '%s' % ('','-DSQLITE_WITHOUT_ZONEMALLOC ')[LT_10_5]),
+ configure_pre=[
+ '--enable-threadsafe',
+ '--enable-shared=no',
+ '--enable-static=yes',
+ '--disable-readline',
+ '--disable-dependency-tracking',
+ ]
+ ),
+ ])
if DEPTARGET < '10.5':
result.extend([
@@ -278,24 +298,6 @@ def library_recipes():
'1a76781a1ea734e831588285db7ec9b1'),
]
),
- dict(
- name="SQLite 3.7.4",
- url="http://www.sqlite.org/sqlite-autoconf-3070400.tar.gz",
- checksum='8f0c690bfb33c3cbbc2471c3d9ba0158',
- configure_env=('CFLAGS="-Os'
- ' -DSQLITE_ENABLE_FTS3'
- ' -DSQLITE_ENABLE_FTS3_PARENTHESIS'
- ' -DSQLITE_ENABLE_RTREE'
- ' -DSQLITE_TCL=0'
- '"'),
- configure_pre=[
- '--enable-threadsafe',
- '--enable-shared=no',
- '--enable-static=yes',
- '--disable-readline',
- '--disable-dependency-tracking',
- ]
- ),
])
if not PYTHON_3:
@@ -779,7 +781,9 @@ def buildRecipe(recipe, basedir, archList):
if recipe.get('useLDFlags', 1):
configure_args.extend([
- "CFLAGS=-mmacosx-version-min=%s -arch %s -isysroot %s -I%s/usr/local/include"%(
+ "CFLAGS=%s-mmacosx-version-min=%s -arch %s -isysroot %s "
+ "-I%s/usr/local/include"%(
+ recipe.get('extra_cflags', ''),
DEPTARGET,
' -arch '.join(archList),
shellQuote(SDKPATH)[1:-1],
@@ -792,7 +796,9 @@ def buildRecipe(recipe, basedir, archList):
])
else:
configure_args.extend([
- "CFLAGS=-mmacosx-version-min=%s -arch %s -isysroot %s -I%s/usr/local/include"%(
+ "CFLAGS=%s-mmacosx-version-min=%s -arch %s -isysroot %s "
+ "-I%s/usr/local/include"%(
+ recipe.get('extra_cflags', ''),
DEPTARGET,
' -arch '.join(archList),
shellQuote(SDKPATH)[1:-1],
@@ -805,9 +811,6 @@ def buildRecipe(recipe, basedir, archList):
configure_args.insert(0, configure)
configure_args = [ shellQuote(a) for a in configure_args ]
- if 'configure_env' in recipe:
- configure_args.insert(0, recipe['configure_env'])
-
print("Running configure for %s"%(name,))
runCommand(' '.join(configure_args) + ' 2>&1')
diff --git a/Misc/NEWS b/Misc/NEWS
index 763fdcf..9b53ce9 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -317,6 +317,9 @@ Build
those shipped with OS X.
- Issue #15560: Fix building _sqlite3 extension on OS X with an SDK.
+ Also, for OS X installers, ensure consistent sqlite3 behavior and feature
+ availability by building a local copy of libsqlite3 rather than
+ depending on the wide range of versions supplied with various OS X releases.
- Issue #8847: Disable COMDAT folding in Windows PGO builds.