0
0
mirror of https://github.com/sqlite/sqlite.git synced 2024-11-21 19:29:09 +01:00

Get skeleton auto.def running, but it doesn't really do much except some standard boilerplate stuff.

FossilOrigin-Name: e707634cf755346752bb83b7be5d0c683e39d6e0a497846019323fed31c08b9d
This commit is contained in:
stephan 2024-09-25 01:39:39 +00:00
parent 6219872845
commit f4321fff36
5 changed files with 1356 additions and 97 deletions

944
auto.def
View File

@ -1,10 +1,944 @@
# Initial auto.def created by 'autosetup --init=make'
# Created by migrate-autoconf - fix items marked XXX
use cc
use cc cc-shared cc-lib hwaci-common
set DUMP_DEFINES_FILE defines.list
# Add any user options here
options {
with-tclsh:PATHNAME => {Full pathname of tclsh to use}
with-tcl:DIR => {Directory containing tclConfig.sh}
tcl=1 => {building accessory programs that require TCL-dev}
test-status=0 => {status of tests}
with-wasi-sdk:=/opt/wasi-sdk => {Path to the wasi-dsk}
threadsafe=1 => mutexing
releasemode=0 => {libtool link to release mode}
tempstore=0 => {an in-ram database for temporary tables never,no,yes,always}
editline=0 => {BSD editline support}
readline=1 => {readline support}
with-readline-lib => {readline library}
with-readline-inc => {readline include paths}
with-linenoise:DIR => {}
amalgamation=1 => {Disable the amalgamation and instead build all files separately}
load-extension=1 => {Disable loading of external extensions}
math=1 => {math functions}
json=1 => {JSON functions}
enable-all=0 => {Enable FTS4, FTS5, Geopoly, RTree, Sessions}
enable-memsys5=0 => MEMSYS5
enable-memsys3=0 => MEMSYS3
enable-fts3=0 => {Enable the FTS3 extension}
enable-fts4=0 => {Enable the FTS4 extension}
enable-fts5=0 => {Enable the FTS5 extension}
enable-update-limit=0 => {Enable the UPDATE/DELETE LIMIT clause}
enable-geopoly=0 => {Enable the GEOPOLY extension}
enable-rtree=0 => {Enable the RTREE extension}
enable-session=0 => {Enable the SESSION extension}
enable-gcov=0 => {Enable coverage testing using gcov}
dump-defines=1 => {Dump autosetup defines to $DUMP_DEFINES_FILE}
}
# debug=0 => {debugging & verbose explain}
set srcdir $autosetup(srcdir)
puts "srcdir = $srcdir"
set VERSION [readfile $srcdir/VERSION]
puts "VERSION = $VERSION"
puts "with-wasi-sdk? = [opt-val with-wasi-sdk]"
#
# The build process allows for using a cross-compiler. But the default
# action is to target the same platform that we are running on. The
# configure script needs to discover the following properties of the
# build and target systems:
#
# srcdir
#
# The is the name of the directory that contains the
# "configure" shell script. All source files are
# located relative to this directory.
#
# bindir
#
# The name of the directory where executables should be
# written by the "install" target of the makefile.
#
# program_prefix
#
# Add this prefix to the names of all executables that run
# on the target machine. Default: ""
#
# ENABLE_SHARED
#
# True if shared libraries should be generated.
#
# BUILD_CC
#
# The name of a command that is used to convert C
# source files into executables that run on the build
# platform.
#
# BUILD_CFLAGS
#
# Switches that the build compiler needs in order to construct
# command-line programs.
#
# BUILD_LIBS
#
# Libraries that the build compiler needs in order to construct
# command-line programs.
#
# BUILD_EXEEXT
#
# The filename extension for executables on the build
# platform. "" for Unix and ".exe" for Windows.
#
# TCL_*
#
# Lots of values are read in from the tclConfig.sh script,
# if that script is available. This values are used for
# constructing and installing the TCL extension.
#
# TARGET_READLINE_LIBS
#
# This is the library directives passed to the target linker
# that cause the executable to link against the readline library.
# This might be a switch like "-lreadline" or pathnames of library
# file like "../../src/libreadline.a".
#
# TARGET_READLINE_INC
#
# This variables define the directory that contain header
# files for the readline library. If the compiler is able
# to find <readline.h> on its own, then this can be blank.
#
# TARGET_EXEEXT
#
# The filename extension for executables on the
# target platform. "" for Unix and ".exe" for windows.
#
# This configure.in file is easy to reuse on other projects. Just
# change the argument to AC_INIT. And disable any features that
# you don't need (for example BLT) by erasing or commenting out
# the corresponding code.
#
#set sqlite_version_sanity_check `cat $autosetup(srcdir)/VERSION | tr -d '\n'`
# XXX if test "$PACKAGE_VERSION" != "$sqlite_version_sanity_check" ; then
#user-error "configure script is out of date:
# configure \$PACKAGE_VERSION = $PACKAGE_VERSION
# top level VERSION file = $sqlite_version_sanity_check
#please regen with autoconf"
# XXX fi
#########
# Programs needed
cc-check-progs install
#########
# Enable large file support (if special flags are necessary)
cc-check-lfs
#########
# Check for needed/wanted data types
if {1} {
cc-check-types int8_t int16_t int32_t int64_t intptr_t uint8_t uint16_t uint32_t uint64_t uintptr_t
}
make-config-header config.h
make-template Makefile.in
#########
# Check for needed/wanted headers
cc-check-includes sys/types.h stdlib.h stdint.h inttypes.h malloc.h
#########
# Figure out whether or not we have these functions
#
cc-check-functions fdatasync gmtime_r isnan localtime_r localtime_s malloc_usable_size strchrnul usleep utime pread pread64 pwrite pwrite64
#########
# By default, we use the amalgamation (this may be changed below...)
#
# XXX USE_AMALGAMATION=1
if {0} {
#########
# Figure out all the name of a working tclsh and parameters needed to compile against Tcl.
# The --with-tcl= and/or --with-tclsh= configuration arguments might be useful for this.
#
# XXX AC_ARG_WITH tclsh AS_HELP_STRING([--with-tclsh=PATHNAME],[full pathname of a tclsh to use])
# XXX AC_ARG_WITH tcl AS_HELP_STRING([--with-tcl=DIR],[directory containing (tclConfig.sh)])
# if {![opt-bool tcl]} {
# set use_tcl $enableval
# } else {
# set use_tcl yes
# }
#set original_use_tcl ${use_tcl}
# XXX if test x"${with_tclsh}" == x -a x"${with_tcl}" == x; then
# XXX AC_CHECK_PROGS TCLSH_CMD tclsh8.6 tclsh tclsh9.0 none
#set with_tclsh ${TCLSH_CMD}
# XXX fi
# XXX if test x"${with_tclsh}" != x -a x"${with_tclsh}" != xnone; then
# XXX TCLSH_CMD=${with_tclsh}
#msg-result "using tclsh at \"$TCLSH_CMD\""
# XXX if test x"${use_tcl}" = "xyes"; then
#set with_tcl `${with_tclsh} <${srcdir}/tool/find_tclconfig.tcl`
# XXX if test x"${with_tcl}" != x; then
#msg-result "$TCLSH_CMD recommends the tclConfig.sh at ${with_tcl}"
# XXX else
#msg-result Warning: "$TCLSH_CMD is unable to recommend a tclConfig.sh"
#set use_tcl no
# XXX fi
# XXX fi
# XXX fi
# XXX if test x"${use_tcl}" = "xyes"; then
# XXX if test x"${with_tcl}" != x; then
# XXX if test -r ${with_tcl}/tclConfig.sh; then
# set tclconfig "${with_tcl}/tclConfig.sh"
# XXX else
# XXX for i in tcl8.6 tcl9.0 lib; do
# XXX if test -r ${with_tcl}/$i/tclConfig.sh; then
#set tclconfig ${with_tcl}/$i/tclConfig.sh
# XXX break
# XXX fi
# XXX done
# XXX fi
# XXX if test ! -r "${tclconfig}"; then
#user-error "no tclConfig.sh file found under ${with_tcl}"
# XXX fi
# XXX else
# If we have not yet found a tclConfig.sh file, look in $libdir whic is
# set automatically by autoconf or by the --prefix command-line option.
# See https://sqlite.org/forum/forumpost/e04e693439a22457
#set libdir ${prefix}/lib
# XXX if test -r ${libdir}/tclConfig.sh; then
#set tclconfig ${libdir}/tclConfig.sh
# XXX else
# XXX for i in tcl8.6 tcl9.0 lib; do
# XXX if test -r ${libdir}/$i/tclConfig.sh; then
#set tclconfig ${libdir}/$i/tclConfig.sh
# XXX break
# XXX fi
# XXX done
# XXX fi
# XXX if test ! -r "${tclconfig}"; then
#user-error "cannot find a usable tclConfig.sh file.
# Use --with-tcl=DIR to specify a directory where tclConfig.sh can be found.
# SQLite does not use TCL internally, but TCL is required to build SQLite
# from canonical sources and TCL is required for testing."
# XXX fi
# XXX fi
# msg-result "loading TCL configuration from ${tclconfig}"
# XXX . ${tclconfig}
# XXX autosetup automatically substitutes all define'd values
# In general, simply 'define' the value rather than using a shell
# variable and AC_SUBST.
#
# XXX AC_SUBST TCL_INCLUDE_SPEC
# XXX AC_SUBST TCL_LIB_SPEC
# XXX AC_SUBST TCL_STUB_LIB_SPEC
# There are lots of other configuration variables that are provided by the
# tclConfig.sh file and that could be included here. But as of right now,
# TCL_LIB_SPEC is the only what that the Makefile uses.
# XXX HAVE_TCL=1
# XXX elif test x"${original_use_tcl}" = "xno"; then
# msg-result "unable to run tests because of --disable-tcl"
# XXX HAVE_TCL=0
# XXX else
# msg-result "unable to run tests because no tclConfig.sh file could be located"
# XXX HAVE_TCL=0
# XXX fi
# XXX AC_SUBST HAVE_TCL
# XXX if test x"$TCLSH_CMD" == x; then
# XXX TCLSH_CMD=${TCL_EXEC_PREFIX}/bin/tclsh${TCL_VERSION}
# XXX if test ! -x ${TCLSH_CMD}; then
# set _2 ${TCL_EXEC_PREFIX}/bin/tclsh
# XXX if test ! -x ${TCLSH_CMD_2}; then
# msg-result Warning: "cannot find a usable tclsh at either ${TCLSH_CMD} or ${TCLSH_CMD_2}"
# XXX TCLSH_CMD=none
# XXX else
# XXX TCLSH_CMD=${TCLSH_CMD_2}
# XXX fi
# XXX fi
# XXX fi
# XXX if test "$TCLSH_CMD" = "none"; then
# If we can't find a local tclsh, then building the amalgamation will fail.
# We act as though --disable-amalgamation has been used.
# msg-result Warning: "Warning: can't find tclsh - defaulting to non-amalgamation build."
# XXX USE_AMALGAMATION=0
# XXX TCLSH_CMD="tclsh"
# XXX fi
# XXX AC_SUBST TCLSH_CMD
# XXX AC_ARG_VAR TCLLIBDIR Where to install tcl plugin
# XXX if test "x${TCLLIBDIR+set}" != "xset" ; then
# XXX for i in `echo 'puts stdout $auto_path' | ${TCLSH_CMD}` ; do
# XXX if test -d $i ; then
# XXX TCLLIBDIR=$i
# XXX break
# XXX fi
# XXX done
# XXX TCLLIBDIR="${TCLLIBDIR}/sqlite3"
# XXX fi
}
if {0} {
#########
# Set up options for running tests.
#
if {[opt-bool test-status]} {
set use_vt100 $enableval
} else {
set use_vt100 no
}
# XXX if test $use_vt100 != no; then
# XXX TSTRNNR_OPTS=--status
# XXX else
# XXX TSTRNNR_OPTS=
# XXX fi
# XXX AC_SUBST TSTRNNR_OPTS
}
if {0} {
#########
# Set up an appropriate program prefix
#
# XXX if test "$program_prefix" = "NONE"; then
set program_prefix ""
# XXX fi
# XXX AC_SUBST program_prefix
# XXX VERSION=[`cat $srcdir/VERSION | sed 's/^\([0-9]*\.*[0-9]*\).*/\1/'`]
# msg-result "Version set to $VERSION"
# XXX AC_SUBST VERSION
# XXX RELEASE=`cat $srcdir/VERSION`
# msg-result "Release set to $RELEASE"
# XXX AC_SUBST RELEASE
}
if {0} {
##########
# Handle --with-wasi-sdk=DIR
#
# This must be early because it changes the toolchain.
#
if {[opt-val with-wasi-sdk] ne {}} {
set withval [lindex [opt-val with-wasi-sdk] end]
set with_wasisdk ${withval}
}
msg-checking "Checking for WASI SDK directory..."
# First check to see if --with-tcl was specified.
# XXX if test x"${with_wasi_sdk}" != x ; then
# XXX if ! test -d "${with_wasi_sdk}" ; then
user-error "${with_wasi_sdk} directory doesn't exist"
# XXX fi
msg-result "${with_wasi_sdk}: using wasi-sdk clang, disabling: tcl, CLI shell, DLL"
set use_wasi_sdk yes
# XXX else
set use_wasi_sdk no
# XXX fi
# XXX if test "${use_wasi_sdk}" = "no" ; then
# XXX HAVE_WASI_SDK=""
msg-result "no"
# XXX else
# XXX HAVE_WASI_SDK=1
# Changing --host and --target have no effect here except to possibly
# cause confusion. autoconf has finished processing them by this
# point.
#
# host_alias=wasm32-wasi
# target=wasm32-wasi
#
# Merely changing CC and LD to the wasi-sdk's is enough to get
# sqlite3.o building in WASM format.
# XXX CC="${with_wasi_sdk}/bin/clang"
# XXX LD="${with_wasi_sdk}/bin/wasm-ld"
# XXX RANLIB="${with_wasi_sdk}/bin/llvm-ranlib"
set cross_compiling yes
set enable_threadsafe no
set use_tcl no
set enable_tcl no
# libtool is apparently hard-coded to use gcc for linking DLLs, so
# we disable the DLL build...
set enable_shared no
msg-result "yes"
# XXX fi
# XXX AC_SUBST HAVE_WASI_SDK
}
#########
# Locate a compiler for the build machine. This compiler should
# generate command-line programs that run on the build machine.
#
# XXX if test x"$cross_compiling" = xno; then
# XXX BUILD_CC=$CC
# XXX BUILD_CFLAGS=$CFLAGS
# XXX else
# XXX if test "${BUILD_CC+set}" != set; then
# XXX AC_CHECK_PROGS BUILD_CC gcc cc cl
# XXX fi
# XXX if test "${BUILD_CFLAGS+set}" != set; then
# XXX BUILD_CFLAGS="-g"
# XXX fi
# XXX fi
# XXX AC_SUBST BUILD_CC
##########
# Do we want to support multithreaded use of sqlite
#
if {0} {
if {![opt-bool threadsafe]} {
}
msg-checking "Checking whether to support threadsafe operation..."
# XXX if test "$enable_threadsafe" = "no"; then
# XXX SQLITE_THREADSAFE=0
msg-result "no"
# XXX else
# XXX SQLITE_THREADSAFE=1
msg-result "yes"
# XXX fi
# XXX AC_SUBST SQLITE_THREADSAFE
# XXX if test "$SQLITE_THREADSAFE" = "1"; then
cc-check-function-in-lib pthread_create pthread
cc-check-function-in-lib pthread_mutexattr_init pthread
# XXX fi
}
##########
# Do we want to support release
#
if {[opt-bool releasemode]} {
} else {
set enable_releasemode no
}
if {0} {
msg-checking "Checking whether to support shared library linked as release mode or not..."
# XXX if test "$enable_releasemode" = "no"; then
# XXX ALLOWRELEASE=""
msg-result "no"
# XXX else
# XXX ALLOWRELEASE="-release `cat $srcdir/VERSION`"
msg-result "yes"
# XXX fi
# XXX AC_SUBST ALLOWRELEASE
}
##########
# Do we want temporary databases in memory
#
if {0} {
if {[opt-bool tempstore]} {
} else {
set enable_tempstore no
}
msg-checking "Checking whether to use an in-ram database for temporary tables..."
# XXX case "$enable_tempstore" in
# XXX never )
# XXX TEMP_STORE=0
msg-result "never"
# XXX ;;
# XXX no )
# XXX TEMP_STORE=1
msg-result "no"
# XXX ;;
# XXX yes )
# XXX TEMP_STORE=2
msg-result "yes"
# XXX ;;
# XXX always )
# XXX TEMP_STORE=3
msg-result "always"
# XXX ;;
# XXX * )
# XXX TEMP_STORE=1
msg-result "no"
# XXX ;;
# XXX esac
# XXX AC_SUBST TEMP_STORE
}
if {0} {
###########
# Lots of things are different if we are compiling for Windows using
# the CYGWIN environment. So check for that special case and handle
# things accordingly.
#
msg-checking "Checking if executables have the .exe suffix..."
# XXX if test "$config_BUILD_EXEEXT" = ".exe"; then
# XXX CYGWIN=yes
msg-result "yes"
# XXX else
msg-result "unknown"
# XXX fi
# XXX if test "$CYGWIN" != "yes"; then
# XXX m4_warn([obsolete],
# XXX [AC_CYGWIN is obsolete: use AC_CANONICAL_HOST and check if $host_os
# XXX matches *cygwin*])
# XXX case $host_os in
# XXX *cygwin* ) CYGWIN=yes;;
# XXX * ) CYGWIN=no;;
# XXX esac
# XXX fi
# XXX if test "$CYGWIN" = "yes"; then
# XXX BUILD_EXEEXT=.exe
# XXX else
# XXX BUILD_EXEEXT=$EXEEXT
# XXX fi
# XXX if test x"$cross_compiling" = xno; then
# XXX TARGET_EXEEXT=$BUILD_EXEEXT
# XXX else
# XXX TARGET_EXEEXT=$config_TARGET_EXEEXT
# XXX fi
# XXX if test "$TARGET_EXEEXT" = ".exe"; then
# XXX SQLITE_OS_UNIX=0
# XXX SQLITE_OS_WIN=1
# XXX CFLAGS="$CFLAGS -DSQLITE_OS_WIN=1"
# XXX else
# XXX SQLITE_OS_UNIX=1
# XXX SQLITE_OS_WIN=0
# XXX CFLAGS="$CFLAGS -DSQLITE_OS_UNIX=1"
# XXX fi
# XXX AC_SUBST BUILD_EXEEXT
# XXX AC_SUBST SQLITE_OS_UNIX
# XXX AC_SUBST SQLITE_OS_WIN
# XXX AC_SUBST TARGET_EXEEXT
}
if {0} {
##########
# Figure out what C libraries are required to compile programs
# that use "readline()" library.
#
# XXX TARGET_READLINE_LIBS=""
# XXX TARGET_READLINE_INC=""
# XXX TARGET_HAVE_READLINE=0
# XXX TARGET_HAVE_EDITLINE=0
if {[opt-bool editline]} {
set with_editline $enableval
} else {
set with_editline auto
}
if {![opt-bool readline]} {
set with_readline $enableval
} else {
set with_readline auto
}
# XXX if test x"$with_editline" != xno; then
# XXX sLIBS=$LIBS
# XXX LIBS=""
# XXX TARGET_HAVE_EDITLINE=1
if {[cc-check-function-in-lib readline edit]} {
set with_readline no
} else {
# XXX TARGET_HAVE_EDITLINE=0
}
# XXX TARGET_READLINE_LIBS=$LIBS
# XXX LIBS=$sLIBS
# XXX fi
# XXX if test x"$with_readline" != xno; then
set found "yes"
if {[opt-val with-readline-lib] ne {}} {
set withval [lindex [opt-val with-readline-lib] end]
set with_readline_lib $withval
} else {
set with_readline_lib "auto"
}
# XXX if test "x$with_readline_lib" = xauto; then
# XXX save_LIBS="$LIBS"
# XXX LIBS=""
if {[cc-check-function-in-lib tgetent readline ncurses curses termcap]} {
# XXX term_LIBS="$LIBS"
} else {
# XXX term_LIBS=""
}
if {[cc-check-function-in-lib readline readline]} {
# XXX TARGET_READLINE_LIBS="-lreadline"
} else {
set found "no"
}
# XXX TARGET_READLINE_LIBS="$TARGET_READLINE_LIBS $term_LIBS"
# XXX LIBS="$save_LIBS"
# XXX else
# XXX TARGET_READLINE_LIBS="$with_readline_lib"
# XXX fi
if {[opt-val with-readline-inc] ne {}} {
set withval [lindex [opt-val with-readline-inc] end]
set with_readline_inc $withval
} else {
set with_readline_inc "auto"
}
# XXX if test "x$with_readline_inc" = xauto; then
if {[cc-check-includes readline.h]} {
set found "yes"
} else {
set found "no"
# XXX if test "$cross_compiling" != yes; then
# XXX for dir in /usr /usr/local /usr/local/readline /usr/contrib /mingw; do
# XXX for subdir in include include/readline; do
# XXX AC_CHECK_FILE $dir/$subdir/readline.h found=yes
# XXX if test "$found" = "yes"; then
# XXX TARGET_READLINE_INC="-I$dir/$subdir"
# XXX break
# XXX fi
# XXX done
# XXX test "$found" = "yes" && break
# XXX done
# XXX fi
}
# XXX else
# XXX TARGET_READLINE_INC="$with_readline_inc"
# XXX fi
# XXX if test x"$found" = xno; then
# XXX TARGET_READLINE_LIBS=""
# XXX TARGET_READLINE_INC=""
# XXX TARGET_HAVE_READLINE=0
# XXX else
# XXX TARGET_HAVE_READLINE=1
# XXX fi
# XXX fi
if {[opt-val with-linenoise] ne {}} {
set withval [lindex [opt-val with-linenoise] end]
set with_linenoise $withval
} else {
set with_linenoise "no"
}
# XXX if test "x$with_linenoise" != "xno"; then
# XXX TARGET_HAVE_READLINE=0
# XXX TARGET_HAVE_EDITLINE=0
# XXX TARGET_HAVE_LINENOISE=1
# XXX TARGET_READLINE_INC="-I${with_linenoise}"
# XXX TARGET_READLINE_LIBS="${with_linenoise}/linenoise.c"
# XXX echo "using linenoise source code at ${with_linenoise}"
# XXX else
# XXX TARGET_HAVE_LINENOISE=0
# XXX echo "not using linenoise"
# XXX fi
# XXX AC_SUBST TARGET_READLINE_LIBS
# XXX AC_SUBST TARGET_READLINE_INC
# XXX AC_SUBST TARGET_HAVE_READLINE
# XXX AC_SUBST TARGET_HAVE_EDITLINE
# XXX AC_SUBST TARGET_HAVE_LINENOISE
}
if {0} {
##########
# Figure out what C libraries are required to compile programs
# that use "fdatasync()" function.
#
cc-check-function-in-lib fdatasync rt
}
if {0} {
#########
# check for debug enabled
if {[opt-bool debug]} {
}
msg-checking "Checking build type..."
# XXX if test "${enable_debug}" = "yes" ; then
# XXX TARGET_DEBUG="-DSQLITE_DEBUG=1 -DSQLITE_ENABLE_SELECTTRACE -DSQLITE_ENABLE_WHERETRACE -O0 -Wall"
msg-result "debug"
# XXX else
# XXX TARGET_DEBUG="-DNDEBUG"
msg-result "release"
# XXX fi
# XXX AC_SUBST TARGET_DEBUG
}
if {0} {
#########
# See whether we should use the amalgamation to build
if {![opt-bool amalgamation]} {
}
# XXX if test "${enable_amalgamation}" = "no" ; then
# XXX USE_AMALGAMATION=0
# XXX fi
# XXX AC_SUBST USE_AMALGAMATION
}
if {0} {
#########
# Look for zlib. Only needed by extensions and by the sqlite3.exe shell
cc-check-includes zlib.h
if {[cc-check-function-in-lib deflate z]} {
define HAVE_ZLIB 1; # "-DSQLITE_HAVE_ZLIB=1"
} else {
define HAVE_ZLIB 0; # HAVE_ZLIB=""
}
# XXX AC_SUBST HAVE_ZLIB
}
if {0} {
#########
# See whether we should allow loadable extensions
if {![opt-bool load-extension]} {
} else {
set enable_load_extension yes
}
# XXX if test "${enable_load_extension}" = "yes" ; then
# XXX OPT_FEATURE_FLAGS=""
cc-check-function-in-lib dlopen dl
# XXX else
# XXX OPT_FEATURE_FLAGS="-DSQLITE_OMIT_LOAD_EXTENSION=1"
# XXX fi
}
if {0} {
##########
# Do we want to support math functions
#
if {![opt-bool math]} {
}
msg-checking "Checking whether to support math functions..."
# XXX if test "$enable_math" = "no"; then
msg-result "no"
# XXX else
msg-result "yes"
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_MATH_FUNCTIONS"
cc-check-function-in-lib ceil m
# XXX fi
}
if {0} {
##########
# Do we want to support JSON functions
#
if {![opt-bool json]} {
}
msg-checking "Checking whether to support JSON functions..."
# XXX if test "$enable_json" = "no"; then
msg-result "no"
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_OMIT_JSON"
# XXX else
msg-result "yes"
# XXX fi
}
########
# The --enable-all argument is short-hand to enable
# multiple extensions.
if {[opt-bool enable-all]} {
}
if {0} {
##########
# Do we want to support memsys3 and/or memsys5
#
if {[opt-bool memsys5]} {
}
msg-checking "Checking whether to support MEMSYS5..."
# XXX if test "${enable_memsys5}" = "yes"; then
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_MEMSYS5"
msg-result "yes"
# XXX else
msg-result "no"
# XXX fi
if {[opt-bool memsys3]} {
}
msg-checking "Checking whether to support MEMSYS3..."
# XXX if test "${enable_memsys3}" = "yes" -a "${enable_memsys5}" = "no"; then
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_MEMSYS3"
msg-result "yes"
# XXX else
msg-result "no"
# XXX fi
}
if {0} {
#########
# See whether we should enable Full Text Search extensions
if {[opt-bool fts3]} {
}
msg-checking "Checking whether to support FTS3..."
# XXX if test "${enable_fts3}" = "yes" ; then
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_FTS3"
msg-result "yes"
# XXX else
msg-result "no"
# XXX fi
if {[opt-bool fts4]} {
}
msg-checking "Checking whether to support FTS4..."
# XXX if test "${enable_fts4}" = "yes" -o "${enable_all}" = "yes" ; then
msg-result "yes"
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_FTS4"
cc-check-function-in-lib log m
# XXX else
msg-result "no"
# XXX fi
if {[opt-bool fts5]} {
}
msg-checking "Checking whether to support FTS5..."
# XXX if test "${enable_fts5}" = "yes" -o "${enable_all}" = "yes" ; then
msg-result "yes"
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_FTS5"
cc-check-function-in-lib log m
# XXX else
msg-result "no"
# XXX fi
}
if {0} {
#########
# See whether we should enable the LIMIT clause on UPDATE and DELETE
# statements.
if {[opt-bool update-limit]} {
}
msg-checking "Checking whether to support LIMIT on UPDATE and DELETE statements..."
# XXX if test "${enable_update_limit}" = "yes" ; then
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT"
msg-result "yes"
# XXX else
msg-result "no"
# XXX fi
}
if {0} {
#########
# See whether we should enable GEOPOLY
if {[opt-bool geopoly]} {
set enable_geopoly yes
} else {
set enable_geopoly no
}
msg-checking "Checking whether to support GEOPOLY..."
# XXX if test "${enable_geopoly}" = "yes" -o "${enable_all}" = "yes" ; then
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_GEOPOLY"
set enable_rtree yes
msg-result "yes"
# XXX else
msg-result "no"
# XXX fi
}
if {0} {
#########
# See whether we should enable RTREE
if {[opt-bool rtree]} {
}
msg-checking "Checking whether to support RTREE..."
# XXX if test "${enable_rtree}" = "yes" ; then
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_RTREE"
msg-result "yes"
# XXX else
msg-result "no"
# XXX fi
}
if {0} {
#########
# See whether we should enable the SESSION extension
if {[opt-bool session]} {
}
msg-checking "Checking whether to support SESSION..."
# XXX if test "${enable_session}" = "yes" -o "${enable_all}" = "yes" ; then
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_SESSION"
# XXX OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_PREUPDATE_HOOK"
msg-result "yes"
# XXX else
msg-result "no"
# XXX fi
}
#########
# attempt to duplicate any OMITS and ENABLES into the ${OPT_FEATURE_FLAGS} parameter
# XXX for option in $CFLAGS $CPPFLAGS
# XXX do
# XXX case $option in
# XXX -DSQLITE_OMIT*) OPT_FEATURE_FLAGS="$OPT_FEATURE_FLAGS $option";;
# XXX -DSQLITE_ENABLE*) OPT_FEATURE_FLAGS="$OPT_FEATURE_FLAGS $option";;
# XXX esac
# XXX done
# XXX AC_SUBST OPT_FEATURE_FLAGS
# attempt to remove any OMITS and ENABLES from the $(CFLAGS) parameter
# XXX ac_temp_CFLAGS=""
# XXX for option in $CFLAGS
# XXX do
# XXX case $option in
# XXX -DSQLITE_OMIT*) ;;
# XXX -DSQLITE_ENABLE*) ;;
# XXX *) ac_temp_CFLAGS="$ac_temp_CFLAGS $option";;
# XXX esac
# XXX done
# XXX CFLAGS=$ac_temp_CFLAGS
# attempt to remove any OMITS and ENABLES from the $(CPPFLAGS) parameter
# XXX ac_temp_CPPFLAGS=""
# XXX for option in $CPPFLAGS
# XXX do
# XXX case $option in
# XXX -DSQLITE_OMIT*) ;;
# XXX -DSQLITE_ENABLE*) ;;
# XXX *) ac_temp_CPPFLAGS="$ac_temp_CPPFLAGS $option";;
# XXX esac
# XXX done
# XXX CPPFLAGS=$ac_temp_CPPFLAGS
# attempt to remove any OMITS and ENABLES from the $(BUILD_CFLAGS) parameter
# XXX ac_temp_BUILD_CFLAGS=""
# XXX for option in $BUILD_CFLAGS
# XXX do
# XXX case $option in
# XXX -DSQLITE_OMIT*) ;;
# XXX -DSQLITE_ENABLE*) ;;
# XXX *) ac_temp_BUILD_CFLAGS="$ac_temp_BUILD_CFLAGS $option";;
# XXX esac
# XXX done
# XXX BUILD_CFLAGS=$ac_temp_BUILD_CFLAGS
if {0} {
#########
# See whether we should use GCOV
if {[opt-bool gcov]} {
}
# XXX if test "${use_gcov}" = "yes" ; then
# XXX USE_GCOV=1
# XXX else
# XXX USE_GCOV=0
# XXX fi
# XXX AC_SUBST USE_GCOV
}
if {0} {
#########
# Enable/disabled amalagamation line macros
########
set linemacros 0
# XXX if test "${amalgamation_line_macros}" = "yes" ; then
set linemacros 1
# XXX fi
# XXX if test "${amalgamation_line_macros}" = "no" ; then
set linemacros 0
# XXX fi
# XXX AC_SUBST AMALGAMATION_LINE_MACROS
}
#########
# Output the config header
if {0} {
#########
# Generate the output files.
#
# XXX AC_SUBST BUILD_CFLAGS
make-template Makefile.in
make-template sqlite3.pc.in
make-config-header sqlite_cfg.h
}
if {[opt-bool dump-defines]} {
msg-result "--dump-defines is creating file: $DUMP_DEFINES_FILE"
make-config-header $DUMP_DEFINES_FILE -auto {*}
}

