diff options
Diffstat (limited to 'dev-tcltk/tdom')
-rw-r--r-- | dev-tcltk/tdom/Manifest | 10 | ||||
-rw-r--r-- | dev-tcltk/tdom/files/tdom-0.8.2-tnc.patch | 73 | ||||
-rw-r--r-- | dev-tcltk/tdom/files/tdom-0.8.2.patch | 52 | ||||
-rw-r--r-- | dev-tcltk/tdom/files/tdom-0.8.3-expat.patch | 84 | ||||
-rw-r--r-- | dev-tcltk/tdom/files/tdom-0.8.3-soname.patch | 26 | ||||
-rw-r--r-- | dev-tcltk/tdom/files/tdom-0.8.3-tcl8.6.patch | 21 | ||||
-rw-r--r-- | dev-tcltk/tdom/metadata.xml | 15 | ||||
-rw-r--r-- | dev-tcltk/tdom/tdom-0.8.3-r4.ebuild | 87 |
8 files changed, 368 insertions, 0 deletions
diff --git a/dev-tcltk/tdom/Manifest b/dev-tcltk/tdom/Manifest new file mode 100644 index 000000000000..44e19de93ea7 --- /dev/null +++ b/dev-tcltk/tdom/Manifest @@ -0,0 +1,10 @@ +AUX tdom-0.8.2-tnc.patch 2806 SHA256 f220162108eaf974a5f06b59de0ec130dc0703014cd9f7d7570dec2186b6a50f SHA512 b111a75abf35dd7acf813e05295e51633d30e12d20250f21905eec021ea64194d116a9869b2eac882da49f6a9037d3b1b6e23b30091b9bc92cd2bed91d7c8177 WHIRLPOOL 762ce7b28241d1578f8a758e6069674a7818b833c8e9d02f90e3caa30431409d5f612371ad26a97ad4e3f6b0131e8e6336fe063c81768e18a65eda9b37112f41 +AUX tdom-0.8.2.patch 2036 SHA256 523967222cf5d72fe84924b40f371831a10875599df9dd8d0c80ab2f5aa78472 SHA512 f86d07835de0274072243ff347123edba075d46e0e3da246d75f378d9dfcff3cc4e338f6d26449f15610db4bf1256b5e3890ac9b5f2b3d3c5edd24dcfd8120b5 WHIRLPOOL c850094d2317027871d90bb54e2951edd1be3aa488f7e59ddafcca07745f35b4931bdb7d825fb942719cba24964e363c01fd6771e3ce8794a2fb0e12f47edb6e +AUX tdom-0.8.3-expat.patch 2512 SHA256 875a7d35aa920d971733d5319f713b4c3dbe0928e7e373bcddd9573d4249589c SHA512 110c07c55b2793152819c8da486a72440096876ff871b045d1a4b1d4a0a9e62bac4ccaf02bc83786f309b85f84e9311b6af31b6f4b5e8fb4f8294e6435f6be15 WHIRLPOOL 32fb0c84601b96a53fe254b1f41e4fe9870cf698796a981ecbde758dfa416a0389b72dc229cd1f919a7900900e5e5305d49efcfa520df6037770ab738ed74e55 +AUX tdom-0.8.3-soname.patch 963 SHA256 69126d56273b87599baf3aa58c7d016f4d32ffdced42fc9599c6abba94d3fa10 SHA512 ea7f689f3b979fc565947a6b5e2ef6dfd422eee83c98749c4f9f0a213f0a44f3beba211e5c8e1b251e4bc2bbd77a5e4e75476661de5ffeb9d01e8f7bbba05990 WHIRLPOOL 02c0ad62fe3ebbac97844743ed33d910cd25863ffb7f3a60e27cb2b6ff1c8e5d4b92e586de18347860eb48d4619fc529f420842c3c035dab94c701de91627ecf +AUX tdom-0.8.3-tcl8.6.patch 764 SHA256 741a4347ba77f5b4ef3c645eb9ea227d34e0abd48277392a6d140d0993905d36 SHA512 4af4a3d712a9f6b57a7a9c6641c7fbef9c1ffd278c2507c067dc43d15102dc2bcc8df8eafc205973c7d7db8f7f9914f98d881877c863b32184c68c6313a466b6 WHIRLPOOL c466274533fd63f077fa11ef2e1ff08b25babc3a2234a5676024032b0817c9cb77f05242edb4aed518981ce25928894b89bb6b86a585bd02ad068a76c44a561e +DIST tDOM-0.8.3.tgz 990367 SHA256 496d5950907dd70db61bc20c55a05a5521363ce3c076e2fdd97270181bc720b9 SHA512 aa5352bc9b67c45d115e52dbf2cf153a3db89f851b51c1cd574af69b02c466f643df0b5448f7d105245246d20a92f80605f16bd927cd7925c1f2007827f2dc20 WHIRLPOOL cec84152b636c3ea13a6daaa9681fe28c36a3e358e28382a439ee855206566b08c1f7427ca733cfbb806f2fdb1e2e10c96c8410005fe56e84f17e873168697ee +EBUILD tdom-0.8.3-r4.ebuild 1905 SHA256 5e670b5b5146962b749fdba304de7d3eef15c7090905c2debc183da6502f986f SHA512 670a8a44ef017a15159aace5833d01defa5b45e1fc61ffefb36406076d7439fa051eedef3160c06695b2ac57f7bf4ff8f6e8c02b10b5e53eac68d6589889e0e7 WHIRLPOOL bb0d7da230ccb102c34926474ac7d37bb982db9da81ba7119d6ece71d132ba5901c0f4c14dd0db91c9e64da76773e74ed17e0b91c4f4b38edf96b3e4fc76693c +MISC ChangeLog 3306 SHA256 b387b30194e841da4fda063f79c300d6eeb9da18741f16b45ad2de3ba111cf68 SHA512 a8e90b7b84ae2678aaa91e361e02a893be3ced682eb299916ad4d8aaaa0e0fe74fddc1a10cb7ca5169a581f346147748f8e57a6b2a92105be4213c99371ffda5 WHIRLPOOL 11ff544b8ee39617bfda08bff37c9cf9a6c9415f7204234e39731536c3c33cdc352d535b402989cdfecfa57e9c3e81bf392846717683c023546e9490acf245ff +MISC ChangeLog-2015 3506 SHA256 d437b72b5ddfc3d80e82476caa71c4eb46ab50d98113ac4ae9c71d2914594f11 SHA512 bcca9ef4e414cfe7f003a86198b8be118bd78410668d4d831499b5f1a567dfccfe93f3751f6e0ba9239875b809a7563c64635c3af2f04e091cecd09d0f3357d1 WHIRLPOOL 83e2e6ce9e22abdf7f00d06f8b370d1ab97a9785f564270249485aad30fed334c37648b494948937555a7e769eab26d0734e74bfd60a11654c567d662e4a3a26 +MISC metadata.xml 609 SHA256 9a75b6c655549296e80e5cd4123b596c6a8c7c99b4403c3e870f5cc1222adfdd SHA512 80b0290426618cae5e2798eb85af524fbe39d27b47cd4298fbc7603c6b804c8ab3ac6299a9676fdfd50ae276b523e1327f4ded935fbd9dd338e587a5f8ff3f35 WHIRLPOOL 6300e3fe738dcd67ccda75f6e6f5b950d47032f04897309f7cbf9cdc00b306bda54c7f527c134f36f2030b040e28484f6b0967e6411bbea30f591bcbd67e5b66 diff --git a/dev-tcltk/tdom/files/tdom-0.8.2-tnc.patch b/dev-tcltk/tdom/files/tdom-0.8.2-tnc.patch new file mode 100644 index 000000000000..7fa200b9ee33 --- /dev/null +++ b/dev-tcltk/tdom/files/tdom-0.8.2-tnc.patch @@ -0,0 +1,73 @@ +Source: http://download.opensuse.org/repositories/openSUSE:/11.0/standard/src/tdom-0.8.2-50.1.src.rpm +--- extensions/tnc/Makefile.in ++++ extensions/tnc/Makefile.in +@@ -355,29 +355,30 @@ + #======================================================================== + + install-lib-binaries: binaries +- @mkdir -p $(DESTDIR)$(pkglibdir) ++ @mkdir -p $(DESTDIR)$(libdir) + @list='$(lib_BINARIES)'; for p in $$list; do \ + if test -f $$p; then \ +- echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p"; \ +- $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p; \ ++ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p"; \ ++ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p; \ + stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \ + if test "x$$stub" = "xstub"; then \ +- echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \ +- $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \ ++ echo " $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p"; \ ++ $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p; \ + else \ +- echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \ +- $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \ ++ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \ ++ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \ + fi; \ + ext=`echo $$p|sed -e "s/.*\.//"`; \ + if test "x$$ext" = "xdll"; then \ + lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \ + if test -f $$lib; then \ +- echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \ +- $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \ ++ echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib"; \ ++ $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib; \ + fi; \ + fi; \ + fi; \ + done ++ @mkdir -p $(DESTDIR)$(pkglibdir) + @list='$(PKG_TCL_SOURCES)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + destp=`basename $$p`; \ +--- extensions/tnc/configure.in ++++ extensions/tnc/configure.in +@@ -89,7 +89,7 @@ + if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes" ; then + TEA_ADD_LIBS([\"`${CYGPATH} ${TDOM_STUB_LIB_PATH}`\"]) + else +- TEA_ADD_LIBS([${TDOM_STUB_LIB_SPEC}]) ++ TEA_ADD_LIBS([${TDOM_BUILD_STUB_LIB_SPEC}]) + fi + + #-------------------------------------------------------------------- +--- extensions/tnc/pkgIndex.tcl.in ++++ extensions/tnc/pkgIndex.tcl.in +@@ -2,4 +2,4 @@ + + package ifneeded tnc @PACKAGE_VERSION@ \ + "package require tdom; \ +- [list load [file join $dir @PKG_LIB_FILE@] tnc]" ++ [list load @PKG_LIB_FILE@ tnc]" +--- extensions/tnc/Makefile.in ++++ extensions/tnc/Makefile.in +@@ -160,7 +160,7 @@ DEFS = @DEFS@ $(PKG_CFLAGS) + CONFIG_CLEAN_FILES = Makefile + + CPPFLAGS = @CPPFLAGS@ +-LIBS = @PKG_LIBS@ @LIBS@ ++LIBS = @PKG_LIBS@ @LIBS@ -L../../unix/ + AR = @AR@ + CFLAGS = @CFLAGS@ + COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) diff --git a/dev-tcltk/tdom/files/tdom-0.8.2.patch b/dev-tcltk/tdom/files/tdom-0.8.2.patch new file mode 100644 index 000000000000..73af7c60e141 --- /dev/null +++ b/dev-tcltk/tdom/files/tdom-0.8.2.patch @@ -0,0 +1,52 @@ +Source: http://download.opensuse.org/repositories/openSUSE:/11.0/standard/src/tdom-0.8.2-50.1.src.rpm +--- Makefile.in ++++ Makefile.in +@@ -307,7 +307,7 @@ + + pkgIndex.tcl-hand: + @(echo 'package ifneeded $(PACKAGE_NAME) $(PACKAGE_VERSION)\ +- "load [list [file join $$dir $(PKG_LIB_FILE)]];\ ++ "load $(PKG_LIB_FILE);\ + source [list [file join $$dir tdom.tcl]]"'\ + ) > pkgIndex.tcl + +@@ -385,29 +385,30 @@ + #======================================================================== + + install-lib-binaries: binaries +- @mkdir -p $(DESTDIR)$(pkglibdir) ++ @mkdir -p $(DESTDIR)$(libdir) + @list='$(lib_BINARIES)'; for p in $$list; do \ + if test -f $$p; then \ +- echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p"; \ +- $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p; \ ++ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p"; \ ++ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p; \ + stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \ + if test "x$$stub" = "xstub"; then \ +- echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \ +- $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \ ++ echo " $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p"; \ ++ $(RANLIB_STUB) $(DESTDIR)$(libdir)/$$p; \ + else \ +- echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \ +- $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \ ++ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \ ++ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \ + fi; \ + ext=`echo $$p|sed -e "s/.*\.//"`; \ + if test "x$$ext" = "xdll"; then \ + lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \ + if test -f $$lib; then \ +- echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \ +- $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \ ++ echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib"; \ ++ $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib; \ + fi; \ + fi; \ + fi; \ + done ++ @mkdir -p $(DESTDIR)$(pkglibdir) + @list='$(PKG_TCL_SOURCES)'; for p in $$list; do \ + if test -f $(srcdir)/$$p; then \ + destp=`basename $$p`; \ diff --git a/dev-tcltk/tdom/files/tdom-0.8.3-expat.patch b/dev-tcltk/tdom/files/tdom-0.8.3-expat.patch new file mode 100644 index 000000000000..818850bd8eee --- /dev/null +++ b/dev-tcltk/tdom/files/tdom-0.8.3-expat.patch @@ -0,0 +1,84 @@ +diff --git a/configure.in b/configure.in +index 8e634f2..d9999cf 100644 +--- a/configure.in ++++ b/configure.in +@@ -72,6 +72,7 @@ AC_CHECK_FUNCS(memmove bcopy) + #-------------------------------------------------------------------- + + TDOM_PATH_AOLSERVER ++TDOM_PATH_EXPAT + + #----------------------------------------------------------------------- + # __CHANGE__ +@@ -83,10 +84,7 @@ TDOM_PATH_AOLSERVER + # and PKG_TCL_SOURCES. + #----------------------------------------------------------------------- + +-TEA_ADD_SOURCES([expat/xmlrole.c \ +- expat/xmltok.c \ +- expat/xmlparse.c \ +- generic/xmlsimple.c \ ++TEA_ADD_SOURCES([generic/xmlsimple.c \ + generic/utf8conv.c \ + generic/dom.c \ + generic/domhtml.c \ +@@ -99,7 +97,7 @@ TEA_ADD_SOURCES([expat/xmlrole.c \ + generic/tclexpat.c \ + generic/tdomStubInit.c]) + TEA_ADD_HEADERS([generic/tdom.h]) +-TEA_ADD_INCLUDES([-I${srcdir}/generic -I${srcdir}/expat ${AOL_INCLUDES}]) ++TEA_ADD_INCLUDES([-I${srcdir}/generic ${AOL_INCLUDES}]) + TEA_ADD_LIBS([${AOL_LIBS}]) + TEA_ADD_CFLAGS([]) + TEA_ADD_STUB_SOURCES([generic/tdomStubLib.c]) +diff --git a/tdom.m4 b/tdom.m4 +index f5ecd98..fcab883 100644 +--- a/tdom.m4 ++++ b/tdom.m4 +@@ -216,6 +216,46 @@ AC_DEFUN(TDOM_PATH_AOLSERVER, [ + fi + ]) + ++ ++AC_DEFUN(TDOM_PATH_EXPAT, [ ++ AC_MSG_CHECKING([for expat]) ++ AC_ARG_WITH(expat, ++ AC_HELP_STRING([--with-expat], ++ [directory with expat installation]), , [with_expat=no]) ++ ++ AC_CACHE_VAL(ac_cv_c_expat,[ ++ case $with_expat in ++ no) ;; ++ yes) ++ for f in /usr/local /usr; do ++ if test -f "$f/include/expat.h" ; then ++ ac_cv_c_expat=`(cd $f; pwd)` ++ break ++ fi ++ done ++ ;; ++ *) ++ if test -f "$with_expat/include/expat.h"; then ++ ac_cv_c_expat=`(cd $with_expat; pwd)` ++ else ++ AC_MSG_ERROR([${with_expat} directory doesn't contain expat.h]) ++ fi ++ esac ++ ]) ++ if test x"${ac_cv_c_expat}" = x ; then ++ AC_MSG_RESULT([using local copy]) ++ TEA_ADD_SOURCES([expat/xmlrole.c \ ++ expat/xmltok.c \ ++ expat/xmlparse.c]) ++ TEA_ADD_INCLUDES([-I${srcdir}/expat]) ++ else ++ AC_MSG_RESULT([${ac_cv_c_expat}]) ++ TEA_ADD_INCLUDES(${ac_cv_c_expat}/include) ++ TEA_ADD_LIBS([-lexpat]) ++ fi ++]) ++ ++ + #------------------------------------------------------------------------ + # TDOM_PATH_CONFIG -- + # diff --git a/dev-tcltk/tdom/files/tdom-0.8.3-soname.patch b/dev-tcltk/tdom/files/tdom-0.8.3-soname.patch new file mode 100644 index 000000000000..f742f6e7f5a1 --- /dev/null +++ b/dev-tcltk/tdom/files/tdom-0.8.3-soname.patch @@ -0,0 +1,26 @@ +diff --git a/Makefile.in b/Makefile.in +index d995328..5c17e11 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -108,7 +108,7 @@ CFLAGS_DEFAULT = @CFLAGS_DEFAULT@ + CFLAGS_WARNING = @CFLAGS_WARNING@ + CLEANFILES = @CLEANFILES@ + EXEEXT = @EXEEXT@ +-LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ ++LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ -Wl,-soname,libtdom$(PACKAGE_VERSION).so + MAKE_LIB = @MAKE_LIB@ + MAKE_SHARED_LIB = @MAKE_SHARED_LIB@ + MAKE_STATIC_LIB = @MAKE_STATIC_LIB@ +diff --git a/extensions/tnc/Makefile.in b/extensions/tnc/Makefile.in +index f8a332c..01e0ef0 100644 +--- a/extensions/tnc/Makefile.in ++++ b/extensions/tnc/Makefile.in +@@ -98,7 +98,7 @@ CFLAGS_DEFAULT = @CFLAGS_DEFAULT@ + CFLAGS_WARNING = @CFLAGS_WARNING@ + CLEANFILES = @CLEANFILES@ + EXEEXT = @EXEEXT@ +-LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ ++LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ -Wl,-soname,libtnc$(PACKAGE_VERSION).so + MAKE_LIB = @MAKE_LIB@ + MAKE_SHARED_LIB = @MAKE_SHARED_LIB@ + MAKE_STATIC_LIB = @MAKE_STATIC_LIB@ diff --git a/dev-tcltk/tdom/files/tdom-0.8.3-tcl8.6.patch b/dev-tcltk/tdom/files/tdom-0.8.3-tcl8.6.patch new file mode 100644 index 000000000000..5a805931ca31 --- /dev/null +++ b/dev-tcltk/tdom/files/tdom-0.8.3-tcl8.6.patch @@ -0,0 +1,21 @@ + generic/tcldom.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/generic/tcldom.c b/generic/tcldom.c +index 91d98c9..0f024b3 100644 +--- a/generic/tcldom.c ++++ b/generic/tcldom.c +@@ -5933,8 +5933,13 @@ int tcldom_EvalLocked ( + ret = Tcl_EvalObj(interp, objv[2]); + if (ret == TCL_ERROR) { + char msg[64 + TCL_INTEGER_SPACE]; ++ #if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 + sprintf(msg, "\n (\"%s %s\" body line %d)", Tcl_GetString(objv[0]), + Tcl_GetString(objv[1]), interp->errorLine); ++ #else ++ sprintf(msg, "\n (\"%s %s\" body line %d)", Tcl_GetString(objv[0]), ++ Tcl_GetString(objv[1]), Tcl_GetErrorLine(interp)); ++ #endif + Tcl_AddErrorInfo(interp, msg); + } + diff --git a/dev-tcltk/tdom/metadata.xml b/dev-tcltk/tdom/metadata.xml new file mode 100644 index 000000000000..9b594bd7ea41 --- /dev/null +++ b/dev-tcltk/tdom/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>tcltk@gentoo.org</email> + <name>Gentoo Tcltk Project</name> + </maintainer> + <longdescription> +tDOM combines high performance XML data processing with easy and +powerful Tcl scripting functionality. tDOM should be one of the fastest +ways to manipulate XML with a scripting language and uses very few +memory: for example, the DOM tree of the XML recommendation in XML +(160K) needs only about 450K of memory. +</longdescription> +</pkgmetadata> diff --git a/dev-tcltk/tdom/tdom-0.8.3-r4.ebuild b/dev-tcltk/tdom/tdom-0.8.3-r4.ebuild new file mode 100644 index 000000000000..57a0b884ecc0 --- /dev/null +++ b/dev-tcltk/tdom/tdom-0.8.3-r4.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit autotools eutils flag-o-matic multilib toolchain-funcs + +MY_P="tDOM-${PV}" + +DESCRIPTION="A XML/DOM/XPath/XSLT Implementation for Tcl" +HOMEPAGE="https://tdom.github.com/" +#SRC_URI="https://cloud.github.com/downloads/tDOM/${PN}/${MY_P}.tgz" +SRC_URI="mirror://github/tDOM/${PN}/${MY_P}.tgz" + +LICENSE="MPL-1.1" +SLOT="0" +KEYWORDS="~alpha amd64 ~hppa ~ia64 ~mips ~ppc x86 ~amd64-linux ~x86-linux" +IUSE="static-libs threads" + +DEPEND=" + dev-lang/tcl:0= + dev-libs/expat" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/"${PN}-0.8.2.patch + "${FILESDIR}/"${P}-soname.patch + "${FILESDIR}/"${P}-expat.patch + "${FILESDIR}/"${PN}-0.8.2-tnc.patch + "${FILESDIR}/"${P}-tcl8.6.patch + ) + +src_prepare() { + tc-export AR + 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 + epatch "${PATCHES[@]}" + eautoreconf +} + +src_configure() { + local myeconfargs=( + $(use_enable threads) + --enable-shared + --disable-tdomalloc + --with-expat + --with-tcl="${EPREFIX}"/usr/$(get_libdir) + ) + + cd "${S}"/unix && ECONF_SOURCE=".." econf ${myeconfargs} + cd "${S}"/extensions/tdomhtml && econf ${myeconfargs} + 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_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 +} |