]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Baby steps towards a working auto.def.
authorstephan <stephan@noemail.net>
Wed, 25 Sep 2024 08:04:14 +0000 (08:04 +0000)
committerstephan <stephan@noemail.net>
Wed, 25 Sep 2024 08:04:14 +0000 (08:04 +0000)
FossilOrigin-Name: c223dbb4fb8e800089752617c6c986b6c80be0d180e9d1610f28cf95253e5674

auto.def
manifest
manifest.uuid

index 1a110b49b8f9c491a52a9dcb27cffb98ea634710..e4b2c9944bd6571e4da6c85981b7409cb3c85f72 100644 (file)
--- a/auto.def
+++ b/auto.def
@@ -1,6 +1,9 @@
 # Created by migrate-autoconf - fix items marked XXX
+global autosetup
 use cc cc-shared cc-lib hwaci-common
 set DUMP_DEFINES_FILE defines.list
+set cross_compiling 0
+set enable_shared 1
 
 ########################################################################
 # Note that boolean flags...
@@ -31,7 +34,7 @@ set DUMP_DEFINES_FILE defines.list
 #
 # 1) autosetup treats prefixes of 'enable' and 'disable' specially,
 # leading to some incompatibilities with the historical sqlite3
-# configure script.
+# configure script flags.
 #
 # Defining non-boolean flags named enable-foo requires different
 # downstream handling of those flags. e.g.
@@ -50,8 +53,8 @@ set DUMP_DEFINES_FILE defines.list
 # An awkward workaround for that, discovered only by random trial and
 # error, is to define both {tempstore=1} and {enable-tempstore:}. With
 # that in place --enable-tempstore, with no value, works as expected
