diff options
Diffstat (limited to 'dev-tcltk/tdom')
-rw-r--r-- | dev-tcltk/tdom/Manifest | 1 | ||||
-rw-r--r-- | dev-tcltk/tdom/files/tdom-0.8.2-expat.patch | 83 | ||||
-rw-r--r-- | dev-tcltk/tdom/files/tdom-0.8.2-soname.patch | 26 | ||||
-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 | 12 | ||||
-rw-r--r-- | dev-tcltk/tdom/tdom-0.8.3-r4.ebuild | 88 |
10 files changed, 466 insertions, 0 deletions
diff --git a/dev-tcltk/tdom/Manifest b/dev-tcltk/tdom/Manifest new file mode 100644 index 000000000000..b9823c6ac7ac --- /dev/null +++ b/dev-tcltk/tdom/Manifest @@ -0,0 +1 @@ +DIST tDOM-0.8.3.tgz 990367 SHA256 496d5950907dd70db61bc20c55a05a5521363ce3c076e2fdd97270181bc720b9 SHA512 aa5352bc9b67c45d115e52dbf2cf153a3db89f851b51c1cd574af69b02c466f643df0b5448f7d105245246d20a92f80605f16bd927cd7925c1f2007827f2dc20 WHIRLPOOL cec84152b636c3ea13a6daaa9681fe28c36a3e358e28382a439ee855206566b08c1f7427ca733cfbb806f2fdb1e2e10c96c8410005fe56e84f17e873168697ee diff --git a/dev-tcltk/tdom/files/tdom-0.8.2-expat.patch b/dev-tcltk/tdom/files/tdom-0.8.2-expat.patch new file mode 100644 index 000000000000..cdcbb1006f4d --- /dev/null +++ b/dev-tcltk/tdom/files/tdom-0.8.2-expat.patch @@ -0,0 +1,83 @@ +Source: http://download.opensuse.org/repositories/openSUSE:/11.0/standard/src/tdom-0.8.2-50.1.src.rpm +Index: Makefile.in +================================================================================ +--- configure.in ++++ configure.in +@@ -72,6 +72,7 @@ + #-------------------------------------------------------------------- + + TDOM_PATH_AOLSERVER ++TDOM_PATH_EXPAT + + #----------------------------------------------------------------------- + # __CHANGE__ +@@ -83,10 +84,7 @@ + # 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/domalloc.c \ +@@ -100,7 +98,7 @@ + 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]) +--- tdom.m4 ++++ tdom.m4 +@@ -215,6 +215,46 @@ + 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.2-soname.patch b/dev-tcltk/tdom/files/tdom-0.8.2-soname.patch new file mode 100644 index 000000000000..3f0bc7e62a9d --- /dev/null +++ b/dev-tcltk/tdom/files/tdom-0.8.2-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,libdom$(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.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..15cec3cf4c63 --- /dev/null +++ b/dev-tcltk/tdom/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>tcltk</herd> + <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..3ba43ee8a0e2 --- /dev/null +++ b/dev-tcltk/tdom/tdom-0.8.3-r4.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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="http://tdom.github.com/" +#SRC_URI="http://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="amd64 ~hppa ~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 +} |