summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-tcltk/tdom/Manifest1
-rw-r--r--dev-tcltk/tdom/files/tdom-0.9.2-useCC.patch28
-rw-r--r--dev-tcltk/tdom/tdom-0.9.2.ebuild82
3 files changed, 111 insertions, 0 deletions
diff --git a/dev-tcltk/tdom/Manifest b/dev-tcltk/tdom/Manifest
index a2049669de4e..086daff6debe 100644
--- a/dev-tcltk/tdom/Manifest
+++ b/dev-tcltk/tdom/Manifest
@@ -1 +1,2 @@
DIST tdom-0.9.1-src.tgz 1100163 BLAKE2B 25fca8ae7b2dbcfaca711df90e42479dfba57e9aaf0e616c519b6e74bafb1b5fa371c48abe0875126aa8e1979196a10f6030a0ffe8786b21f7685e8c2ddcb16c SHA512 40dd5ec942ac4cce2fd78f53caf3a2b5e2fae9fbc5617923d94f07c9f530fa936696d79abe080ade2edbc4f4a86c35898b000180f20d9320edd8bfa3fa19d863
+DIST tdom-0.9.2-src.tgz 1215099 BLAKE2B 1d720043ee4acc27d3fad138baced96b291c2e39dc1535fb1927a9968e07324d5e0e0bb0c71d8e5678b8c6f4bb69fb09ce05ac9447712422af0d91c9e06c163e SHA512 ba6611db866f3afffd112887cf6b0f250273f29ab4ed8e29de89405b997a0f7569216f86206040462aba9a4b8548c346bc72945cf7d617cf45a644fa8ded7121
diff --git a/dev-tcltk/tdom/files/tdom-0.9.2-useCC.patch b/dev-tcltk/tdom/files/tdom-0.9.2-useCC.patch
new file mode 100644
index 000000000000..cdfdcb8bf815
--- /dev/null
+++ b/dev-tcltk/tdom/files/tdom-0.9.2-useCC.patch
@@ -0,0 +1,28 @@
+--- a/tclconfig/tcl.m4 2019-12-07 22:00:18.094712146 +0100
++++ b/tclconfig/tcl.m4 2019-12-07 22:00:28.961515544 +0100
+@@ -434,7 +434,6 @@
+ AC_SUBST(TCL_STUB_LIB_SPEC)
+
+ AC_MSG_CHECKING([platform])
+- hold_cc=$CC; CC="$TCL_CC"
+ AC_TRY_COMPILE(,[
+ #ifdef _WIN32
+ #error win32
+@@ -446,7 +445,6 @@
+ TEA_PLATFORM="windows"
+ AC_CHECK_PROG(CYGPATH, cygpath, cygpath -m, echo) ]
+ )
+- CC=$hold_cc
+ AC_MSG_RESULT($TEA_PLATFORM)
+
+ # The BUILD_$pkg is to define the correct extern storage class
+--- a/configure.ac 2019-12-07 22:06:56.954496437 +0100
++++ b/configure.ac 2019-12-07 22:07:53.538472872 +0100
+@@ -33,6 +33,7 @@
+ TEA_INIT([3.13])
+
+ AC_CONFIG_AUX_DIR(tclconfig)
++AC_CONFIG_SUBDIRS([extensions/tnc extensions/example])
+
+ #--------------------------------------------------------------------
+ # Load the tclConfig.sh file
diff --git a/dev-tcltk/tdom/tdom-0.9.2.ebuild b/dev-tcltk/tdom/tdom-0.9.2.ebuild
new file mode 100644
index 000000000000..c8dbe69542c7
--- /dev/null
+++ b/dev-tcltk/tdom/tdom-0.9.2.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic
+
+MY_P="tDOM-${PV}"
+
+DESCRIPTION="A XML/DOM/XPath/XSLT Implementation for Tcl"
+HOMEPAGE="https://core.tcl.tk/tdom/"
+SRC_URI="http://tdom.org/downloads/${P}-src.tgz"
+
+LICENSE="MPL-1.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs threads"
+
+DEPEND="
+ dev-lang/tcl:0=
+ dev-libs/expat"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"/${P}-src
+
+PATCHES=( "${FILESDIR}"/${P}-useCC.patch )
+
+src_prepare() {
+ append-libs -lm
+ sed \
+ -e 's:-O2::g' \
+ -e 's:-pipe::g' \
+ -e 's:-fomit-frame-pointer::g' \
+ -e '/SHLIB_LD_LIBS/s:\"$: ${TCL_LIB_FLAG}":g' \
+ -i {.,extensions/tnc}/configure tclconfig/tcl.m4 || die
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_enable threads)
+ --enable-shared
+ --with-tcl="${EPREFIX}"/usr/$(get_libdir)
+ )
+
+ cd "${S}"/unix && ECONF_SOURCE=".." econf ${myeconfargs} \
+ --disable-tdomalloc --with-expat
+ cd "${S}"/extensions/tdomhtml && econf
+ cd "${S}"/extensions/tnc && econf ${myeconfargs}
+}
+
+src_compile() {
+ local dir
+
+ for dir in "${S}"/unix "${S}"/extensions/tnc; do
+ pushd ${dir} > /dev/null
+ emake
+ popd > /dev/null
+ done
+}
+
+src_test() {
+ cd unix && default
+}
+
+src_install() {
+ local dir
+
+ dodoc CHANGES ChangeLog README*
+
+ for dir in "${S}"/unix "${S}"/extensions/tdomhtml "${S}"/extensions/tnc; do
+ pushd ${dir} > /dev/null
+ emake DESTDIR="${D}" install
+ popd > /dev/null
+ done
+
+ if ! use static-libs; then
+ einfo "Removing static libs ..."
+ rm -f "${ED}"/usr/$(get_libdir)/*.{a,la} || die
+ fi
+}