[Bug 284653] databases/sqlite3: fix build with DEFAULT_VERSIONS+=tcltk=9.0

From: <bugzilla-noreply_at_freebsd.org>
Date: Sat, 08 Feb 2025 11:05:46 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=284653

            Bug ID: 284653
           Summary: databases/sqlite3: fix build with
                    DEFAULT_VERSIONS+=tcltk=9.0
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: dim@FreeBSD.org
                CC: pavelivolkov@gmail.com
             Flags: maintainer-feedback?(pavelivolkov@gmail.com)
                CC: pavelivolkov@gmail.com

When using tcltk 9.0 as default, building databases/sqlite3 with all
options set to default falls over with:

  ===> CONFIGURE_ARGS=--enable-load-extension --enable-fts3 --enable-fts4
--enable-fts5 --disable-geopoly --enable-editline --disable-readline
--enable-rtree --disable-session --disable-static --disable-tcl --without-tcl
--enable-threadsafe --enable-tempstore=no --disable-update-limit
--prefix=/usr/local
  ===> CFLAGS=-O2 -pipe -march=haswell  -fstack-protector-strong -isystem
/usr/local/include -fno-strict-aliasing
  ===> CPPFLAGS=-DSQLITE_ENABLE_DBPAGE_VTAB=1 -DSQLITE_ENABLE_DBSTAT_VTAB=1
-DSQLITE_DQS=0 -DSQLITE_ENABLE_FTS3_TOKENIZER=1
-DSQLITE_ENABLE_FTS3_PARENTHESIS=1 -DSQLITE_ENABLE_COLUMN_METADATA=1
-DSQLITE_SECURE_DELETE=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 -DSQLITE_USE_URI=1
-DSQLITE_STRICT_SUBTYPE=1 -DHAVE_FCHOWN=1  -DHAVE_FDATASYNC=1  -DHAVE_ISNAN=1 
-DHAVE_GMTIME_R=1  -DHAVE_LOCALTIME_R=1  -DHAVE_LSTAT=1 
-DHAVE_MALLOC_USABLE_SIZE=1  -DHAVE_PREAD=1  -DHAVE_PWRITE=1  -DHAVE_USLEEP=1 
-DHAVE_STRCHRNUL=1  -DHAVE_STRERROR_R=1  -DHAVE_READLINK=1  -DSQLITE_OS_UNIX=1
-isystem /usr/local/include
  ===> LDFLAGS= -fstack-protector-strong
  ===> LIBS=-lm -lpthread -L/usr/local/lib
  ===> TCL_VER=9.0
  ===> TCLSH=/usr/local/bin/tclsh9.0
  ===> TCL_INCLUDEDIR=/usr/local/include/tcl9.0
  ===> TCL_LIBDIR=/usr/local/lib/tcl9.0
  ===>  Building for sqlite3-3.46.1,1
  cc  -O2 -pipe -march=haswell -fstack-protector-strong -isystem
/usr/local/include -fno-strict-aliasing -o mkkeywordhash
-DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS4
-DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY -DSQLITE_ENABLE_RTREE
-DSQLITE_ENABLE_DBPAGE_VTAB=1 -DSQLITE_ENABLE_DBSTAT_VTAB=1
-DSQLITE_ENABLE_FTS3_TOKENIZER=1 -DSQLITE_ENABLE_FTS3_PARENTHESIS=1
-DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 
/wrkdirs/usr/ports/databases/sqlite3/work-default/sqlite-src-3460100/tool/mkkeywordhash.c
  ./mkkeywordhash >keywordhash.h
  cc  -O2 -pipe -march=haswell -fstack-protector-strong -isystem
/usr/local/include -fno-strict-aliasing -o lemon
/wrkdirs/usr/ports/databases/sqlite3/work-default/sqlite-src-3460100/tool/lemon.c
  cp
/wrkdirs/usr/ports/databases/sqlite3/work-default/sqlite-src-3460100/tool/lempar.c
.
  cp
/wrkdirs/usr/ports/databases/sqlite3/work-default/sqlite-src-3460100/src/parse.y
.
  ./lemon -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_FTS3
-DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_GEOPOLY
-DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_DBPAGE_VTAB=1
-DSQLITE_ENABLE_DBSTAT_VTAB=1 -DSQLITE_ENABLE_FTS3_TOKENIZER=1
-DSQLITE_ENABLE_FTS3_PARENTHESIS=1 -DSQLITE_ENABLE_COLUMN_METADATA=1
-DSQLITE_ENABLE_UNLOCK_NOTIFY=1  -S parse.y
  sh
/wrkdirs/usr/ports/databases/sqlite3/work-default/sqlite-src-3460100/tool/cktclsh.sh
8.4 tclsh
 
/wrkdirs/usr/ports/databases/sqlite3/work-default/sqlite-src-3460100/tool/cktclsh.sh:
tclsh: not found
  ERROR: This makefile target requires tclsh 8.4 or later.

Even though the port's TCL option is _not_ enabled, the sqlite3 build
scripts still use the value of TCLSH_CMD. Therefore, pass the variable
ac_cv_prog_TCLSH_CMD=${TCLSH} to the configure script unconditionally.

-- 
You are receiving this mail because:
You are the assignee for the bug.