Enhance the rpath configure check to honor --exec-prefix=... Remove some debugging code and move other debugging code around.

FossilOrigin-Name: a8c1a82b56412a4277a3c9bf2b256d3bd22bd8aca9096b8d08fcc0bf7d9364cb
This commit is contained in:
stephan 2024-11-05 08:21:47 +00:00
parent 3205eab2f2
commit e69d98df22
4 changed files with 49 additions and 47 deletions

View File

@ -217,12 +217,6 @@ proj-xfer-options-aliases {
with-readline-inc => with-readline-cflags with-readline-inc => with-readline-cflags
with-readline-lib => with-readline-ldflags with-readline-lib => with-readline-ldflags
} }
#
# "Re-export" the autoconf-conventional --XYZdir flags into something
# which is more easily overridable from a make invocation. See the docs
# for [proj-redirect-autoconf-dir-vars] for the explanation of why.
#
proj-redirect-autoconf-dir-vars
set srcdir $::autosetup(srcdir) set srcdir $::autosetup(srcdir)
set top_srcdir [get-define abs_top_srcdir] set top_srcdir [get-define abs_top_srcdir]
@ -1204,6 +1198,18 @@ if {0 && "" ne [get-define CFLAGS_JIMSH]} {
define-append CFLAGS_JIMSH -DHAVE_LONG_LONG; # SQLite relies on long long, so we know it's available define-append CFLAGS_JIMSH -DHAVE_LONG_LONG; # SQLite relies on long long, so we know it's available
}; # JimTCL }; # JimTCL
########################################################################
# "Re-export" the autoconf-conventional --XYZdir flags into something
# which is more easily overridable from a make invocation. See the docs
# for [proj-redirect-autoconf-dir-vars] for the explanation of why.
#
# We do this late in the config process, immediately before we export
# the Makefile and other generated files, so that configure tests
# which may make use of the autotools-conventional flags
# (e.g. [proj-check-rpath]) may do so before we "mangle" them here.
proj-redirect-autoconf-dir-vars
######################################################################## ########################################################################
# Generate the output files. # Generate the output files.
# #
@ -1224,9 +1230,24 @@ if {0} {
-none * -none *
proj-touch sqlite_cfg.h ; # help avoid frequent unnecessary @SQLITE_AUTORECONFIG@ proj-touch sqlite_cfg.h ; # help avoid frequent unnecessary @SQLITE_AUTORECONFIG@
} }
#TODO proj-make-from-dot-in ext/wasm/GNUmakefile
if {"" ne $DUMP_DEFINES_JSON} { ########################################################################
# Some build-dev/debug-only output
proj-if-opt-truthy dump-defines {
msg-result "--dump-defines is creating $::DUMP_DEFINES_TXT"
make-config-header $::DUMP_DEFINES_TXT \
-bare {SQLITE_OS* SQLITE_DEBUG USE_*} \
-str {BIN_* CC LD AR LDFLAG* OPT_*} \
-auto {*}
# achtung: ^^^^ whichever SQLITE_OS_foo flag which is set to 0 will
# get _undefined_ here unless it's part of the -bare set.
if {0} {
foreach x [all-defines] {
puts "\t$x"
}
}
if {"" ne $DUMP_DEFINES_JSON} {
msg-result "--dump-defines is creating $::DUMP_DEFINES_JSON"
######################################################################## ########################################################################
# Dump config-defines.json... # Dump config-defines.json...
# Demonstrate (mis?)handling of spaces in JSON-export array values: # Demonstrate (mis?)handling of spaces in JSON-export array values:
@ -1247,21 +1268,5 @@ if {"" ne $DUMP_DEFINES_JSON} {
proj-dump-defs-json $DUMP_DEFINES_JSON {*}$dumpDefsOpt proj-dump-defs-json $DUMP_DEFINES_JSON {*}$dumpDefsOpt
undefine OPT_FEATURE_FLAGS.list undefine OPT_FEATURE_FLAGS.list
undefine OPT_SHELL.list undefine OPT_SHELL.list
}
########################################################################
# Some build-dev/debug-only output
proj-if-opt-truthy dump-defines {
msg-result "--dump-defines is creating $::DUMP_DEFINES_TXT"
make-config-header $::DUMP_DEFINES_TXT \
-bare {SQLITE_OS* SQLITE_DEBUG USE_*} \
-str {BIN_* CC LD AR LDFLAG* OPT_*} \
-auto {*}
# achtung: ^^^^ whichever SQLITE_OS_foo flag which is set to 0 will
# get _undefined_ here unless it's part of the -bare set.
if {0} {
foreach x [all-defines] {
puts "\t$x"
}
} }
} }

View File

@ -790,16 +790,18 @@ proc proj-check-emsdk {} {
# flag. Defines LDFLAGS_RPATH to that/those flag(s) or an empty # flag. Defines LDFLAGS_RPATH to that/those flag(s) or an empty
# string. Returns 1 if it finds an option, else 0. # string. Returns 1 if it finds an option, else 0.
# #
# By default, the rpath is set to $prefix/lib. However, if # By default, the rpath is set to $prefix/lib. However, if either of
# --libdir=... is explicitly passed to configure then that value is # --exec-prefix=... or --libdir=... are explicitly passed to
# used. # configure then [get-define libdir] is used (noting that it derives
# from exec-prefix by default).
# #
# Achtung: we have seen platforms which report that a given option # Achtung: we have seen platforms which report that a given option
# checked here will work but then fails at build-time, and the current # checked here will work but then fails at build-time, and the current
# order of checks reflects that. # order of checks reflects that.
proc proj-check-rpath {} { proc proj-check-rpath {} {
set rc 1 set rc 1
if {[proj-opt-was-provided libdir]} { if {[proj-opt-was-provided libdir]
|| [proj-opt-was-provided exec-prefix]} {
set lp "[get-define libdir]" set lp "[get-define libdir]"
} else { } else {
set lp "[get-define prefix]/lib" set lp "[get-define prefix]/lib"
@ -1090,7 +1092,6 @@ proc proj-redirect-autoconf-dir-vars {} {
# [subst] command. i.e. they must use the form ${X}. # [subst] command. i.e. they must use the form ${X}.
foreach {flag makeVar makeDeref} { foreach {flag makeVar makeDeref} {
exec-prefix exec_prefix ${prefix} exec-prefix exec_prefix ${prefix}
libdir libdir ${exec_prefix}/lib
datadir datadir ${prefix}/share datadir datadir ${prefix}/share
mandir mandir ${datadir}/man mandir mandir ${datadir}/man
includedir includedir ${prefix}/include includedir includedir ${prefix}/include
@ -1104,15 +1105,11 @@ proc proj-redirect-autoconf-dir-vars {} {
infodir infodir ${datadir}/info infodir infodir ${datadir}/info
libexecdir libexecdir ${exec_prefix}/libexec libexecdir libexecdir ${exec_prefix}/libexec
} { } {
# puts "flag=$flag var=$makeVar makeDeref=$makeDeref"
if {[proj-opt-was-provided $flag]} { if {[proj-opt-was-provided $flag]} {
#set x "+"
define $makeVar [opt-val $flag] define $makeVar [opt-val $flag]
} else { } else {
#set x "~"
define $makeVar $makeDeref define $makeVar $makeDeref
} }
#puts "$x $makeVar = [get-define $makeVar]"
} }
} }

View File

@ -1,5 +1,5 @@
C Roll\sback\s[47e50fa84dacf83c]\sfor\sconsistency\swith\sthe\slegacy\sbuild.\ssqlite3.pc\sis\snow\sgenerated\sequivalently\sto\sprior\sversions. C Enhance\sthe\srpath\sconfigure\scheck\sto\shonor\s--exec-prefix=...\sRemove\ssome\sdebugging\scode\sand\smove\sother\sdebugging\scode\saround.
D 2024-11-05T08:14:27.481 D 2024-11-05T08:21:47.035
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md c5b4009dca54d127d2d6033c22fd9cc34f53bedb6ef12c7cbaa468381c74ab28 F LICENSE.md c5b4009dca54d127d2d6033c22fd9cc34f53bedb6ef12c7cbaa468381c74ab28
@ -13,7 +13,7 @@ F art/icon-80x90.gif 65509ce3e5f86a9cd64fe7fca2d23954199f31fe44c1e09e208c80fb83d
F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2 F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90 F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2 F art/sqlite370.jpg d512473dae7e378a67e28ff96a34da7cb331def2
F auto.def dd8555a00b22645f0ec06bde38f36fb4a9625fb2ce0950d79dc13c3051f242d1 F auto.def 3f6aec871699bc3e54f7dc6f4496daf4b435d4b8326bfed51ccabd12b633988c
F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903 F autoconf/INSTALL 83e4a25da9fd053c7b3665eaaaf7919707915903
F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347 F autoconf/Makefile.am adedc1324b6a87fdd1265ddd336d2fb7d4f36a0e77b86ea553ae7cc4ea239347
F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac F autoconf/Makefile.fallback 22fe523eb36dfce31e0f6349f782eb084e86a5620b2b0b4f84a2d6133f53f5ac
@ -49,7 +49,7 @@ F autosetup/cc.tcl c0fcc50ca91deff8741e449ddad05bcd08268bc31177e613a6343bbd1fd3e
F autosetup/default.auto 5cdf016de2140e50f1db190a02039dc42fb390af1dda4cc4853e3042a9ef0e82 F autosetup/default.auto 5cdf016de2140e50f1db190a02039dc42fb390af1dda4cc4853e3042a9ef0e82
F autosetup/jimsh0.c d40e381ea4526a067590e7b91bd4b2efa6d4980d286f908054c647b3df4aee14 F autosetup/jimsh0.c d40e381ea4526a067590e7b91bd4b2efa6d4980d286f908054c647b3df4aee14
F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba F autosetup/pkg-config.tcl 4e635bf39022ff65e0d5434339dd41503ea48fc53822c9c5bde88b02d3d952ba
F autosetup/proj.tcl 0bcced417a59fc56da5e6cc6a83e10cca4e10710c0f2f1ae9bc82b366d17699d F autosetup/proj.tcl 16138ac9c8bc071613b260a18f46ada9a31ed3b496a7ae6f403fd9d49d588aea
F autosetup/system.tcl 51d4be76cd9a9074704b584e5c9cbba616202c8468cf9ba8a4f8294a7ab1dba9 F autosetup/system.tcl 51d4be76cd9a9074704b584e5c9cbba616202c8468cf9ba8a4f8294a7ab1dba9
F autosetup/tmake.auto eaebc74ad538dfdd3c817c27eefc31930c20510c4f3a3704071f6cb0629ed71f F autosetup/tmake.auto eaebc74ad538dfdd3c817c27eefc31930c20510c4f3a3704071f6cb0629ed71f
F autosetup/tmake.tcl a275793ec1b6f8708179af0acef1f6f10d46c2920739743f7a8720c6d700c7a9 F autosetup/tmake.tcl a275793ec1b6f8708179af0acef1f6f10d46c2920739743f7a8720c6d700c7a9
@ -2199,8 +2199,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139 F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
P 6c6fa3adfee6ec2c57dc76461e7c97416b4fad45772ce367d223cc67e66049f6 P af79d11e389b4772a401f6c2cbde42de95287addf7077ad4db55d39cc504f9fe
R 91f8f712e56b95f1d0840a661628f372 R 8f4205f94f3bfdb54022edc4daed40c7
U stephan U stephan
Z 5ec50233ebe03347ef3d5c1ede9ca068 Z 23df65f4992f1d4489c83b5031514bec
# Remove this line to create a well-formed Fossil manifest. # Remove this line to create a well-formed Fossil manifest.

View File

@ -1 +1 @@
af79d11e389b4772a401f6c2cbde42de95287addf7077ad4db55d39cc504f9fe a8c1a82b56412a4277a3c9bf2b256d3bd22bd8aca9096b8d08fcc0bf7d9364cb