]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Get libsqlite3.so building.
authorstephan <stephan@noemail.net>
Sat, 28 Sep 2024 14:51:10 +0000 (14:51 +0000)
committerstephan <stephan@noemail.net>
Sat, 28 Sep 2024 14:51:10 +0000 (14:51 +0000)
FossilOrigin-Name: c65e3679e0d28e980bb555b47f31690b27915d9ff0850f598e3bed528b18ca1d

Makefile.in
auto.def
autosetup/hwaci-common.tcl
manifest
manifest.uuid

index 1e60d411b80e789394445c79fbc71081230ddee7..aa984a53d50e99f89a9f51f919e119ee05e890fe 100644 (file)
@@ -39,7 +39,11 @@ BCC = @BUILD_CC@ @BUILD_CFLAGS@
 CC = @CC@
 CFLAGS ?= @CFLAGS@
 CPPFLAGS ?= @CPPFLAGS@
-TCC = ${CC} ${CFLAGS} -I. -I${TOP}/src -I${TOP}/ext/rtree -I${TOP}/ext/icu
+@if SH_CFLAGS
+CFLAGS += @SH_CFLAGS@
+@endif
+TCC = ${CC} ${CFLAGS}
+TCC += -I. -I${TOP}/src -I${TOP}/ext/rtree -I${TOP}/ext/icu
 TCC += -I${TOP}/ext/fts3 -I${TOP}/ext/async -I${TOP}/ext/session
 TCC += -I${TOP}/ext/userauth
 
@@ -79,6 +83,7 @@ READLINE_FLAGS = -DHAVE_READLINE=@HAVE_READLINE@ @CFLAGS_READLINE@
 # Any target libraries which libsqlite must be linked against
 #
 TLIBS = @LIBS@ $(LIBS)
+
 #XX#
 # Flags controlling use of the in memory btree implementation
 #
@@ -113,10 +118,12 @@ TCC += @LDFLAGS_ZLIB@
 VERSION = @VERSION@
 RELEASE = @RELEASE@
 
-# Filename extensions for binaries
+# Filename extensions for binaries and shared libraries
 #
 BEXE = @BUILD_EXEEXT@
 TEXE = @TARGET_EXEEXT@
+BDLL = @BDLL@
+TDLL = @TDLL@
 
 # The following variable is "1" if the configure script was able to locate
 # the tclConfig.sh file.  It is an empty string otherwise.  When this
@@ -154,9 +161,8 @@ TSTRNNR_OPTS = @TSTRNNR_OPTS@
 GCOV_CFLAGS1 = -DSQLITE_COVERAGE_TEST=1 -fprofile-arcs -ftest-coverage
 GCOV_LDFLAGS1 = -lgcov
 USE_GCOV = @USE_GCOV@
-#XX#LTCOMPILE_EXTRAS += $(GCOV_CFLAGS$(USE_GCOV))
-#XX#LTLINK_EXTRAS += $(GCOV_LDFLAGS$(USE_GCOV))
-
+LTCOMPILE_EXTRAS += $(GCOV_CFLAGS$(USE_GCOV))
+LTLINK_EXTRAS += $(GCOV_LDFLAGS$(USE_GCOV))
 
 # The directory into which to store package information for
 
@@ -176,6 +182,9 @@ INSTALL = @BIN_INSTALL@
 #XX#LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(TCC) $(LTCOMPILE_EXTRAS)
 #XX#LTLINK = $(LIBTOOL) --mode=link $(TCC) $(LTCOMPILE_EXTRAS) @LDFLAGS@ $(LTLINK_EXTRAS)
 #XX#LTINSTALL = $(LIBTOOL) --mode=install $(INSTALL)
+TCOMPILE = $(TCC) $(LTCOMPILE_EXTRAS)
+TLINK = $(TCC) $(LTLINK_EXTRAS)
+TINSTALL = $(INSTALL)
 
 #
 # You should not have to change anything below this line
@@ -192,45 +201,44 @@ USE_AMALGAMATION = @USE_AMALGAMATION@
 AMALGAMATION_LINE_MACROS = @AMALGAMATION_LINE_MACROS@
 
 #
