Files
tb e42902a619 expect: set channel type to TCL_CHANNEL_VERSION_2 for llvm22
Avoid passing the ExpBlockModeProc function pointer through an object
pointer type and instead move it to the proper place in the struct. Setting
the channel version of expChannelType to 2 in the version field tells tcl's
Tcl_ChannelBlockModeProc() to use the function pointer directly, and avoids
undefined behavior. Using TCL_CHANNEL_VERSION_2 is the conservative choice,
although version 5 would also work.

discussed with stu
tested/ok jca
2026-05-28 01:20:00 +00:00

39 lines
854 B
Makefile

COMMENT = sophisticated scripter based on Tcl/Tk
VERSION = 5.45.4
REVISION = 0
DISTNAME = expect${VERSION}
PKGNAME = expect-${VERSION}
SHARED_LIBS = expect5454 0.0
CATEGORIES = lang
SITES = ${SITE_SOURCEFORGE:=expect/}
HOMEPAGE = https://core.tcl-lang.org/expect/index
# PD
PERMIT_PACKAGE = Yes
WANTLIB += c util m ${MODTCL_WANTLIB}
MODULES = lang/tcl
MODTCL_VERSION = 8.5
LIB_DEPENDS += ${MODTCL_LIB_DEPENDS}
SEPARATE_BUILD = Yes
AUTOCONF_VERSION = 2.69
CONFIGURE_STYLE = autoconf no-autoheader
CONFIGURE_ARGS += --libdir=${MODTCL_TCLDIR} \
--with-tclconfig="${MODTCL_LIBDIR}" \
--with-tclinclude="${MODTCL_INCDIR}"
CONFIGURE_ENV += SHLIB_VERSION=${LIBexpect5454_VERSION} \
CFLAGS="-I${MODTCL_INCDIR}"
FAKE_FLAGS = PKG_DIR=expect
TEST_TARGET = test
post-configure:
${MODTCL_TCLSH_ADJ} ${WRKSRC}/example/*
.include <bsd.port.mk>