324
autosetup/hwaci-common.tcl Normal file
View File

@ -0,0 +1,324 @@
########################################################################
# 2024 September 25
#
# The author disclaims copyright to this source code. In place of
# a legal notice, here is a blessing:
#
# * May you do good and not evil.
# * May you find forgiveness for yourself and forgive others.
# * May you share freely, never taking more than you give.
#
########################################################################
# Routines for Steve Bennett's autosetup which are common to trees
# managed under the umbrella of the SQLite project.
#
# This file was initially derived from one used in the libfossil
# project, authored by the same person who ported it here (so there's
# no licensing issue despite this code having a twin running around).
########################################################################
array set hwaciCache {} ; # used for caching various results.
########################################################################
# hwaci-lshift shifts $count elements from the list named $listVar and
# returns them.
#
# Modified slightly from: https://wiki.tcl-lang.org/page/lshift
#
# On an empty list, returns "".
proc hwaci-lshift {listVar {count 1}} {
upvar 1 $listVar l
if {![info exists l]} {
# make the error message show the real variable name
error "can't read \"$listVar\": no such variable"
}
if {![llength $l]} {
# error Empty
return ""
}
set r [lrange $l 0 [incr count -1]]
set l [lreplace $l [set l 0] $count]
return $r
}
########################################################################
# A proxy for cc-check-function-in-lib which "undoes" any changes that
# routine makes to the LIBS define. Returns the result of
# cc-check-function-in-lib.
proc hwaci-check-function-in-lib {function libs {otherlibs {}}} {
set _LIBS [get-define LIBS]
set found [cc-check-function-in-lib $function $libs $otherlibs]
define LIBS $_LIBS
return $found
}
########################################################################
# Look for binary named $binName and `define`s $defName to that full
# path, or an empty string if not found. Returns the value it defines.
# This caches the result for a given $binName/$defName combination, so
# calls after the first for a given combination will always return the
# same result.
#
# If defName is empty then "BIN_X" is used, where X is the upper-case
# form of $binName with any '-' characters removed. (TODO: map them to
# "_" instead, but i'll need to fix my affected builds in parallel.)
proc hwaci-bin-define {binName {defName {}}} {
global hwaciCache
set cacheName "$binName:$defName"
set check {}
if {[info exists hwaciCache($cacheName)]} {
set check $hwaciCache($cacheName)
}
msg-checking "Looking for $binName ... "
if {"" ne $check} {
set lbl $check
if {" _ 0 _ " eq $check} {
set lbl "not found"
set check ""
}
msg-result "(cached) $lbl"
return $check
}
set check [find-executable-path $binName]
if {"" eq $check} {
msg-result "not found"
set hwaciCache($cacheName) " _ 0 _ "
} else {
msg-result $check
set hwaciCache($cacheName) $check
}
if {"" eq $defName} {
set defName "BIN_[string toupper [string map {- {}} $binName]]"
}
define $defName $check
return $check
}
########################################################################
# Looks for `bash` binary and dies if not found. On success, defines
# BIN_BASH to the full path to bash and returns that value. We
# _require_ bash because it's the SHELL value used in our makefiles.
proc hwaci-require-bash {} {
set bash [hwaci-bin-define bash]
if {"" eq $bash} {
user-error "Our Makefiles require the bash shell."
}
return $bash
}
########################################################################
# Args: [-v] optName defName {descr {}}
#
# Checks [opt-bool $optName] and does [define $defName X] where X is 0
# for false and 1 for true. descr is an optional [msg-checking]
# argument which defaults to $defName. Returns X.
#
# If args[0] is -v then the boolean semantics are inverted: if
# the option is set, it gets define'd to 0, else 1. Returns the
# define'd value.
proc hwaci-opt-bool-01 {args} {
set invert 0
if {[lindex $args 0] eq "-v"} {
set invert 1
set args [lrange $args 1 end]
}
set optName [hwaci-lshift args]
set defName [hwaci-lshift args]
set descr [hwaci-lshift args]
if {"" eq $descr} {
set descr $defName
}
set rc 0
msg-checking "$descr ... "
if {[opt-bool $optName]} {
if {0 eq $invert} {
set rc 1
} else {
set rc 0
}
} elseif {0 ne $invert} {
set rc 1
}
msg-result $rc
define $defName $rc
return $rc
}
########################################################################
# Check for module-loading APIs (libdl/libltdl)...
#
# Looks for libltdl or dlopen(), the latter either in -ldl or built in
# to libc (as it is on some platforms). Returns 1 if found, else
# 0. Either way, it `define`'s:
#
# - HAVE_LIBLTDL to 1 or 0 if libltdl is found/not found
# - HAVE_LIBDL to 1 or 0 if dlopen() is found/not found
# - LDFLAGS_MODULE_LOADER one of ("-lltdl", "-ldl", or ""), noting
# that -ldl may legally be empty on some platforms even if
# HAVE_LIBDL is true (indicating that dlopen() is available without
# extra link flags). LDFLAGS_MODULE_LOADER also gets "-rdynamic" appended
# to it because otherwise trying to open DLLs will result in undefined
# symbol errors.
#
# Note that if it finds LIBLTDL it does not look for LIBDL, so will
# report only that is has LIBLTDL.
proc hwaci-check-module-loader {} {
msg-checking "Looking for module-loader APIs... "
if {99 ne [get-define LDFLAGS_MODULE_LOADER]} {
if {1 eq [get-define HAVE_LIBLTDL 0]} {
msg-result "(cached) libltdl"
return 1
} elseif {1 eq [get-define HAVE_LIBDL 0]} {
msg-result "(cached) libdl"
return 1
}
# else: wha???
}
set HAVE_LIBLTDL 0
set HAVE_LIBDL 0
set LDFLAGS_MODULE_LOADER ""
set rc 0
puts "" ;# cosmetic kludge for cc-check-XXX
if {[cc-check-includes ltdl.h] && [cc-check-function-in-lib lt_dlopen ltdl]} {
set HAVE_LIBLTDL 1
set LDFLAGS_MODULE_LOADER "-lltdl -rdynamic"
puts " - Got libltdl."
set rc 1
} elseif {[cc-with {-includes dlfcn.h} {
cctest -link 1 -declare "extern char* dlerror(void);" -code "dlerror();"}]} {
puts " - This system can use dlopen() without -ldl."
set HAVE_LIBDL 1
set LDFLAGS_MODULE_LOADER ""
set rc 1
} elseif {[cc-check-includes dlfcn.h]} {
set HAVE_LIBDL 1
set rc 1
if {[cc-check-function-in-lib dlopen dl]} {
puts " - dlopen() needs libdl."
set LDFLAGS_MODULE_LOADER "-ldl -rdynamic"
} else {
puts " - dlopen() not found in libdl. Assuming dlopen() is built-in."
set LDFLAGS_MODULE_LOADER "-rdynamic"
}
}
define HAVE_LIBLTDL $HAVE_LIBLTDL
define HAVE_LIBDL $HAVE_LIBDL
define LDFLAGS_MODULE_LOADER $LDFLAGS_MODULE_LOADER
return $rc
}
########################################################################
# Sets all flags which would be set by hwaci-check-module-loader to
# empty/falsy values, as if those checks had failed to find a module
# loader. Intended to be called in place of that function when
# a module loader is explicitly not desired.
proc hwaci-no-check-module-loader {} {
define HAVE_LIBDL 0
define HAVE_LIBLTDL 0
define LDFLAGS_MODULE_LOADER ""
}
########################################################################
# Opens the given file, reads all of its content, and returns it.
proc hwaci-file-content {fname} {
set fp [open $fname r]
set rc [read $fp]
close $fp
return $rc
}
########################################################################
# Returns the contents of the given file as an array of lines, with
# the EOL stripped from each input line.
proc hwaci-file-content-list {fname} {
set fp [open $fname r]
set rc {}
while { [gets $fp line] >= 0 } {
lappend rc $line
}
return $rc
}
########################################################################
# Checks the compiler for compile_commands.json support. If passed an
# argument it is assumed to be the name of an autosetup boolean config
# option to explicitly DISABLE the compile_commands.json support.
#
# Returns 1 if supported, else 0. Defines MAKE_COMPILATION_DB to "yes"
# if supported, "no" if not.
proc hwaci-check-compile-commands {{configOpt {}}} {
msg-checking "compile_commands.json support... "
if {"" ne $configOpt && [opt-bool $configOpt]} {
msg-result "explicitly disabled"
define MAKE_COMPILATION_DB no
return 0
} else {
if {[cctest -lang c -cflags {/dev/null -MJ} -source {}]} {
# This test reportedly incorrectly succeeds on one of
# Martin G.'s older systems. drh also reports a false
# positive on an unspecified older Mac system.
msg-result "compiler supports compile_commands.json"
define MAKE_COMPILATION_DB yes
return 1
} else {
msg-result "compiler does not support compile_commands.json"
define MAKE_COMPILATION_DB no
return 0
}
}
}
########################################################################
# Uses [make-template] to create makefile(-like) file $filename from
# $filename.in but explicitly makes the output read-only, to avoid
# inadvertent editing (who, me?).
#
# The second argument is an optional boolean specifying whether to
# `touch` the generated files. This can be used as a workaround for
# cases where (A) autosetup does not update the file because it was
# not really modified and (B) the file *really* needs to be updated to
# please the build process. Pass any non-0 value to enable touching.
#
# The argument may be a list of filenames.
#
# Failures when running chmod or touch are silently ignored.
proc hwaci-make-from-dot-in {filename {touch 0}} {
foreach f $filename {
catch { exec chmod u+w $f }
make-template $f.in $f
if {0 != $touch} {
puts "Touching $f"
catch { exec touch $f }
}
catch { exec chmod -w $f }
}
}
########################################################################
# Checks for the boolean configure option named by $flagname. If set,
# it checks if $CC seems to refer to gcc. If it does (or appears to)
# then it defines CC_PROFILE_FLAG to "-pg" and returns 1, else it
# defines CC_PROFILE_FLAG to "" and returns 0.
#
# Note that the resulting flag must be added to both CFLAGS and
# LDFLAGS in order for binaries to be able to generate "gmon.out". In
# order to avoid potential problems with escaping, space-containing
# tokens, and interfering with autosetup's use of these vars, this
# routine does not directly modify CFLAGS or LDFLAGS.
proc hwaci-check-profile-flag {{flagname profile}} {
if {[opt-bool $flagname]} {
set CC [get-define CC]
regsub {.*ccache *} $CC "" CC
# ^^^ if CC="ccache gcc" then [exec] treats "ccache gcc" as a
# single binary name and fails. So strip any leading ccache part
# for this purpose.
if { ![catch { exec $CC --version } msg]} {
if {[string first gcc $CC] != -1} {
define CC_PROFILE_FLAG "-pg"
return 1
}
}
}
define CC_PROFILE_FLAG ""
return 0
}

