summaryrefslogtreecommitdiff
path: root/dev-lang/tcl
diff options
context:
space:
mode:
authorAlfredo Tupone <tupone@gentoo.org>2025-08-29 18:34:45 +0200
committerAlfredo Tupone <tupone@gentoo.org>2025-08-29 18:40:33 +0200
commitd60cf33ad0f72b17fb3f6c48bda527c43d35abdb (patch)
tree0c7f2653100f34a6041b1eceaeab4dff916dfd38 /dev-lang/tcl
parenta382f2d3d366c198c7a2e8b0f05c88a53a89a618 (diff)
downloadgentoo-d60cf33ad0f72b17fb3f6c48bda527c43d35abdb.tar.gz
gentoo-d60cf33ad0f72b17fb3f6c48bda527c43d35abdb.tar.bz2
gentoo-d60cf33ad0f72b17fb3f6c48bda527c43d35abdb.zip
dev-lang/tcl: add 8.6.17
Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
Diffstat (limited to 'dev-lang/tcl')
-rw-r--r--dev-lang/tcl/Manifest1
-rw-r--r--dev-lang/tcl/tcl-8.6.17.ebuild135
2 files changed, 136 insertions, 0 deletions
diff --git a/dev-lang/tcl/Manifest b/dev-lang/tcl/Manifest
index 8fd41311c22e..96307dd6de86 100644
--- a/dev-lang/tcl/Manifest
+++ b/dev-lang/tcl/Manifest
@@ -2,3 +2,4 @@ DIST tcl-core8.6.13-src.tar.gz 6370805 BLAKE2B f5af3c0fa2d52c09ab16578c9147cb5ac
DIST tcl-core8.6.14-src.tar.gz 7081644 BLAKE2B 7148c889954d78774c4352ceae5d814498a1670423a2b3ed288786dce97b87d42395b817ef92fc6561358d84736619ef03d1c2e2c502433c4b3f5eb7c80a62e8 SHA512 495b13af817c68d81533c45345d003efd711ddbc5c1a3d1fbbdb10452fa62d91e649f77835239e547355ade84abfea6ae843d2e76de6108532054170a672ddc0
DIST tcl-core8.6.15-src.tar.gz 7019390 BLAKE2B e88b974c005e3acd680f672a13b76bd736730f13c4af1c4538390c0d624b1cd752c8305ac2f6d7f7df5d2fbb43b08614b715c7688ea61184d552cd77117d8533 SHA512 9ca62941405ea2bca3099bf65f03a87071f3d88ff23367ab8af80bba7692caca5f63ec4d9c2282b7ba3433124c5f952578a763888e0a9ba9205e52248539e9e7
DIST tcl-core8.6.16-src.tar.gz 7022932 BLAKE2B 9a20cc72a2654c8b4f2c9088fabef13321c414d4cc1125afbb0151ae198c6e665a7f18ffa798fcf2ed0ae1160e586819b834d745c5dfbb2b2ed5dc6d0e022d4d SHA512 b25de457523e1f884326db37acebc329d5f1a8ac2a2e0fbdfcefafc76de202ff8d1efe8ff687afa5da486c0a95ab4bde893aad6f70f0e570fa6911c5cf56d458
+DIST tcl-core8.6.17-src.tar.gz 7030881 BLAKE2B 3120f53dfe238a750eface9b6f2c715432e8a640b65748c2ccafcebb0c8f4b9ee49d214fa708ea3cf17a7563e8a993a7b7fc1dbdde70055358e1c0d35a62efb4 SHA512 cc6ef374b4d005365d2453a1d25b22d9961631c8f4081ccdfba43c55901edd9f925d0ef66132b7d9d6c285445738028def243e727ecc5ffad94fb4851e5ae735
diff --git a/dev-lang/tcl/tcl-8.6.17.ebuild b/dev-lang/tcl/tcl-8.6.17.ebuild
new file mode 100644
index 000000000000..bdce8778fd3e
--- /dev/null
+++ b/dev-lang/tcl/tcl-8.6.17.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Please bump with dev-lang/tk!
+
+inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs
+
+MY_P="${PN}${PV}"
+
+DESCRIPTION="Tool Command Language"
+HOMEPAGE="http://www.tcl.tk/"
+SRC_URI="https://downloads.sourceforge.net/tcl/${PN}-core${PV}-src.tar.gz"
+
+SPARENT="${WORKDIR}/${MY_P}"
+S="${SPARENT}"/unix
+
+LICENSE="tcltk Spencer-99"
+SLOT="0/8.6"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="debug +threads"
+
+RDEPEND=">=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-8.6.10-multilib.patch
+ "${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971
+ "${FILESDIR}"/${PN}-8.6.9-include-spec.patch # Bug 731120
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 opendir64 rewinddir64 closedir64 # used to test for Large File Support
+)
+
+src_prepare() {
+ # By dropping the compat directory a lot of licensing and attribution burden
+ # (BSD-3, zlib,...) is lifted from the user
+ find \
+ "${SPARENT}"/compat/* \
+ "${SPARENT}"/doc/try.n \
+ -delete || die
+
+ # Drop -Werror
+ sed -i \
+ -e "s: -Werror::g" \
+ dltest/Makefile.in \
+ || die
+
+ pushd "${SPARENT}" &>/dev/null || die
+ default
+ popd &>/dev/null || die
+
+ # httpold tests require netowk
+ rm ../tests/httpold.test \
+ ../tests/env.test \
+ ../tests/http.test \
+ || die
+
+ # workaround stack check issues, bug #280934
+ use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1"
+
+ tc-export CC
+
+ sed \
+ -e '/chmod/s:555:755:g' \
+ -i Makefile.in || die
+
+ sed \
+ -e 's:-O[2s]\?::g' \
+ -i tcl.m4 || die
+
+ mv configure.{in,ac} || die
+
+ eautoconf
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ # We went ahead and deleted the whole compat/ subdir which means
+ # the configure tests to detect broken versions need to pass (else
+ # we'll fail to build). This comes up when cross-compiling, but
+ # might as well get a minor configure speed up normally.
+ export ac_cv_func_memcmp_working="yes"
+ export tcl_cv_str{str,toul,tod}_unbroken="ok"
+ export tcl_cv_strtod_buggy="no"
+
+ econf \
+ $(use_enable threads) \
+ $(use_enable debug symbols)
+}
+
+multilib_src_install() {
+ #short version number
+ local v1=$(ver_cut 1-2)
+ local mylibdir=$(get_libdir)
+
+ S= default
+ # fix the tclConfig.sh to eliminate refs to the build directory
+ # and drop unnecessary -L inclusion to default system libdir
+
+ sed \
+ -e "/^TCL_BUILD_LIB_SPEC=/s:-L$(pwd) *::g" \
+ -e "/^TCL_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
+ -e "/^TCL_SRC_DIR=/s:${SPARENT}:${EPREFIX}/usr/${mylibdir}/tcl${v1}/include:g" \
+ -e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \
+ -e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
+ -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \
+ -e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \
+ -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die
+ if use prefix && [[ ${CHOST} != *-darwin* ]] ; then
+ sed \
+ -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \
+ -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \
+ -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die
+ fi
+
+ # install private headers
+ insinto /usr/${mylibdir}/tcl${v1}/include/unix
+ doins *.h
+ insinto /usr/${mylibdir}/tcl${v1}/include/generic
+ doins "${SPARENT}"/generic/*.h
+ rm -f "${ED}"/usr/${mylibdir}/tcl${v1}/include/generic/{tcl,tclDecls,tclPlatDecls}.h || die
+
+ # install symlink for libraries
+ dosym libtcl${v1}$(get_libname) /usr/${mylibdir}/libtcl$(get_libname)
+ dosym libtclstub${v1}.a /usr/${mylibdir}/libtclstub.a
+
+ if multilib_is_native_abi; then
+ dosym tclsh${v1} /usr/bin/tclsh
+ dodoc "${SPARENT}"/{ChangeLog*,README.md,changes}
+ fi
+}