-#XX## Object files for the SQLite library (non-amalgamation).
-#XX##
-#XX#LIBOBJS0 = alter.lo analyze.lo attach.lo auth.lo \
-#XX#         backup.lo bitvec.lo btmutex.lo btree.lo build.lo \
-#XX#         callback.lo complete.lo ctime.lo \
-#XX#         date.lo dbpage.lo dbstat.lo delete.lo \
-#XX#         expr.lo fault.lo fkey.lo \
-#XX#         fts3.lo fts3_aux.lo fts3_expr.lo fts3_hash.lo fts3_icu.lo \
-#XX#         fts3_porter.lo fts3_snippet.lo fts3_tokenizer.lo fts3_tokenizer1.lo \
-#XX#         fts3_tokenize_vtab.lo \
-#XX#         fts3_unicode.lo fts3_unicode2.lo fts3_write.lo \
-#XX#    fts5.lo \
-#XX#         func.lo global.lo hash.lo \
-#XX#         icu.lo insert.lo json.lo legacy.lo loadext.lo \
-#XX#         main.lo malloc.lo mem0.lo mem1.lo mem2.lo mem3.lo mem5.lo \
-#XX#         memdb.lo memjournal.lo \
-#XX#         mutex.lo mutex_noop.lo mutex_unix.lo mutex_w32.lo \
-#XX#         notify.lo opcodes.lo os.lo os_kv.lo os_unix.lo os_win.lo \
-#XX#         pager.lo parse.lo pcache.lo pcache1.lo pragma.lo prepare.lo printf.lo \
-#XX#         random.lo resolve.lo rowset.lo rtree.lo \
-#XX#         sqlite3session.lo select.lo sqlite3rbu.lo status.lo stmt.lo \
-#XX#         table.lo threads.lo tokenize.lo treeview.lo trigger.lo \
-#XX#         update.lo userauth.lo upsert.lo util.lo vacuum.lo \
-#XX#         vdbe.lo vdbeapi.lo vdbeaux.lo vdbeblob.lo vdbemem.lo vdbesort.lo \
-#XX#         vdbetrace.lo vdbevtab.lo \
-#XX#         wal.lo walker.lo where.lo wherecode.lo whereexpr.lo \
-#XX#         window.lo utf.lo vtab.lo
-#XX#
-#XX## Object files for the amalgamation.
-#XX##
-#XX#LIBOBJS1 = sqlite3.lo
-#XX#
-#XX## Determine the real value of LIBOBJ based on the 'configure' script
-#XX##
-#XX#LIBOBJ = $(LIBOBJS$(USE_AMALGAMATION))
-#XX#
-#XX#
-#XX## All of the source code files.
-#XX##
+# Object files for the SQLite library (non-amalgamation).
+#
+LIBOBJS0 = alter.o analyze.o attach.o auth.o \
+         backup.o bitvec.o btmutex.o btree.o build.o \
+         callback.o complete.o ctime.o \
+         date.o dbpage.o dbstat.o delete.o \
+         expr.o fault.o fkey.o \
+         fts3.o fts3_aux.o fts3_expr.o fts3_hash.o fts3_icu.o \
+         fts3_porter.o fts3_snippet.o fts3_tokenizer.o fts3_tokenizer1.o \
+         fts3_tokenize_vtab.o \
+         fts3_unicode.o fts3_unicode2.o fts3_write.o \
+         fts5.o \
+         func.o global.o hash.o \
+         icu.o insert.o json.o legacy.o loadext.o \
+         main.o malloc.o mem0.o mem1.o mem2.o mem3.o mem5.o \
+         memdb.o memjournal.o \
+         mutex.o mutex_noop.o mutex_unix.o mutex_w32.o \
+         notify.o opcodes.o os.o os_kv.o os_unix.o os_win.o \
+         pager.o parse.o pcache.o pcache1.o pragma.o prepare.o printf.o \
+         random.o resolve.o rowset.o rtree.o \
+         sqlite3session.o select.o sqlite3rbu.o status.o stmt.o \
+         table.o threads.o tokenize.o treeview.o trigger.o \
+         update.o userauth.o upsert.o util.o vacuum.o \
+         vdbe.o vdbeapi.o vdbeaux.o vdbeblob.o vdbemem.o vdbesort.o \
+         vdbetrace.o vdbevtab.o \
+         wal.o walker.o where.o wherecode.o whereexpr.o \
+         window.o utf.o vtab.o
+
+# Object files for the amalgamation.
+#
+LIBOBJS1 = sqlite3.o
+
+# Determine the real value of LIBOBJ based on the 'configure' script
+#
+LIBOBJ = $(LIBOBJS$(USE_AMALGAMATION))
+
+# All of the source code files.
+#
 SRC = \
   $(TOP)/src/alter.c \
   $(TOP)/src/analyze.c \
