From: stephan Date: Thu, 31 Oct 2024 07:20:22 +0000 (+0000) Subject: Add the .POSIX special target to the main makefiles to hint to the make impl that... X-Git-Tag: major-relase~258 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=07cdceed8e1c8979e83065d8fdb7e48f4b2d0416;p=thirdparty%2Fsqlite.git Add the .POSIX special target to the main makefiles to hint to the make impl that it should behave POSIXly-correct. Fix the default file extension for static libs in main.mk. FossilOrigin-Name: 2c615d3a3206536f12c0723b8997bda9ab61f95a468f77697856213b46c0135e --- diff --git a/Makefile.in b/Makefile.in index 7de1ff39d4..052f4fc833 100644 --- a/Makefile.in +++ b/Makefile.in @@ -11,10 +11,9 @@ # The docs for many of its variables are in the primary static # makefile, main.mk (which this one includes at runtime). # +.POSIX: #maintenance reminder: X:=Y is not POSIX-portable all: -clean: ######################################################################## -#XX# Lines starting with #XX# are TODOs for the port to autosetup. # # Known TODOs/FIXMEs/TOIMPROVEs for the autosetup port, in no # particular order... @@ -27,31 +26,14 @@ clean: # # - Replace the autotools-specific distribution deliverable(s). # -# - Provide Makefile.msc, Makefile.linux-gcc, and any required similar -# makefile stubs for environments where the configure script will not -# run. The core makefile rules in main.mk "should" apply as-is for -# most platforms. We can potentially generate those makefiles, along -# with main.mk, like we do in the Fossil project. -# # - Confirm whether cross-compilation works and patch it # appropriately. # -# - There are some lingering dependencies issues which cause a -# re-configure to trigger more often than it should. This is -# especially a problem in parallel builds, which may launch multiple -# re-configures in parallel. GNU Make offers ways of controlling -# that, but we're limited to POSIX Make compatibility here. The -# automatic reconfigures are not too onerous, though, because they're -# much, much faster than Autotools configure runs. -# -# - Add target(s) to dump out specific vars, e.g. SQLITE_OPT, as -# requested at https://sqlite.org/forum/forumpost/75cb3179216f8d86. -# This would also be useful for the ext/wasm build, which fishes -# SHELL_OPT out of the makefile. -# -# # Maintenance reminders: # +# - This makefile should remain as POSIX-make-compatible as possible: +# https://pubs.opengroup.org/onlinepubs/9799919799/utilities/make.html +# # - When using the X?=Y variable assignment formulation, please test # the build with both GNU make and a POSIX make (e.g. BSD make, # a.k.a. bmake). On at least one occassion, that formulation has led diff --git a/main.mk b/main.mk index 359ded7c39..454528ba41 100644 --- a/main.mk +++ b/main.mk @@ -18,6 +18,8 @@ # invoked. This file will use defaults, very possibly invalid, for any # which are not defined. ######################################################################## +.POSIX: #maintenance reminder: X:=Y is not POSIX-portable +all: # # $(TOP) = # @@ -71,7 +73,7 @@ B.exe ?= # The DLL resp. static library counterparts of $(B.exe). # B.dll ?= .so -B.lib ?= .lib +B.lib ?= .a # # $(T.exe) = # diff --git a/manifest b/manifest index 1d4baa98c7..0992e9b86b 100644 --- a/manifest +++ b/manifest @@ -1,9 +1,9 @@ -C Add\smore\sdeps\sto\sT.tcl.env.sh\sso\sthat\sit\sgets\srebuilt\sif\sconfigure\sis\srun\swith\sa\sdifferent\s--with-tcl\svalue.\sRemove\sall\sreferences\sto\sthe\ssuperfluous\sXYZdir\smakefile\svars\sconventionally\sset\sby\sthe\sautotools\s(they're\sjust\snoise\sin\sthis\sbuild). -D 2024-10-31T07:01:31.541 +C Add\sthe\s.POSIX\sspecial\starget\sto\sthe\smain\smakefiles\sto\shint\sto\sthe\smake\simpl\sthat\sit\sshould\sbehave\sPOSIXly-correct.\sFix\sthe\sdefault\sfile\sextension\sfor\sstatic\slibs\sin\smain.mk. +D 2024-10-31T07:20:22.577 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md c5b4009dca54d127d2d6033c22fd9cc34f53bedb6ef12c7cbaa468381c74ab28 -F Makefile.in ec65af679ae42b4ddf521a1b0221240b4546d6c479115785001af5774dc0b709 +F Makefile.in caeee287b060f652a9b69ccaad783729e2d6b28c7dfa82881837dc3fad1ed78f F Makefile.linux-generic bd3e3cacd369821a6241d4ea1967395c962dfe3057e38cb0a435cee0e8b789d0 F Makefile.msc a92237976eb92c5efaa0dd2524746aec12c196e12df8d4dbff9543a4648c3312 F README.md c3c0f19532ce28f6297a71870f3c7b424729f0e6d9ab889616d3587dd2332159 @@ -697,7 +697,7 @@ F ext/wasm/tests/opfs/concurrency/test.js d08889a5bb6e61937d0b8cbb78c9efbefbf65a F ext/wasm/tests/opfs/concurrency/worker.js 0a8c1a3e6ebb38aabbee24f122693f1fb29d599948915c76906681bb7da1d3d2 F ext/wasm/wasmfs.make bc8bb227f35d5bd3863a7bd2233437c37472a0d81585979f058f9b9b503bef35 F magic.txt 5ade0bc977aa135e79e3faaea894d5671b26107cc91e70783aa7dc83f22f3ba0 -F main.mk 3877df8c031fbb957cab9a07656d49757a6f2dba58c00519fd63ba34510de541 +F main.mk fea07cfa9091e5029b30980530353ba85a644acebe0ff9061c1bde7115863a8a F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271 F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504 F mptest/crash01.test 61e61469e257df0850df4293d7d4d6c2af301421 @@ -2198,8 +2198,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7 F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 731d333c224e70190dadd214de1970ea541a3d716d1d7ff2c0ef6c63b8be9b13 -R e25e71c570d0b383f2dd1972c79d58ed +P 831665101e9c62cf49c173cb11705033eb9135a6a6965718285d81113ee5ba4c +R 4a69f33cb347363bc3407201453ac489 U stephan -Z a1888b91dcad0995a429adcb5d8c79e4 +Z 4eb25a548225e7e13c3bd2c622a6f4b0 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 21ab449f76..2624fc31ab 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -831665101e9c62cf49c173cb11705033eb9135a6a6965718285d81113ee5ba4c +2c615d3a3206536f12c0723b8997bda9ab61f95a468f77697856213b46c0135e