]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
ICU config support: add more details to error messages and correct a typo which would...
authorstephan <stephan@noemail.net>
Fri, 14 Feb 2025 16:43:41 +0000 (16:43 +0000)
committerstephan <stephan@noemail.net>
Fri, 14 Feb 2025 16:43:41 +0000 (16:43 +0000)
FossilOrigin-Name: 80311f0925962f952c0112a8241774cb151fca5263824f25b0c30d17c3a805bc

autosetup/sqlite-config.tcl
manifest
manifest.uuid

index 14cdcf5da135b1df48f2243dd3cbd2eba4e4b945..1616b109201feba28d922b630df0b2600ef7df19 100644 (file)
@@ -213,7 +213,7 @@ proc sqlite-config-bootstrap {buildMode} {
       {*} {
         with-icu-ldflags:LDFLAGS
           => {Enable SQLITE_ENABLE_ICU and add the given linker flags for the
-              ICU libraries}
+              ICU libraries. e.g. on Ubuntu systems, try '-licui18n -licuuc -licudata'.}
         with-icu-cflags:CFLAGS
           => {Apply extra CFLAGS/CPPFLAGS necessary for building with ICU.
               e.g. -I/usr/local/include}
@@ -1062,6 +1062,7 @@ proc sqlite-handle-icu {} {
   define LDFLAGS_ICU [join [opt-val with-icu-ldflags ""]]
   define CFLAGS_ICU [join [opt-val with-icu-cflags ""]]
   if {[proj-opt-was-provided with-icu-config]} {
+    msg-result "Checking for ICU support..."
     set icuConfigBin [opt-val with-icu-config]
     set tryIcuConfigBin 1; # set to 0 if we end up using pkg-config
     if {"auto" eq $icuConfigBin || "pkg-config" eq $icuConfigBin} {
@@ -1085,19 +1086,28 @@ proc sqlite-handle-icu {} {
                             /usr/local/bin/icu-config \
                             /usr/bin/icu-config]
         if {"" eq $icuConfigBin} {
-          proj-fatal "--with-icu-config=auto cannot find (pkg-config icu-io) or icu-config binary"
+          proj-indented-notice -error {
+            --with-icu-config=auto cannot find (pkg-config icu-io) or icu-config binary.
+            On Ubuntu-like systems try:
+            --with-icu-ldflags='-licui18n -licuuc -licudata'
+          }
         }
       }
       if {[file-isexec $icuConfigBin]} {
         set x [exec $icuConfigBin --ldflags]
         if {"" eq $x} {
-          proj-fatal "$icuConfigBin --ldflags returned no data"
+          proj-indented-notice -error \
+            [subst {
+              $icuConfigBin --ldflags returned no data.
+              On Ubuntu-like systems try:
+              --with-icu-ldflags='-licui18n -licuuc -licudata'
+            }]
         }
         define-append LDFLAGS_ICU $x
         set x [exec $icuConfigBin --cppflags]
         define-append CFLAGS_ICU $x
       } else {
-        proj-fatal "--with-icu-config=$bin does not refer to an executable"
+        proj-fatal "--with-icu-config=$icuConfigBin does not refer to an executable"
       }
     }
   }
index 5a809caee667477ee0b21f55faf60f1c99225d31..1f5ba8dd0a6909d692a1ba421166063dcbcf0b72 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C When\susing\sthe\s--out-implib\sbuild\soption,\sinstall\sthe\sgenerated\s.dll.a\sfile\sto\sPREFIX/lib.
-D 2025-02-13T16:31:22.473
+C ICU\sconfig\ssupport:\sadd\smore\sdetails\sto\serror\smessages\sand\scorrect\sa\stypo\swhich\swould\scause\sa\sconfigure\scrash\sif\s--with-icu-config=X\srefered\sto\sa\snon-executable\sX.
+D 2025-02-14T16:43:41.285
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
@@ -50,7 +50,7 @@ F autosetup/cc.tcl c0fcc50ca91deff8741e449ddad05bcd08268bc31177e613a6343bbd1fd3e
 F autosetup/jimsh0.c 6573f6bc6ff204de0139692648d7037ca0b6c067bac83a7b4e087f20a86866a4
 F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
 F autosetup/proj.tcl 42119a2e899e319b92f3159952b7ef7219c82cb45eeb636aaf8d909def8150f8
-F autosetup/sqlite-config.tcl ece913b7bb1efbabdd44fd787c0e4d2fd462d3019cc079a5e6bbe43c83d302b3
+F autosetup/sqlite-config.tcl c0a5e95b10d8168eb0f942a9d46b1b6a31a06a19991a294d2eace6b0a9d7e897
 F autosetup/system.tcl 51d4be76cd9a9074704b584e5c9cbba616202c8468cf9ba8a4f8294a7ab1dba9
 F configure 9a00b21dfd13757bbfb8d89b30660a89ec1f8f3a79402b8f9f9b6fc475c3303a x
 F contrib/sqlitecon.tcl 210a913ad63f9f991070821e599d600bd913e0ad
@@ -2209,9 +2209,9 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 1cc8d16b636de128ca5e9c6cf7630fb323e2969aaac984ebee928b0fe690b84b
-Q +0dadea0ec86b6ac74281915433e41ae66cc20547d9882c4be2933a24c8287927
-R d6aa987e056da2d90adb012739ef55e5
+P 8e8037bafccdbde0aefba29a13fe6026488b0f17cfc1b4c1700d2aa3c974ecc4
+Q +ff508926651d632d86081ccde89d3367c89538dde469e9e925540d634ac8a416
+R abf44d27da90b6ed53c8eb99967a09fc
 U stephan
-Z ca9c23171a6964e2384cf9a49c8c3987
+Z 0106314ab903d217e0dd156ee94e6a57
 # Remove this line to create a well-formed Fossil manifest.
index 72354479076b0aed9082b72d06ca727aae5ae099..a2ae7b46715d23e2e9e4ba0e1d64502c828e3d56 100644 (file)
@@ -1 +1 @@
-8e8037bafccdbde0aefba29a13fe6026488b0f17cfc1b4c1700d2aa3c974ecc4
+80311f0925962f952c0112a8241774cb151fca5263824f25b0c30d17c3a805bc