@@ -714,21 +722,27 @@ sqlite_cfg.h: $(TOP)/sqlite_cfg.h.in $(AS_AUTO_DEF)
        $(AUTOREMAKE)
        @touch $@
 
-#XX#libsqlite3.la:     $(LIBOBJ)
-#XX#   $(LTLINK) -no-undefined -o $@ $(LIBOBJ) $(TLIBS) \
-#XX#           ${ALLOWRELEASE} -rpath "$(libdir)" -version-info "8:6:8"
-#XX#
+libsqlite3.DLL = libsqlite3$(TDLL)
+$(libsqlite3.DLL):     $(LIBOBJ)
+       $(TLINK) -o $@ \
+               @SHOBJ_LDFLAGS@  $(LIBOBJ) $(TLIBS) \
+               @LDFLAGS_RPATH@
+dll: $(libsqlite3.DLL)
+all: dll
+
 #XX#libtclsqlite3.la:  tclsqlite.lo libsqlite3.la
 #XX#   $(LTLINK) -no-undefined -o $@ tclsqlite.lo \
 #XX#           libsqlite3.la @TCL_STUB_LIB_SPEC@ $(TLIBS) \
 #XX#           -rpath "$(TCLLIBDIR)" \
 #XX#           -version-info "8:6:8" \
 #XX#           -avoid-version
-#XX#
+
 sqlite3$(TEXE):        shell.c sqlite3.c
        $(TCC) $(READLINE_FLAGS) $(SHELL_OPT) -o $@ \
                shell.c sqlite3.c \
                @LDFLAGS_RPATH@ @LDFLAGS_READLINE@ $(TLIBS)
+cli: sqlite3$(TEXE)
+all: cli
 #XX#
 #XX#sqldiff$(TEXE):    $(TOP)/tool/sqldiff.c sqlite3.lo sqlite3.h
 #XX#   $(LTLINK) -o $@ $(TOP)/tool/sqldiff.c sqlite3.lo $(TLIBS)
index c5c972d4506b89ae7a79a7ed2fd32b53bc252ef6..2a87e4b7115111991e95ff540a76dff075bb8246 100644 (file)
--- a/auto.def
+++ b/auto.def
@@ -174,6 +174,8 @@ if {".exe" eq [get-define TARGET_EXEEXT]} {
   define SQLITE_OS_WIN 0
   # todo? add -DSQLITE_OS_UNIX=1 to CFLAGS?
 }
+define BDLL [hwaci-dll-extension build]
+define TDLL [hwaci-dll-extension host]
 
 #########
 # Programs needed
@@ -855,7 +857,7 @@ if {"" ne $oFF} {
   define OPT_FEATURE_FLAGS [lsort -unique $oFF]
   msg-result "Final feature flags: [get-define OPT_FEATURE_FLAGS]"
 }
-set oFF [get-define SHELL_OPT]
+set oFF [get-define OPT_SHELL]
 if {"" ne $oFF} {
   msg-result "Final shell opts: [get-define OPT_SHELL]"
 }
index 3da0961c54d6342ce9bc4d0a06b9ac71ee367ae0..b823d57c6356059e92a68e9af4dce4671f1b1cde 100644 (file)
@@ -448,6 +448,27 @@ proc hwaci-looks-like-windows {{key host}} {
   return 0
 }
 
