Bug 1018375 - part 2 - make db/sqlite3/src/ produce a version script for Linux-like OSes; r=glandium

This commit is contained in:
Nathan Froyd
2014-05-30 14:12:51 -04:00
parent 1eacea7286
commit 6d1982eeb6
4 changed files with 134 additions and 2 deletions

View File

@@ -5,6 +5,8 @@
LIB_IS_C_ONLY = 1
include $(topsrcdir)/config/config.mk
ifeq ($(OS_ARCH),WINNT)
DEFFILE = $(CURDIR)/sqlite-processed.def
@@ -20,10 +22,25 @@ sqlite-version.h: sqlite-version.py sqlite3.h
# We have to preprocess our def file because we need different symbols in debug
# builds exposed that are not built in non-debug builds.
$(DEFFILE): sqlite.def
@$(call py_action,preprocessor,$(DEFINES) \
@$(call py_action,preprocessor,$(DEFINES) $(XULPPFLAGS) \
$(srcdir)/sqlite.def -o $(DEFFILE))
export:: sqlite-version.h
else
ifndef MOZ_FOLD_LIBS
ifdef GCC_USE_GNU_LD
GARBAGE += \
$(LD_VERSION_SCRIPT) \
$(NULL)
# Convert to the format we need for ld.
$(LD_VERSION_SCRIPT): $(srcdir)/sqlite.def
@$(call py_action,convert_def_file, \
$(DEFINES) $(ACDEFINES) $(XULPPFLAGS) -o $@ $^)
endif
endif
endif
ifeq (Darwin,$(OS_TARGET))

View File

@@ -74,6 +74,11 @@ if CONFIG['OS_ARCH'] == 'WINNT':
RCFILE = 'sqlite.rc'
RESFILE = 'sqlite.res'
if CONFIG['OS_ARCH'] == 'Linux' and \
not CONFIG['MOZ_FOLD_LIBS'] and \
CONFIG['GCC_USE_GNU_LD']:
LD_VERSION_SCRIPT = 'sqlite-processed.def'
# Suppress warnings in third-party code.
if CONFIG['GNU_CC']:
CFLAGS += [

View File

@@ -126,6 +126,9 @@ EXPORTS
sqlite3_step
sqlite3_stmt_readonly
sqlite3_stmt_status
#ifdef XP_UNIX
sqlite3_temp_directory
#endif
sqlite3_thread_cleanup
sqlite3_total_changes
sqlite3_trace
@@ -151,7 +154,7 @@ EXPORTS
sqlite3_vfs_unregister
sqlite3_vfs_register
sqlite3_vmprintf
#ifdef SQLITE_DEBUG
#ifdef DEBUG
sqlite3_mutex_held
sqlite3_mutex_notheld
#endif