summaryrefslogtreecommitdiff
path: root/dev-lang
diff options
context:
space:
mode:
authorJeroen Roovers <jer@gentoo.org>2018-07-30 07:55:15 +0200
committerJeroen Roovers <jer@gentoo.org>2018-07-30 07:55:29 +0200
commitaf0a22e213a2def219aa8bb6bc8fcd0930dbf704 (patch)
treefe841419e3948cfc5cab5cd2d1e917181219d09d /dev-lang
parenteedb960b034d2af4d7a735fe623b851bc3ba2f6b (diff)
downloadgentoo-af0a22e213a2def219aa8bb6bc8fcd0930dbf704.tar.gz
gentoo-af0a22e213a2def219aa8bb6bc8fcd0930dbf704.tar.xz
dev-lang/tk: Version 8.6.8.
Package-Manager: Portage-2.3.44, Repoman-2.3.10
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/tk/Manifest1
-rw-r--r--dev-lang/tk/files/tk-8.6.8-libieee.patch15
-rw-r--r--dev-lang/tk/tk-8.6.8.ebuild146
3 files changed, 162 insertions, 0 deletions
diff --git a/dev-lang/tk/Manifest b/dev-lang/tk/Manifest
index a4bc999b117..04b094fe969 100644
--- a/dev-lang/tk/Manifest
+++ b/dev-lang/tk/Manifest
@@ -3,3 +3,4 @@ DIST tk8.5.17-src.tar.gz 4095985 BLAKE2B 4cbb140c30ca717ee499b9ad9e1a3df27a470a7
DIST tk8.6.5-src.tar.gz 4417393 BLAKE2B bff37ac292928095063ebd3131ab8bf9e9d0b075c115c9e9a1f0fe75c2843cae6153b15fc9b964cd16a1251feca13258034d14dadd5fa8967bff6d5fee813f8f SHA512 9acf2ef993a566a7cdd1efe21dc896b09125c65d86df53ab5a78542b21d3f031e9f9d72b81738705636c268b5ce72934c483eb087d5c0114f913c9075db9a3b1
DIST tk8.6.6-src.tar.gz 4273737 BLAKE2B 65b139fffe628439137a02a72af19be0f7c44956d18852f1ce8892349d0fa370281e475fbbe7451da524ab4e74a8c258ee5ee70b8a146bf1ec71e3bf420314a3 SHA512 223c72ab5a6f6040928c56843598b878efafab44ed4152a38e68aa2800f2c181adc50a8bf23279b7d446493eec43854920e8b649b6a34ecdf31ecc07ccc74044
DIST tk8.6.7-src.tar.gz 4282972 BLAKE2B b07102365539ee98e2972a5d3bee2bdee89cb4d3873b05c764810b89f0152b71bd0d14d007434a003cd784868afadf6a2a50deffc0c4596b4551a0be7625fd13 SHA512 adf35991b20878d18a6940cb3d24d821586828537edf6d20f9223f2989d317adbcbb5360f3226014d96fe44e7ec06cfdf434309438c90a09878345b7106c7dd9
+DIST tk8.6.8-src.tar.gz 4319854 BLAKE2B 167c5dc6c32e49653c04bc067c3d75df022ca230657be32797021b0e2f7748215d9ad0493c8020b8d1be1f005b9b2d561339a6a0b209721c0d05dd222d47d377 SHA512 d0d30637b733fb0b0d38461b6d872934c04af422fcdb7ec41a72331b2529cc94414e6f441f95a98642d69505e4f41469847fedd1cbe58bd08cdd818fcabd1db9
diff --git a/dev-lang/tk/files/tk-8.6.8-libieee.patch b/dev-lang/tk/files/tk-8.6.8-libieee.patch
new file mode 100644
index 00000000000..942144e68c7
--- /dev/null
+++ b/dev-lang/tk/files/tk-8.6.8-libieee.patch
@@ -0,0 +1,15 @@
+--- a/unix/tcl.m4
++++ b/unix/tcl.m4
+@@ -2470,12 +2470,9 @@
+ #--------------------------------------------------------------------
+ # On a few very rare systems, all of the libm.a stuff is
+ # already in libc.a. Set compiler flags accordingly.
+- # Also, Linux requires the "ieee" library for math to work
+- # right (and it must appear before "-lm").
+ #--------------------------------------------------------------------
+
+ AC_CHECK_FUNC(sin, MATH_LIBS="", MATH_LIBS="-lm")
+- AC_CHECK_LIB(ieee, main, [MATH_LIBS="-lieee $MATH_LIBS"])
+
+ #--------------------------------------------------------------------
+ # Interactive UNIX requires -linet instead of -lsocket, plus it
diff --git a/dev-lang/tk/tk-8.6.8.ebuild b/dev-lang/tk/tk-8.6.8.ebuild
new file mode 100644
index 00000000000..bdc7778ee50
--- /dev/null
+++ b/dev-lang/tk/tk-8.6.8.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils multilib multilib-minimal prefix toolchain-funcs versionator virtualx
+
+MY_P="${PN}${PV/_beta/b}"
+
+DESCRIPTION="Tk Widget Set"
+HOMEPAGE="http://www.tcl.tk/"
+SRC_URI="mirror://sourceforge/tcl/${MY_P}-src.tar.gz"
+
+LICENSE="tcltk"
+SLOT="0/8.6"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="debug +threads truetype aqua xscreensaver"
+
+RDEPEND="
+ !aqua? (
+ >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}]
+ >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXt-1.1.4[${MULTILIB_USEDEP}]
+ truetype? ( >=x11-libs/libXft-2.3.1-r1[${MULTILIB_USEDEP}] )
+ xscreensaver? ( >=x11-libs/libXScrnSaver-1.2.2-r1[${MULTILIB_USEDEP}] )
+ )
+ ~dev-lang/tcl-${PV}:0=[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}
+ !aqua? ( x11-base/xorg-proto )"
+
+# Not bumped to 8.6
+#RESTRICT=test
+
+SPARENT="${WORKDIR}/${MY_P}"
+S="${SPARENT}"/unix
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-8.5.11-fedora-xft.patch
+ "${FILESDIR}"/${PN}-8.5.13-multilib.patch
+ "${FILESDIR}"/${PN}-8.4.15-aqua.patch
+ "${FILESDIR}"/${PN}-8.5.14-conf.patch # Bug 125971
+ "${FILESDIR}"/${PN}-8.6.8-libieee.patch
+)
+
+src_prepare() {
+ find \
+ "${SPARENT}"/compat/* \
+ -delete || die
+
+ pushd "${SPARENT}" &>/dev/null || die
+ default
+ popd &>/dev/null || die
+ eprefixify Makefile.in
+
+ # Make sure we use the right pkg-config, and link against fontconfig
+ # (since the code base uses Fc* functions).
+ sed \
+ -e 's/FT_New_Face/XftFontOpen/g' \
+ -e "s:\<pkg-config\>:$(tc-getPKG_CONFIG):" \
+ -e 's:xft freetype2:xft freetype2 fontconfig:' \
+ -i configure.in || die
+ rm configure || die
+
+ 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() {
+ if tc-is-cross-compiler ; then
+ export ac_cv_func_strtod=yes
+ export tcl_cv_strtod_buggy=1
+ fi
+
+ local mylibdir=$(get_libdir)
+
+ econf \
+ --with-tcl="${EPREFIX}/usr/${mylibdir}" \
+ $(use_enable threads) \
+ $(use_enable aqua) \
+ $(use_enable truetype xft) \
+ $(use_enable xscreensaver xss) \
+ $(use_enable debug symbols)
+}
+
+multilib_src_test() {
+ virtx emake test
+}
+
+multilib_src_install() {
+ #short version number
+ local v1=$(get_version_component_range 1-2)
+ local mylibdir=$(get_libdir)
+
+ S= default
+
+ # normalize $S path, bug #280766 (pkgcore)
+ local nS="$(cd "${S}"; pwd)"
+
+ # fix the tkConfig.sh to eliminate refs to the build directory
+ # and drop unnecessary -L inclusion to default system libdir
+
+ sed \
+ -e "/^TK_BUILD_LIB_SPEC=/s:-L${S}-\w*\.\w* ::g" \
+ -e "/^TK_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
+ -e "/^TK_SRC_DIR=/s:${SPARENT}:${EPREFIX}/usr/${mylibdir}/tk${v1}/include:g" \
+ -e "/^TK_BUILD_STUB_LIB_SPEC=/s:-L${S}-\w*\.\w* *::g" \
+ -e "/^TK_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
+ -e "/^TK_BUILD_STUB_LIB_PATH=/s:${S}-\w*\.\w*:${EPREFIX}/usr/${mylibdir}:g" \
+ -e "/^TK_LIB_FILE=/s:'libtk${v1}..TK_DBGX..so':\"libk${v1}\$\{TK_DBGX\}.so\":g" \
+ -i "${ED}"/usr/${mylibdir}/tkConfig.sh || die
+ if use prefix && [[ ${CHOST} != *-darwin* && ${CHOST} != *-mint* ]] ; then
+ sed \
+ -e "/^TK_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \
+ -e "/^TK_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \
+ -i "${ED}"/usr/${mylibdir}/tkConfig.sh || die
+ fi
+
+ # install private headers
+ insinto /usr/${mylibdir}/tk${v1}/include/unix
+ doins "${S}"/*.h
+ insinto /usr/${mylibdir}/tk${v1}/include/generic
+ doins "${SPARENT}"/generic/*.h
+ rm -f "${ED}"/usr/${mylibdir}/tk${v1}/include/generic/{tk,tkDecls,tkPlatDecls}.h || die
+
+ # install symlink for libraries
+ dosym libtk${v1}$(get_libname) /usr/${mylibdir}/libtk$(get_libname)
+ dosym libtkstub${v1}.a /usr/${mylibdir}/libtkstub.a
+
+ if multilib_is_native_abi; then
+ dosym wish${v1} /usr/bin/wish
+ dodoc "${SPARENT}"/{ChangeLog*,README,changes}
+ fi
+}