+########################################################################
+# Looks at either the 'host' (==compilation target platform) or
+# 'build' (==the being-built-on platform) define value and returns a
+# file extension for DLLs on that platform, including the leading ".".
+#
+# TODO: have someone verify whether this is correct for the
+# non-Linux/BSD platforms.
+proc hwaci-dll-extension {{key host}} {
+  switch -glob -- [get-define $key] {
+    *apple* {
+      return ".dylib"
+    }
+    *-*-ming* - *-*-cygwin - *-*-msys {
+      return ".dll"
+    }
+    default {
+      return ".so"
+    }
+  }
+}
+
 ########################################################################
 # Checks autosetup's "host" and "build" defines to see if the build
 # host and target are Windows-esque (Cygwin, MinGW, MSys). If the
index 5dd40c0b4e62b998197765830665645c16426523..aeed538d8dd2dd70ae478770bbf3afe233da12ee 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,9 +1,9 @@
-C Latest\supstream\sautosetup\sfor\sa\s--help\sfix\son\sQNX.
-D 2024-09-28T00:41:34.737
+C Get\slibsqlite3.so\sbuilding.
+D 2024-09-28T14:51:10.851
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
-F Makefile.in 5253a425c9167286a21b2393d4293c197914c135e35ef3fdea7b1334df98c9cc
+F Makefile.in 697e01f6bf783c56ccf80c31dcd58165b5a95469e4b5db716ffe70c48fccfbaa
 F Makefile.linux-gcc f3842a0b1efbfbb74ac0ef60e56b301836d05b4d867d014f714fa750048f1ab6
 F Makefile.msc 9c6d80d9d103fa42e931f4c464884a5e577fae8563acc7589bff4e43fbe8f864
 F README.md c3c0f19532ce28f6297a71870f3c7b424729f0e6d9ab889616d3587dd2332159
@@ -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 6e46e578f319e20c2469c90c0e54f4c08c246d136b2b20962ba8281c715c3b4b
+F auto.def 62bfff338c701174786e6613c30c2be7b98563dbdd1eaaaa3b4156165ee46d53
 F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
 F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
 F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
@@ -46,7 +46,7 @@ F autosetup/cc-lib.tcl 493c5935b5dd3bf9bd4eca89b07c8b1b1a9356d61783035144e21795f
 F autosetup/cc-shared.tcl 4f024e94a47f427ba61de1739f6381ef0080210f9fae89112d5c1de1e5460d78
 F autosetup/cc.tcl 7e2fe943ae9d45cf39e9f5b05b6230df8e719415edea5af06c30eb68680bde14
 F autosetup/default.auto 5cdf016de2140e50f1db190a02039dc42fb390af1dda4cc4853e3042a9ef0e82
-F autosetup/hwaci-common.tcl bd3321e80b92eb0644be4f05df44d5c98ab415b2c7dc10866303dfe5ba77592a
+F autosetup/hwaci-common.tcl bc7611bd7122b0308453bf0353ef81ae4658744f7ef67e5e53f3033551ddcac6
 F autosetup/jimsh0.c 1b5fe91fffcddbc29f2b16acb80f1650632ea2edbe8336b8155ef7b4c66f6d8d
 F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
 F autosetup/system.tcl 3a39d6e0b3bfba526fd39afe07c1d0d325e5a31925013a1ba7c671e1128e31bb
@@ -2233,8 +2233,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 c3877d1241f946b470a7a4868f13e1106e8aac4851d4bc5a64c90e0569444b81
-R c95c554af644d55a7c83b59eb1349814
+P b9faebbb543fb3a03f46dd4defe28ffa0c32a9a46ed73912f93b86e41f3db04a
+R d30efb2f23fa7708ccc4acb26fa1caa0
 U stephan
-Z d6501046de47ed3c7029a05bf2997e84
+Z 22dfd7e3022119773556b9c0d01ecb08
 # Remove this line to create a well-formed Fossil manifest.
index eccaa510815ec7472010a2f965edd830f547f89c..635d73158a7f901e38c48635ba62aaa6b1466a6c 100644 (file)
@@ -1 +1 @@
-b9faebbb543fb3a03f46dd4defe28ffa0c32a9a46ed73912f93b86e41f3db04a
+c65e3679e0d28e980bb555b47f31690b27915d9ff0850f598e3bed528b18ca1d