+########################################################################
+# This is a main makefile for the "autoconf" bundle of SQLite.
all:
TOP = @abs_top_srcdir@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+
#
# Filename extensions for binaries and libraries
#
AR.flags = cr
CC = @CC@
+
+ENABLE_LIB_SHARED = @ENABLE_LIB_SHARED@
+ENABLE_LIB_STATIC = @ENABLE_LIB_STATIC@
+
CFLAGS = @CFLAGS@ @CPPFLAGS@
#
# $(LDFLAGS.configure) represents any LDFLAGS=... the client passes to
$(AR) $(AR.flags) $@ sqlite3.o
all: $(libsqlite3.LIB)
+install-so-1: $(install-dir.lib) $(libsqlite3.SO)
+ $(INSTALL) $(libsqlite3.SO) "$(install-dir.lib)"
+ @echo "Setting up $(libsqlite3.SO) symlinks..."; \
+ 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 $$?; \
+ ln -s $(libsqlite3.SO).$(PACKAGE_VERSION) $(libsqlite3.SO).0 || exit $$?; \
+ ls -la $(libsqlite3.SO) $(libsqlite3.SO).[03]*; \
+ if [ -e $(libsqlite3.SO).0.8.6 ]; then \
+ echo "ACHTUNG: legacy libtool-compatible install found. Re-linking it..."; \
+ rm -f libsqlite3.la $(libsqlite3.SO).0.8.6 || exit $$?; \
+ ln -s $(libsqlite3.SO).$(PACKAGE_VERSION) $(libsqlite3.SO).0.8.6 || exit $$?; \
+ ls -la $(libsqlite3.SO).0.8.6; \
+ elif [ x1 = "x$(INSTALL_SO_086_LINK)" ]; then \
+ echo "ACHTUNG: installing legacy libtool-style links because INSTALL_SO_086_LINK=1"; \
+ rm -f libsqlite3.la $(libsqlite3.SO).0.8.6 || exit $$?; \
+ ln -s $(libsqlite3.SO).$(PACKAGE_VERSION) $(libsqlite3.SO).0.8.6 || exit $$?; \
+ ls -la $(libsqlite3.SO).0.8.6; \
+ fi
+install-so-0 install-so-:
+install-so: install-so-$(ENABLE_LIB_SHARED)
+install: install-so
+
+install-lib-1: $(install-dir.lib) $(libsqlite3.LIB)
+ $(INSTALL.noexec) $(libsqlite3.LIB) "$(install-dir.lib)"
+install-lib-0 install-lib-:
+install-lib: install-lib-$(ENABLE_LIB_STATIC)
+install: install-lib
+
+
sqlite3$(T.exe): shell.c sqlite3.c
$(CC) -o $@ \
shell.c sqlite3.c \
$(INSTALL.noexec) sqlite3.pc "$(install-dir.pkgconfig)"
install: install-pc
+install-man1: sqlite3.1 $(install-dir.man1)
+ $(INSTALL.noexec) sqlite3.1 "$(install-dir.man1)"
+install: install-man1
+
clean:
rm -f *.o sqlite3$(T.exe)
rm -f $(libsqlite3.LIB) $(libsqlite3.SO)
distclean: clean
- rm -f sqlite3.pc
+ rm -f jimsh0$(T.exe) config.* sqlite3.pc
-DIST_FILES := auto.def autosetup tea \
+DIST_FILES := \
+ README.txt VERSION \
+ auto.def autosetup configure tea \
sqlite3.h sqlite3.c shell.c sqlite3ext.h \
- sqlite3.1 \
- Makefile.msc sqlite3.rc sqlite3rc.h Replace.cs \
- README.txt Makefile.fallback
-
+ Makefile.in Makefile.msc Makefile.fallback \
+ sqlite3.rc sqlite3rc.h Replace.cs \
+ sqlite3.pc.in sqlite3.1
+
+# Maintenance note: dist_name must be sqlite-$(PACKAGE_VERSION) so
+# that tool/mkautoconfamal.sh knows how to find it.
+dist_name = sqlite-$(PACKAGE_VERSION)
+dist_tarball = $(dist_name).tar.gz
dist:
- @echo "Not Yet Implemented: $@"; exit 1
-
-install:
- @echo "Not Yet Implemented: $@"; exit 1
+ rm -fr $(dist_name)
+ mkdir -p $(dist_name)
+ cp -rp $(DIST_FILES) $(dist_name)/.
+ tar czf $(dist_tarball) $(dist_name)
+ rm -fr $(dist_name)
+ ls -l $(dist_tarball)
options {
# <build-modes>
- static=1 => {Disable build of static library (mostly)}
+ static=1 => {Disable build of static library}
+ shared=1 => {Disable build of shared library}
# </build-modes>
# <lib-feature>
threadsafe=1 => {Disable mutexing}
sqlite-handle-icu
sqlite-handle-common-feature-flags
sqlite-show-feature-flags
+
+define ENABLE_LIB_SHARED [opt-bool shared]
+define ENABLE_LIB_STATIC [opt-bool static]
+
sqlite-process-dot-in-files
sqlite-post-config-validation
if {"" ne $with_tclsh} {
# --with-tclsh was provided or found above. Validate it and use it
# to trump any value passed via --with-tcl=DIR.
- if {![file isfile $with_tclsh]} {
- proj-fatal "TCL shell $with_tclsh is not a file"
- } elseif {![file-isexec $with_tclsh]} {
+ if {![file-isexec $with_tclsh]} {
proj-fatal "TCL shell $with_tclsh is not executable"
} else {
define TCLSH_CMD $with_tclsh
# Export a subset of tclConfig.sh to the current TCL-space. If $cfg
# is an empty string, this emits empty-string entries for the
# various options we're interested in.
- eval [exec "$srcdir/tool/tclConfigShToAutoDef.sh" "$cfg"]
+ eval [exec /bin/sh "$srcdir/tool/tclConfigShToAutoDef.sh" "$cfg"]
if {"" eq $with_tclsh && $cfg ne ""} {
# We have tclConfig.sh but no tclsh. Attempt to locate a tclsh
-C Get\slibsqlite3.so\sand\s.a\sbuilding\sin\sthe\sautoconf\sbundle.
-D 2025-01-19T21:47:06.974
+C Add\s'dist'\sand\smissing\s'install'\spieces\sto\sthe\sautoconf\sbundle.
+D 2025-01-20T19:57:32.754
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
F auto.def 7833c0a8630dd3a3410dcc6c8b4d1b63f25d03d6497267624b8a37aba119cb3e
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
-F autoconf/Makefile.in 3fa678c42221c95ac4fc13d60b145840b9b93e7885c7d040669f3e481b5a8e93
+F autoconf/Makefile.in 330a4f6a43ed3076c6e2e0627b17091a1fb1c8ab136fcc46048d6f1662f8f0d8
F autoconf/Makefile.msc ffff61fe851443015ddb6600ab69a9df503cfec25459b336be7ba8c9a9e473f8
F autoconf/README.first 6c4f34fe115ff55d4e8dbfa3cecf04a0188292f7
F autoconf/README.txt 5e946ffb6fbdbb114c81e1bdc862df27fce8beab557d7b0421820b0fe8fc048f
-F autoconf/auto.def a2c428a91f5e3fa699e733fc3c1621ad145f3ac9f785e6518ecfe73a874f0e03
+F autoconf/auto.def 1d740e01d05d34140f0f403201fe625eb6469efb9b5645f068dc6b38cb005c9a
F autoconf/configure.ac ec7fa914c5e74ff212fe879f9bb6918e1234497e05facfb641f30c4d5893b277
F autoconf/tea/Makefile.in ba0556fee8da09c066bad85a4457904e46ee2c2eabaa309c0e83a78f2f151a8e
F autoconf/tea/README.txt 61e62e519579e4a112791354d6d440f8b51ea6db3b0bab58d59f29df42d2dfe3
F autosetup/jimsh0.c d40e381ea4526a067590e7b91bd4b2efa6d4980d286f908054c647b3df4aee14
F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
F autosetup/proj.tcl 50b060ea6760b02ef5cb16650fbe9c1840e16351a0be0ccfc3727c565f74a257
-F autosetup/sqlite-config.tcl 7a5cf6b40c5763c473c2638041ba8812f32062a78545aff223e0913fc4a7c57d
+F autosetup/sqlite-config.tcl d1d3e66be58bf10100abf925e6b6baa98e0bad0fd581a8c0b7fd953996d6b85f
F autosetup/system.tcl 51d4be76cd9a9074704b584e5c9cbba616202c8468cf9ba8a4f8294a7ab1dba9
F configure 9a00b21dfd13757bbfb8d89b30660a89ec1f8f3a79402b8f9f9b6fc475c3303a x
F contrib/sqlitecon.tcl 210a913ad63f9f991070821e599d600bd913e0ad
F tool/max-limits.c cbb635fbb37ae4d05f240bfb5b5270bb63c54439
F tool/merge-test.tcl de76b62f2de2a92d4c1ca4f976bce0aea6899e0229e250479b229b2a1914b176
F tool/mkamalzip.tcl 8aa5ebe7973c8b8774062d34e15fea9815c4cc2ceea3a9b184695f005910876a
-F tool/mkautoconfamal.sh 7a9b54df5f3fbcbef9ff7f4d7bffb1b074425db23f999e1b27bd0b544fe7f2ff
+F tool/mkautoconfamal.sh de0dd50c6c5899330bb1f9c9fcaf71e8fbede3229034839cafc1e8485c5e827d
F tool/mkccode.tcl 210159febe0ef0ecbc53c79833500663ceaba0115b2b374405818dc835b5f84b x
F tool/mkctimec.tcl ef6a67ec82e5b6fc19152a4c79f237227b18bf67ff16d155bac7adb94355d9cf x
F tool/mkkeywordhash.c 6b0be901c47f9ad42215fc995eb2f4384ac49213b1fba395102ec3e999acf559
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 241cdbc40a2f82df53c149849a103a335b0643a65e229a1e80ab90a0e457bb6b
-R b35046aa7e07fc080621217913b53d03
+P 88cee3fc7c8bfd9b6955fb6b2fd6b25660563e4d043ffa5ea18d8abe91afdb7f
+Q +239a3d1573f4cb720308018280b2add54034e69e38fe7060a7238875eee4f1c9
+R e0c333605d60d87f3232edd28cb1fd40
U stephan
-Z f3e60d1f16fabf25d54188672248bb86
+Z 675925c45ad830a2f82ac547ac838105
# Remove this line to create a well-formed Fossil manifest.
-88cee3fc7c8bfd9b6955fb6b2fd6b25660563e4d043ffa5ea18d8abe91afdb7f
+16fa20413e3f3f0b6ea5d97022945843d1f785ac0142836f2a3651fd1917385f
TMPSPACE=./mkpkg_tmp_dir
VERSION=`cat $TOP/VERSION`
-HASH=`sed 's/^\(..........\).*/\1/' $TOP/manifest.uuid`
-DATETIME=`grep '^D' $TOP/manifest | sed -e 's/[^0-9]//g' -e 's/\(............\).*/\1/'`
+HASH=`cut -c1-10 $TOP/manifest.uuid`
+DATETIME=`grep '^D' $TOP/manifest | cut -c3- | tr -c -d '[0-9]'`
# Verify that the version number in the TEA autoconf file is correct.
# Fail with an error if not.
autoconf
rm -rf autom4te.cache
-echo "--------------- TODO: -----------------"
-cat <<EOF
cd ../
./configure && make dist
-tar -xzf sqlite-$VERSION.tar.gz
+tar xzf sqlite-$VERSION.tar.gz
mv sqlite-$VERSION $TARBALLNAME
-tar -czf $TARBALLNAME.tar.gz $TARBALLNAME
+tar czf $TARBALLNAME.tar.gz $TARBALLNAME
mv $TARBALLNAME.tar.gz ..
cd ..
ls -l $TARBALLNAME.tar.gz
-EOF