From 52d41ecd2c0085ff99dd93b41fa9ff917b1fda66 Mon Sep 17 00:00:00 2001 From: Maddie Busig Date: Sun, 11 May 2025 13:01:42 -0700 Subject: [PATCH] Add PKGBUILD --- PKGBUILD | 56 ++++++++++++++++++++++++++++++++++++++++++++++ tclreadline.c.diff | 22 ++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 PKGBUILD create mode 100644 tclreadline.c.diff diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000..8287557 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,56 @@ +# Maintainer: Madeline Busig +# Contributor: mickele + +pkgname=tclreadline +pkgver=2.3.8 +pkgrel=3 +pkgdesc="GNU readline for interactive tcl shells" +url="https://github.com/flightaware/tclreadline" +arch=('x86_64' 'i686') +license=('BSD') +depends=('tcl' 'readline') +optdepends=() +makedepends=('git') +conflicts=() +replaces=() +backup=() +#install='' +source=( + "https://github.com/flightaware/${pkgname}/archive/v${pkgver}.tar.gz" + 'tclreadline.c.diff' +) + +noextract=('tclreadline.c.diff') + +sha256sums=( + 'a64e0faed5957b8e1ac16f179948e21cdd6d3b8313590b7ab049a3192ab864fb' + 'SKIP' +) + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + autoreconf -ivf + + patch 'tclreadline.c' "${srcdir}/tclreadline.c.diff" +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # tk-existence seems to have no impact on build, but breaks configure otherwise + TKOPT="" + pkgconf tk || TKOPT="--without-tk" + + ./configure --prefix=/usr \ + --with-tcl=/usr/lib \ + --with-tcl-includes=/usr/include/tcl \ + ${TKOPT} + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + install -m644 -D -t "${pkgdir}/usr/share/doc/${pkgname}" "${srcdir}/${pkgname}-${pkgver}/"{COPYING,sample.tclshrc,SCENARIO} +} diff --git a/tclreadline.c.diff b/tclreadline.c.diff new file mode 100644 index 0000000..b2d6ced --- /dev/null +++ b/tclreadline.c.diff @@ -0,0 +1,22 @@ +--- tclreadline.c.orig 2019-11-21 14:54:07.000000000 -0800 ++++ tclreadline.c 2025-05-11 12:52:58.741636853 -0700 +@@ -354,16 +354,16 @@ + Tcl_WrongNumArgs(interp, 2, objv, "?boolean?"); + return TCL_ERROR; + } else if (3 == objc) { +- int bool = tclrl_use_builtin_completer; ++ int boolval = tclrl_use_builtin_completer; + if (TCL_OK != Tcl_GetBoolean(interp, + Tcl_GetStringFromObj(objv[2], 0), +- &bool)) { ++ &boolval)) { + Tcl_AppendResult(interp, + "wrong # args: should be a boolean value.", + (char*) NULL); + return TCL_ERROR; + } else { +- tclrl_use_builtin_completer = bool; ++ tclrl_use_builtin_completer = boolval; + } + } + Tcl_AppendResult(interp, tclrl_use_builtin_completer ? "1" : "0",