]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
DLL installation rules no longer create versioned symlinks on platforms where the...
authorstephan <stephan@noemail.net>
Sat, 15 Feb 2025 16:24:52 +0000 (16:24 +0000)
committerstephan <stephan@noemail.net>
Sat, 15 Feb 2025 16:24:52 +0000 (16:24 +0000)
FossilOrigin-Name: d94ad545776ad5cdbd637c1532e0be5f0364eee31484ede97ec4173b2b76f781

autoconf/Makefile.in
main.mk
manifest
manifest.uuid

index c6cde3c18195ad1534084ec491d28c8d1d1facaf..65108ee5d0966734d50bac65fa0f57d1b1db2fbb 100644 (file)
@@ -87,7 +87,7 @@ install-dir.all = $(install-dir.bin) $(install-dir.include) \
   $(install-dir.lib) $(install-dir.man1) \
   $(install-dir.pkgconfig)
 $(install-dir.all):
-       if [ ! -d "$@" ]; then $(INSTALL) -d "$@"; fi
+       @if [ ! -d "$@" ]; then set -x; $(INSTALL) -d "$@"; fi
 # ^^^^ on some platforms, install -d fails if the target already exists.
 
 
@@ -161,8 +161,10 @@ install-so-1: $(install-dir.lib) $(libsqlite3.SO)
                $(INSTALL) $(libsqlite3.SO).a "$(install-dir.lib)"; \
        fi
        @echo "Setting up $(libsqlite3.SO) version symlinks..."; \
-       cd "$(install-dir.lib)" || exit $$?; \
-       if [ x.dylib = x$(T.dll) ]; then \
+       if [ x.dll = x$(T.dll) ]; then \
+               echo "No library symlinks needed on this platform"; \
+       elif [ x.dylib = x$(T.dll) ]; then \
+               cd "$(install-dir.lib)" || exit $$?; \
                rm -f libsqlite3.0$(T.dll) libsqlite3.$(PACKAGE_VERSION)$(T.dll) || exit $$?; \
                dllname=libsqlite3.$(PACKAGE_VERSION)$(T.dll); \
                mv $(libsqlite3.SO) $$dllname || exit $$?; \
@@ -170,6 +172,7 @@ install-so-1: $(install-dir.lib) $(libsqlite3.SO)
                ln -s $$dllname libsqlite3.0$(T.dll) || exit $$?; \
                ls -la $$dllname $(libsqlite3.SO) libsqlite3.0$(T.dll); \
        else \
+               cd "$(install-dir.lib)" || exit $$?; \
                rm -f $(libsqlite3.SO).0 $(libsqlite3.SO).$(PACKAGE_VERSION) || exit $$?; \
                mv $(libsqlite3.SO) $(libsqlite3.SO).$(PACKAGE_VERSION) || exit $$?; \
                ln -s $(libsqlite3.SO).$(PACKAGE_VERSION) $(libsqlite3.SO) || exit $$?; \
diff --git a/main.mk b/main.mk
index 1f45ef0470e7c405f54e8b32f824e1a1848309c8..75e8cfa21e5e7ad225b6f98c344ab570e7198363 100644 (file)
--- a/main.mk
+++ b/main.mk
@@ -436,7 +436,7 @@ install-dir.all = $(install-dir.bin) $(install-dir.include) \
   $(install-dir.lib) $(install-dir.man1) \
   $(install-dir.pkgconfig)
 $(install-dir.all):
-       if [ ! -d "$@" ]; then $(INSTALL) -d "$@"; fi
+       @if [ ! -d "$@" ]; then set -x; $(INSTALL) -d "$@"; fi
 # ^^^^ on some platforms, install -d fails if the target already exists.
 
 #
@@ -1421,19 +1421,17 @@ so: $(libsqlite3.SO)-$(ENABLE_SHARED)
 all: so
 
 #
-# Install the $(libsqlite3.SO) as $(libsqlite3.SO).$(PACKAGE_VERSION)
-# and create symlinks which point to it:
+# On most Unix-like platforms, install the $(libsqlite3.SO) as
+# $(libsqlite3.SO).$(PACKAGE_VERSION) and create symlinks which point
+# to it:
 #
 # - libsqlite3.so.$(PACKAGE_VERSION)
 # - libsqlite3.so.0      =symlink-> libsqlite3.so.$(PACKAGE_VERSION) (see below)
 # - libsqlite3.so        =symlink-> libsqlite3.so.3
 #
-# N.B. we initially had a link named libsqlite3.so.3 but it's
-# unnecessary unless we want to set SONAME to libsqlite3.so.3, which
-# is also unnecessary.
-#
-# N.B. different transformations are applied on systems where $(T.dll)
-# is ".dylib" and none of the following docs apply on such systems.
+# The symlinks are not added on platforms where $(T.dll) is ".dll",
+# and different transformations take place on platforms where $(T.dll)
+# is ".dylib".
 #
 # The link named libsqlite3.so.0 is provided in an attempt to reduce
 # downstream disruption when performing upgrades from pre-3.48 to a
@@ -1475,8 +1473,10 @@ install-so-1: $(install-dir.lib) $(libsqlite3.SO)
                $(INSTALL) $(libsqlite3.SO).a "$(install-dir.lib)"; \
        fi
        @echo "Setting up $(libsqlite3.SO) version symlinks..."; \
