michael@0: # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- michael@0: # vim: set filetype=python: michael@0: # This Source Code Form is subject to the terms of the Mozilla Public michael@0: # License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: # file, You can obtain one at http://mozilla.org/MPL/2.0/. michael@0: michael@0: EXPORTS.mozilla.storage += [ michael@0: 'Variant.h', michael@0: 'Variant_inl.h', michael@0: ] michael@0: michael@0: UNIFIED_SOURCES += [ michael@0: 'FileSystemModule.cpp', michael@0: 'mozStorageArgValueArray.cpp', michael@0: 'mozStorageAsyncStatement.cpp', michael@0: 'mozStorageAsyncStatementExecution.cpp', michael@0: 'mozStorageAsyncStatementJSHelper.cpp', michael@0: 'mozStorageAsyncStatementParams.cpp', michael@0: 'mozStorageBindingParamsArray.cpp', michael@0: 'mozStorageError.cpp', michael@0: 'mozStoragePrivateHelpers.cpp', michael@0: 'mozStorageResultSet.cpp', michael@0: 'mozStorageRow.cpp', michael@0: 'mozStorageService.cpp', michael@0: 'mozStorageSQLFunctions.cpp', michael@0: 'mozStorageStatement.cpp', michael@0: 'mozStorageStatementJSHelper.cpp', michael@0: 'mozStorageStatementParams.cpp', michael@0: 'mozStorageStatementRow.cpp', michael@0: 'SQLCollations.cpp', michael@0: 'StorageBaseStatementInternal.cpp', michael@0: 'TelemetryVFS.cpp', michael@0: 'VacuumManager.cpp', michael@0: ] michael@0: michael@0: # These files need to be built separately because they #include variantToSQLiteT_impl.h. michael@0: SOURCES += [ michael@0: 'mozStorageBindingParams.cpp', michael@0: 'mozStorageConnection.cpp', michael@0: ] michael@0: michael@0: FINAL_LIBRARY = 'storagecomps' michael@0: michael@0: # Don't use the jemalloc allocator on Android, because we can't guarantee michael@0: # that Gecko will configure sqlite before it is first used (bug 730495). michael@0: # michael@0: # Don't use the jemalloc allocator when using system sqlite. Linked in libraries michael@0: # (such as NSS) might trigger an initialization of sqlite and allocation michael@0: # of memory using the default allocator, prior to the storage service michael@0: # registering its allocator, causing memory management failures (bug 938730). michael@0: # michael@0: # Note: On Windows our sqlite build assumes we use jemalloc. If you disable michael@0: # MOZ_STORAGE_MEMORY on Windows, you will also need to change the "ifdef michael@0: # MOZ_MEMORY" options in db/sqlite3/src/Makefile.in. michael@0: if CONFIG['MOZ_MEMORY'] and not CONFIG['MOZ_NATIVE_SQLITE']: michael@0: if CONFIG['OS_TARGET'] != 'Android': michael@0: DEFINES['MOZ_STORAGE_MEMORY'] = True michael@0: michael@0: # This is the default value. If we ever change it when compiling sqlite, we michael@0: # will need to change it here as well. michael@0: DEFINES['SQLITE_MAX_LIKE_PATTERN_LENGTH'] = 50000 michael@0: michael@0: LOCAL_INCLUDES += [ michael@0: '/db/sqlite3/src', michael@0: '/dom/base', michael@0: ]