View File

@ -119,9 +119,12 @@ USE_AMALGAMATION=1
# Figure out all the name of a working tclsh and parameters needed to compile against Tcl.
# The --with-tcl= and/or --with-tclsh= configuration arguments might be useful for this.
#
AC_ARG_WITH(tclsh, AS_HELP_STRING([--with-tclsh=PATHNAME],[full pathname of a tclsh to use]))
AC_ARG_WITH(tcl, AS_HELP_STRING([--with-tcl=DIR],[directory containing (tclConfig.sh)]))
AC_ARG_ENABLE(tcl, AS_HELP_STRING([--disable-tcl],[omit building accessory programs that require TCL-dev]),
AC_ARG_WITH(tclsh,
AS_HELP_STRING([--with-tclsh=PATHNAME],[full pathname of a tclsh to use]))
AC_ARG_WITH(tcl,
AS_HELP_STRING([--with-tcl=DIR],[directory containing (tclConfig.sh)]))
AC_ARG_ENABLE(tcl,
AS_HELP_STRING([--disable-tcl],[omit building accessory programs that require TCL-dev]),
[use_tcl=$enableval],[use_tcl=yes])
original_use_tcl=${use_tcl}
if test x"${with_tclsh}" == x -a x"${with_tcl}" == x; then
@ -261,21 +264,21 @@ AC_SUBST(RELEASE)
# This must be early because it changes the toolchain.
#
AC_ARG_WITH(wasi-sdk,
AS_HELP_STRING([--with-wasi-sdk=DIR],
AS_HELP_STRING([--with-wasi-sdk=DIR],
[directory containing the WASI SDK. Triggers cross-compile to WASM.]), with_wasisdk=${withval})
AC_MSG_CHECKING([for WASI SDK directory])
AC_CACHE_VAL(ac_cv_c_wasi_sdk,[
# First check to see if --with-tcl was specified.
if test x"${with_wasi_sdk}" != x ; then
if ! test -d "${with_wasi_sdk}" ; then
AC_MSG_ERROR([${with_wasi_sdk} directory doesn't exist])
AC_MSG_CHECKING([for WASI SDK directory])
AC_CACHE_VAL(ac_cv_c_wasi_sdk,[
# First check to see if --with-tcl was specified.
if test x"${with_wasi_sdk}" != x ; then
if ! test -d "${with_wasi_sdk}" ; then
AC_MSG_ERROR([${with_wasi_sdk} directory doesn't exist])
fi
AC_MSG_RESULT([${with_wasi_sdk}: using wasi-sdk clang, disabling: tcl, CLI shell, DLL])
use_wasi_sdk=yes
else
use_wasi_sdk=no
fi
AC_MSG_RESULT([${with_wasi_sdk}: using wasi-sdk clang, disabling: tcl, CLI shell, DLL])
use_wasi_sdk=yes
else
use_wasi_sdk=no
fi
])
])
if test "${use_wasi_sdk}" = "no" ; then
HAVE_WASI_SDK=""
AC_MSG_RESULT([no])
@ -326,15 +329,15 @@ AC_SUBST(BUILD_CC)
# Do we want to support multithreaded use of sqlite
#
AC_ARG_ENABLE(threadsafe,
AS_HELP_STRING([--disable-threadsafe],[Disable mutexing]))
AC_MSG_CHECKING([whether to support threadsafe operation])
if test "$enable_threadsafe" = "no"; then
SQLITE_THREADSAFE=0
AC_MSG_RESULT([no])
else
SQLITE_THREADSAFE=1
AC_MSG_RESULT([yes])
fi
AS_HELP_STRING([--disable-threadsafe],[Disable mutexing]))
AC_MSG_CHECKING([whether to support threadsafe operation])
if test "$enable_threadsafe" = "no"; then
SQLITE_THREADSAFE=0
AC_MSG_RESULT([no])
else
SQLITE_THREADSAFE=1
AC_MSG_RESULT([yes])
fi
AC_SUBST(SQLITE_THREADSAFE)
if test "$SQLITE_THREADSAFE" = "1"; then
@ -346,45 +349,45 @@ fi
# Do we want to support release
#
AC_ARG_ENABLE(releasemode,
AS_HELP_STRING([--enable-releasemode],[Support libtool link to release mode]),,enable_releasemode=no)
AC_MSG_CHECKING([whether to support shared library linked as release mode or not])
if test "$enable_releasemode" = "no"; then
ALLOWRELEASE=""
AC_MSG_RESULT([no])
else
ALLOWRELEASE="-release `cat $srcdir/VERSION`"
AC_MSG_RESULT([yes])
fi
AS_HELP_STRING([--enable-releasemode],[Support libtool link to release mode]),,enable_releasemode=no)
AC_MSG_CHECKING([whether to support shared library linked as release mode or not])
if test "$enable_releasemode" = "no"; then
ALLOWRELEASE=""
AC_MSG_RESULT([no])
else
ALLOWRELEASE="-release `cat $srcdir/VERSION`"
AC_MSG_RESULT([yes])
fi
AC_SUBST(ALLOWRELEASE)
##########
# Do we want temporary databases in memory
#
AC_ARG_ENABLE(tempstore,
AS_HELP_STRING([--enable-tempstore],[Use an in-ram database for temporary tables (never,no,yes,always)]),,enable_tempstore=no)
AC_MSG_CHECKING([whether to use an in-ram database for temporary tables])
case "$enable_tempstore" in
never )
TEMP_STORE=0
AC_MSG_RESULT([never])
;;
no )
TEMP_STORE=1
AC_MSG_RESULT([no])
;;
yes )
TEMP_STORE=2
AC_MSG_RESULT([yes])
;;
always )
TEMP_STORE=3
AC_MSG_RESULT([always])
;;
* )
TEMP_STORE=1
AC_MSG_RESULT([no])
;;
esac
AS_HELP_STRING([--enable-tempstore],[Use an in-ram database for temporary tables (never,no,yes,always)]),,enable_tempstore=no)
AC_MSG_CHECKING([whether to use an in-ram database for temporary tables])
case "$enable_tempstore" in
never )
TEMP_STORE=0
AC_MSG_RESULT([never])
;;
no )
TEMP_STORE=1
AC_MSG_RESULT([no])
;;
yes )
TEMP_STORE=2
AC_MSG_RESULT([yes])
;;
always )
TEMP_STORE=3
AC_MSG_RESULT([always])
;;
* )
TEMP_STORE=1
AC_MSG_RESULT([no])
;;
esac
AC_SUBST(TEMP_STORE)
@ -584,28 +587,28 @@ fi
# Do we want to support math functions
#
AC_ARG_ENABLE(math,
AS_HELP_STRING([--disable-math],[Disable math functions]))
AC_MSG_CHECKING([whether to support math functions])
if test "$enable_math" = "no"; then
AC_MSG_RESULT([no])
else
AC_MSG_RESULT([yes])
OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_MATH_FUNCTIONS"
AC_SEARCH_LIBS(ceil, m)
fi
AS_HELP_STRING([--disable-math],[Disable math functions]))
AC_MSG_CHECKING([whether to support math functions])
if test "$enable_math" = "no"; then
AC_MSG_RESULT([no])
else
AC_MSG_RESULT([yes])
OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_MATH_FUNCTIONS"
AC_SEARCH_LIBS(ceil, m)
fi
##########
# Do we want to support JSON functions
#
AC_ARG_ENABLE(json,
AS_HELP_STRING([--disable-json],[Disable JSON functions]))
AC_MSG_CHECKING([whether to support JSON functions])
if test "$enable_json" = "no"; then
AC_MSG_RESULT([no])
OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_OMIT_JSON"
else
AC_MSG_RESULT([yes])
fi
AS_HELP_STRING([--disable-json],[Disable JSON functions]))
AC_MSG_CHECKING([whether to support JSON functions])
if test "$enable_json" = "no"; then
AC_MSG_RESULT([no])
OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_OMIT_JSON"
else
AC_MSG_RESULT([yes])
fi
########
# The --enable-all argument is short-hand to enable
@ -619,12 +622,12 @@ AC_ARG_ENABLE(all, AS_HELP_STRING([--enable-all],
AC_ARG_ENABLE(memsys5,
AS_HELP_STRING([--enable-memsys5],[Enable MEMSYS5]))
AC_MSG_CHECKING([whether to support MEMSYS5])
if test "${enable_memsys5}" = "yes"; then
OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_MEMSYS5"
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
fi
if test "${enable_memsys5}" = "yes"; then
OPT_FEATURE_FLAGS="${OPT_FEATURE_FLAGS} -DSQLITE_ENABLE_MEMSYS5"
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
fi
AC_ARG_ENABLE(memsys3,
AS_HELP_STRING([--enable-memsys3],[Enable MEMSYS3]))
AC_MSG_CHECKING([whether to support MEMSYS3])

View File

@ -1,5 +1,5 @@
C Initial\spristine\sautosetup\sbits.
D 2024-09-24T21:08:49.699
C Get\sskeleton\sauto.def\srunning,\sbut\sit\sdoesn't\sreally\sdo\smuch\sexcept\ssome\sstandard\sboilerplate\sstuff.
D 2024-09-25T01:39:39.297
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@ -14,7 +14,7 @@ F art/icon-80x90.gif 65509ce3e5f86a9cd64fe7fca2d23954199f31fe44c1e09e208c80fb83d
F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
F auto.def 1f07836fdcf7c5048d8d9e60955bfb568989c36fa94dd1e5953fd836fa11a033
F auto.def eb8f5b72c433ef0d37b1d78b3a06ceb22165aa161a88cfd39d0cbef171dd1bc2
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
@ -46,6 +46,7 @@ F autosetup/cc-lib.tcl 493c5935b5dd3bf9bd4eca89b07c8b1b1a9356d61783035144e21795f
F autosetup/cc-shared.tcl 4f024e94a47f427ba61de1739f6381ef0080210f9fae89112d5c1de1e5460d78
F autosetup/cc.tcl 1b52de228642c1db5a714d54ca974d723ec8b4092e8c3765d348b625850f7311
F autosetup/default.auto 5cdf016de2140e50f1db190a02039dc42fb390af1dda4cc4853e3042a9ef0e82
F autosetup/hwaci-common.tcl 120d1cc6f1604fdf9403d730ed5955c18aaac11ce533231d62e22e614b9cbbfd
F autosetup/jimsh0.c 1b5fe91fffcddbc29f2b16acb80f1650632ea2edbe8336b8155ef7b4c66f6d8d
F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
F autosetup/system.tcl 3a39d6e0b3bfba526fd39afe07c1d0d325e5a31925013a1ba7c671e1128e31bb
@ -54,7 +55,7 @@ F autosetup/tmake.tcl a275793ec1b6f8708179af0acef1f6f10d46c2920739743f7a8720c6d7
F config.guess 883205ddf25b46f10c181818bf42c09da9888884af96f79e1719264345053bd6
F config.sub c2d0260f17f3e4bc0b6808fccf1b291cb5e9126c14fc5890efc77b9fd0175559
F configure 9a00b21dfd13757bbfb8d89b30660a89ec1f8f3a79402b8f9f9b6fc475c3303a x
F configure.ac a100ebf7a07f5dedd319ef547dd467d1676ed059b85a7877aa9c44ac309f7000
F configure.ac 934d33880d4c7dbff05c2ebaa3820e344e1321d5fff6d6393963e50c3a613e40
F contrib/sqlitecon.tcl 210a913ad63f9f991070821e599d600bd913e0ad
F doc/F2FS.txt c1d4a0ae9711cfe0e1d8b019d154f1c29e0d3abfe820787ba1e9ed7691160fcd
F doc/compile-for-windows.md 4d4bfafda42a7a33f166d23aed4db1bb4ea1e5751595a5cced2bad349fd14652
@ -2231,11 +2232,8 @@ F vsixtest/vsixtest.tcl 6195aba1f12a5e10efc2b8c0009532167be5e301abe5b31385638080
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
P 42bb941584a1ac922ee6b0b6ecadce71c9259555563cf49913a6f820f3f9b887
R 84d3f178c5c16f5b308246d776945a8b
T *branch * autosetup
T *sym-autosetup *
T -sym-trunk * Cancelled\sby\sbranch.
P dfb1e7f0cce9bc79c43eee7208cad0e2df562b2bc9705d3a36fd78f86c75495b
R dd0ebdea6824f43df28d73bb1d5be9bb
U stephan
Z 8191a33bd76375a0780db52c6f42efff
Z 061986ba8b4c5587dccbe2f0a25494b3
# Remove this line to create a well-formed Fossil manifest.

View File

@ -1 +1 @@
dfb1e7f0cce9bc79c43eee7208cad0e2df562b2bc9705d3a36fd78f86c75495b
e707634cf755346752bb83b7be5d0c683e39d6e0a497846019323fed31c08b9d