-       cd "$(install-dir.lib)" || exit $$?; \
-       if [ x.dylib = x$(T.dll) ]; then \
+       if [ x.dll = x$(T.dll) ]; then \
+               echo "No library symlinks needed on this platform"; \
+       elif [ x.dylib = x$(T.dll) ]; then \
+               cd "$(install-dir.lib)" || exit $$?; \
                rm -f libsqlite3.0$(T.dll) libsqlite3.$(PACKAGE_VERSION)$(T.dll) || exit $$?; \
                dllname=libsqlite3.$(PACKAGE_VERSION)$(T.dll); \
                mv $(libsqlite3.SO) $$dllname || exit $$?; \
@@ -1484,6 +1484,7 @@ install-so-1: $(install-dir.lib) $(libsqlite3.SO)
                ln -s $$dllname libsqlite3.0$(T.dll) || exit $$?; \
                ls -la $$dllname $(libsqlite3.SO) libsqlite3.0$(T.dll); \
        else \
+               cd "$(install-dir.lib)" || exit $$?; \
                rm -f $(libsqlite3.SO).0 $(libsqlite3.SO).$(PACKAGE_VERSION) || exit $$?; \
                mv $(libsqlite3.SO) $(libsqlite3.SO).$(PACKAGE_VERSION) || exit $$?; \
                ln -s $(libsqlite3.SO).$(PACKAGE_VERSION) $(libsqlite3.SO) || exit $$?; \
index 2e61348c4c0f1b24d02fe0706977f8c5eb1dfccc..0c15714bd3c7c8a894d16e36fc744be6a19eb06d 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C A\scleaner\sworkaround\sfor\s[6a21d6a2].
-D 2025-02-15T14:13:35.291
+C DLL\sinstallation\srules\sno\slonger\screate\sversioned\ssymlinks\son\splatforms\swhere\sthe\sDLL\sextension\sis\s'.dll'\s(cygwin,\smsys2,\setc.),\sas\ssuggested\sin\s[forum:28bb79638844c328|forum\spost\s28bb79638844c328].
+D 2025-02-15T16:24:52.713
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
@@ -16,7 +16,7 @@ F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
 F art/sqlite370.svg 40b7e2fe8aac3add5d56dd86ab8d427a4eca5bcb3fe4f8946cb3794e1821d531
 F auto.def eddf6aef976e2c1a56c0accc3244945e0b22ec6799074c40be160e5a9a5662b0
 F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
-F autoconf/Makefile.in 0c71fcc6b2bd1703799a8e5b8f137ba64aad9bdee43c3cc23598cd0d6ce95715
+F autoconf/Makefile.in 40106236dd97053cbeed7f47880375fb402c89f6dc7b8effe363c791f8ef3ca3
 F autoconf/Makefile.msc 0a071367537dc395285a5d624ac4f99f3a387b27cc5e89752423c0499e15aec4
 F autoconf/README.first f1d3876e9a7852c22f275a6f06814e64934cecbc0b5b9617d64849094c1fd136
 F autoconf/README.txt 7f01dc3915e2d68f329011073662369e62a0938a2c69398807823c57591cb288
@@ -702,7 +702,7 @@ F ext/wasm/tests/opfs/concurrency/test.js d08889a5bb6e61937d0b8cbb78c9efbefbf65a
 F ext/wasm/tests/opfs/concurrency/worker.js 0a8c1a3e6ebb38aabbee24f122693f1fb29d599948915c76906681bb7da1d3d2
 F ext/wasm/wasmfs.make 68999f5bd8c489239592d59a420f8c627c99169bbd6fa16a404751f757b9f702
 F magic.txt 5ade0bc977aa135e79e3faaea894d5671b26107cc91e70783aa7dc83f22f3ba0
-F main.mk 46b638c7639e1be0b1bcb4cbf6c87b88a3b30cc6092cb393c130bc2a5b464c72
+F main.mk 2565d78bf8a8eeea4d6f57d8fa4294983f73fc8b8866fcb706742172b542fdd9
 F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271
 F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504
 F mptest/crash01.test 61e61469e257df0850df4293d7d4d6c2af301421
@@ -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 adf042fba614e1fbe694cf111b7c8f5408eb64031b799870495748c51c7d458c
-Q +334ed723d0fc0b202f79a9746459181f637ca99c54864a4aa11629eecb4b8d0c
-R 4237d77fc38e973d11e33188aecfedaf
+P 467804412230450c63ec47e8f903e58dce971a4752c242c3fa6b1249e535d2ac
+Q +d743410665df8ba962db6e1f245d929b005d0add77be95af3c3c7f87a1c758fb
+R 0f8ef3938c3ebaf76f4692ee90d5a839
 U stephan
-Z ab0e4cdf9606a351803bd0412a5cf86c
+Z d230e95005f5cf3684b9f3a7df0fb526
 # Remove this line to create a well-formed Fossil manifest.
index 4c1cc8d6e54651c38fdbdd414da681bd04d0e135..ef16286767896d3673940a9592f222fdcb2cff9a 100644 (file)
@@ -1 +1 @@
-467804412230450c63ec47e8f903e58dce971a4752c242c3fa6b1249e535d2ac
+d94ad545776ad5cdbd637c1532e0be5f0364eee31484ede97ec4173b2b76f781