-# (why? Nobody knows!) but --tempstore can only ever be legally passed 0 or
-# 1.
+# (why? Nobody knows!) but --tempstore can only ever be legally passed
+# a boolean value (0, 1, yes, no, enabled, disabled).
 options {
   with-tclsh:PATHNAME  => {Full pathname of tclsh to use}
   with-tcl:DIR         => {Directory containing tclConfig.sh}
@@ -155,8 +158,6 @@ puts "with-wasi-sdk? = [opt-val with-wasi-sdk]"
 #        files for the readline library.  If the compiler is able
 #        to find <readline.h> on its own, then this can be blank.
 
-hwaci-check-exeext
-
 ########################################################################
 # OPT_FEATURE_FLAGS = -DSQLITE_OMIT/ENABLE flags.
 define OPT_FEATURE_FLAGS {}
@@ -165,6 +166,17 @@ proc add-feature-flag {flag} {
 }
 # add-feature-flag -DSQLITE_JUST_TESTING=3
 
+hwaci-check-exeext
+if {".exe" eq [get-define TARGET_EXEEXT]} {
+  define SQLITE_OS_UNIX 0
+  define SQLITE_OS_WIN 1
+  # todo? add -DSQLITE_OS_WIN=1 to CFLAGS?
+} else {
+  define SQLITE_OS_UNIX 1
+  define SQLITE_OS_WIN 0
+  # todo? add -DSQLITE_OS_UNIX=1 to CFLAGS?
+}
+
 ########################################################################
 # Force-set autosetup option $flag to $val.
 proc opt-set {flag {val 1}} {
@@ -191,37 +203,27 @@ proc if-disabled {boolFlag then {else {}}} {
 
 #########
 # Programs needed
-if {1} {
-  if {"" eq [hwaci-bin-define install]} {
-    msg-result "Cannot find install binary, so 'make install' will not work."
-  }
+if {"" eq [hwaci-bin-define install]} {
+  msg-result "Cannot find install binary, so 'make install' will not work."
 }
 
 #########
 # Enable large file support (if special flags are necessary)
-if {1} {
-  cc-check-lfs
-}
+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
-}
+cc-check-types int8_t int16_t int32_t int64_t intptr_t \
+  uint8_t uint16_t uint32_t uint64_t uintptr_t
 
 #########
 # Check for needed/wanted headers
-if {1} {
-  cc-check-includes sys/types.h stdlib.h stdint.h inttypes.h malloc.h
-}
+cc-check-includes sys/types.h stdlib.h stdint.h inttypes.h malloc.h
 
 #########
 # Figure out whether or not we have these functions
-if {1} {
-  cc-check-functions fdatasync gmtime_r isnan localtime_r localtime_s \
-    malloc_usable_size strchrnul usleep utime pread pread64 pwrite pwrite64
-}
+cc-check-functions fdatasync gmtime_r isnan localtime_r localtime_s \
+  malloc_usable_size strchrnul usleep utime pread pread64 pwrite pwrite64
 
 ##########
 # Handle --with-wasi-sdk=DIR
@@ -231,7 +233,8 @@ if {1} {
 # It's unclear whether we can actually get away with making these
 # changes to the autosetup environment.
 if {1} {
-  set wasiSdkDir [lindex [opt-val with-wasi-sdk] end]
+  set wasiSdkDir [opt-val with-wasi-sdk] ; # ??? [lindex [opt-val with-wasi-sdk] end]
+  #puts "x wasiSdkDir=$wasiSdkDir foo=[lindex [opt-val with-wasi-sdk] end]"
   if {$wasiSdkDir eq ""} {
     define HAVE_WASI_SDK 0
     define WASI_SDK_DIR ""
@@ -243,6 +246,10 @@ if {1} {
     msg-result "using wasi-sdk clang, disabling: tcl, CLI shell, DLL"
     define HAVE_WASI_SDK 1
     define WASI_SDK_DIR $wasiSdkDir
+    opt-set tcl 0
+    opt-set threadsafe 0
+    set cross_compiling 1
+    set enable_shared 0
 
     # Changing --host and --target have no effect here except to possibly
     # cause confusion. autoconf has finished processing them by this
@@ -264,6 +271,7 @@ if {1} {
     # we disable the DLL build...
     #  set enable_shared no
   }
+#  unset wasiSdkDir
 }; # --wasi-sdk-dir
 
 #########
@@ -908,5 +916,7 @@ if {"" ne [get-define OPT_FEATURE_FLAGS]} {
 if-enabled dump-defines {
   global DUMP_DEFINES_FILE
   msg-result "--dump-defines is creating file: $DUMP_DEFINES_FILE"
-  make-config-header $DUMP_DEFINES_FILE -bare OPT_FEATURE_FLAGS -auto {*}
+  make-config-header $DUMP_DEFINES_FILE -bare {OPT_FEATURE_FLAGS SQLITE_OS_*} -auto {*}
+  # achtung: ^^^^ whichever SQLITE_OS_foo flag which is set to 0 will
+  # get _undefined_ here unless it's part of the -bare set.
 }
index 6e023c5e54f4f8a8b85ceda4aea653e42d2b400c..b2eff0780743c9b47d3c84ec076bb4d6060e239d 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\s--enable-tempstore\ssupport\sand\sdocument\ssome\sof\sthe\sweirdness\sof\strying\sto\suse\san\sexplicit\sprefix\sof\s--enable\swith\snon-boolean\sflags\s(autosetup\sunconditionally\shandles\s--enable\sand\s--disable\sprefixes\son\sits\sown\sand\salways\streats\sthem\sas\sboolean\sflags).
-D 2024-09-25T07:30:54.847
+C Baby\ssteps\stowards\sa\sworking\sauto.def.
+D 2024-09-25T08:04:14.465
 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 bf6823fc39c18f250e1a557fd1693d50907bb7c7bf64bb19c29976fcad8e9ac4
+F auto.def eb236b4f17149ff8ce2a5dcd68f3f0b9c349fd1c063975e808279cdd376a6ff6
 F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
 F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
 F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
@@ -2232,8 +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 beb2a12045447586cc74f243d4f519c967595d929abe6330c2b1049897e8eaad
-R cb05e4344f4a5cf418370e9015944c67
+P fe6fa4ce5271c6265985574e1c406dda5b57f0dc360626800b6173a8f054bdab
+R 63e04f82879526ec975f0378b679f11b
 U stephan
-Z 2790adfba3be68b5a200dbb2ea24a505
+Z ab45cc0c2e7401e955c33f04a9ab6c02
 # Remove this line to create a well-formed Fossil manifest.
index 83aa0091d83783b55a24d1a34bdeb5eb020f7e4e..376e62181ff85c2a02cdb5dfcdc373139f14c404 100644 (file)
@@ -1 +1 @@
-fe6fa4ce5271c6265985574e1c406dda5b57f0dc360626800b6173a8f054bdab
+c223dbb4fb8e800089752617c6c986b6c80be0d180e9d1610f28cf95253e5674