diff options
author | Andrew Savchenko <bircoph@gentoo.org> | 2017-01-02 14:07:58 +0300 |
---|---|---|
committer | Andrew Savchenko <bircoph@gentoo.org> | 2017-01-02 14:09:49 +0300 |
commit | e2555594063cea186ec5842a8795a4e98c019789 (patch) | |
tree | e79f3bfc7391a06b671d484b0a60232922b9a605 /app-text/stardict | |
parent | app-backup/backup-manager: 0.7.13 bump (diff) | |
download | gentoo-e2555594063cea186ec5842a8795a4e98c019789.tar.gz gentoo-e2555594063cea186ec5842a8795a4e98c019789.tar.bz2 gentoo-e2555594063cea186ec5842a8795a4e98c019789.zip |
app-text/stardict: add gnome support
Add conditional gnome-2 support, when it is disabled, remove
AM_GCONF_SOURCE_2 as recommended by upstream (doc/Building) to fix
bug 604318.
Package-Manager: Portage-2.3.3, Repoman-2.3.1
Signed-off-by: Andrew Savchenko <bircoph@gentoo.org>
Diffstat (limited to 'app-text/stardict')
-rw-r--r-- | app-text/stardict/stardict-4.0.0_pre20160518-r1.ebuild | 234 |
1 files changed, 234 insertions, 0 deletions
diff --git a/app-text/stardict/stardict-4.0.0_pre20160518-r1.ebuild b/app-text/stardict/stardict-4.0.0_pre20160518-r1.ebuild new file mode 100644 index 000000000000..0935b86bcc68 --- /dev/null +++ b/app-text/stardict/stardict-4.0.0_pre20160518-r1.ebuild @@ -0,0 +1,234 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +# NOTE: Even though the *.dict.dz are the same as dictd/freedict's files, +# their indexes seem to be in a different format. So we'll keep them +# seperate for now. + +GNOME2_LA_PUNT=yes +PYTHON_COMPAT=( python2_7 ) + +inherit autotools flag-o-matic gnome2 python-single-r1 + +DESCRIPTION="A international dictionary supporting fuzzy and glob style matching" +HOMEPAGE="http://stardict-4.sourceforge.net/ + https://github.com/huzheng001/stardict-3" +SRC_URI="https://dev.gentoo.org/~bircoph/distfiles/${P}.tar.xz + pronounce? ( https://${PN}-3.googlecode.com/files/WyabdcRealPeopleTTS.tar.bz2 ) + qqwry? ( mirror://gentoo/QQWry.Dat.bz2 )" + +LICENSE="CPL-1.0 GPL-3 LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="advertisement cal debug dictdotcn espeak examples flite +fortune gnome gucharmap +htmlparse info man perl +powerwordparse +pronounce python qqwry spell tools updateinfo +wikiparse +wordnet ++xdxfparse youdaodict" + +RESTRICT="test" + +COMMON_DEPEND=" + >=dev-libs/glib-2.32:2 + dev-libs/libsigc++:2= + media-libs/libcanberra[gtk3] + sys-libs/zlib:= + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/pango + espeak? ( >=app-accessibility/espeak-1.29 ) + flite? ( app-accessibility/flite ) + gnome? ( + gnome-base/gconf:2 + gnome-base/libbonobo + gnome-base/libgnome + gnome-base/orbit:2 + ) + gucharmap? ( gnome-extra/gucharmap:0= ) + spell? ( >=app-text/enchant-1.2 ) + tools? ( + dev-libs/expat + dev-libs/libpcre:= + dev-libs/libxml2:= + virtual/mysql + python? ( ${PYTHON_DEPS} ) + ) +" +RDEPEND="${COMMON_DEPEND} + info? ( sys-apps/texinfo ) + fortune? ( games-misc/fortune-mod ) + perl? ( dev-lang/perl ) +" +DEPEND="${COMMON_DEPEND} + app-text/docbook-xml-dtd:4.3 + app-text/gnome-doc-utils + dev-libs/libxslt + dev-util/intltool + sys-devel/gettext + virtual/pkgconfig +" +REQUIRED_USE="tools? ( python? ( ${PYTHON_REQUIRED_USE} ) )" + +# docs are messy, installed manually below +DOCS="" + +PATCHES=( "${FILESDIR}/${P}-tabfile.patch" ) + +src_prepare() { + # From Fedora + # Remove unneeded sigc++ header files to make it sure + # that we are using system-wide libsigc++ + # (and these does not work on gcc43) + find dict/src/sigc++* -name \*.h -or -name \*.cc | xargs rm -f || die + + # libsigc++ started to require c++11 support + append-cxxflags "-std=c++11" + + if use python; then + local f + # force python shebangs handlable by python_doscript + for f in tools/src/*.py; do + [[ $(head -n1 "${f}") =~ ^#! ]] || continue + sed -i '1 s|.*|#!/usr/bin/python|' tools/src/*.py || die + done + # script contains UTF-8 symbols, but has no ecoding set + sed -i '1 a # -*- coding: utf-8 -*-' tools/src/uyghur2dict.py || die + fi + + # bug 604318 + if ! use gnome; then + sed -i '/AM_GCONF_SOURCE_2/d' dict/configure.ac || die + fi + + eapply_user + eautoreconf + gnome2_src_prepare +} + +src_configure() { + # Hint: EXTRA_ECONF="--enable-gnome-support" and manual install of + # libbonobo-2, libgnome-2, libgnomeui-2, gconf-2 and orbit-2 will + # give you GNOME 2.x support, that is otherwise considered deprecated + # because of the deep GNOME 2.x core library dependencies + + # Festival plugin crashes, bug 188684. Disable for now. + gnome2_src_configure \ + --disable-darwin-support \ + --disable-festival \ + --disable-gpe-support \ + --disable-maemo-support \ + --disable-schemas-install \ + --disable-scrollkeeper \ + $(use_enable advertisement) \ + $(use_enable cal) \ + $(use_enable debug) \ + $(use_enable dictdotcn) \ + $(use_enable espeak) \ + $(use_enable flite) \ + $(use_enable fortune) \ + $(use_enable gnome gnome-support) \ + $(use_enable gucharmap) \ + $(use_enable htmlparse) \ + $(use_enable info) \ + $(use_enable man) \ + $(use_enable powerwordparse) \ + $(use_enable qqwry) \ + $(use_enable spell) \ + $(use_enable tools) \ + $(use_enable updateinfo) \ + $(use_enable wikiparse) \ + $(use_enable wordnet) \ + $(use_enable xdxfparse) \ + $(use_enable youdaodict) +} + +src_install() { + gnome2_src_install + + dodoc AUTHORS ChangeLog README + + docinto dict + dodoc dict/{AUTHORS,ChangeLog,README,TODO} + dodoc dict/doc/{Documentation,FAQ,HowToCreateDictionary,Skins,StarDictFileFormat,TextualDictionaryFileFormat,Translation} + dodoc -r dict/doc/wiki + + docinto lib + dodoc lib/{AUTHORS,ChangeLog,README} + + if use examples; then + insinto /usr/share/doc/${PF}/dict + doins dict/doc/stardict-textual-dict* + fi + + if use qqwry; then + insinto /usr/share/${PN}/data + doins ../QQWry.Dat + fi + + if use pronounce; then + docinto WyabdcRealPeopleTTS + dodoc ../WyabdcRealPeopleTTS/{README,readme.txt} + rm -f ../WyabdcRealPeopleTTS/{README,readme.txt} + insinto /usr/share + doins -r ../WyabdcRealPeopleTTS + fi + + # noinst_PROGRAMS with ${PN}_ prefix from tools/src/Makefile.am wrt #292773 + # and additional scripts from tools dir + if use tools; then + local app + local apps="${PN}-editor pydict2dic olddic2newdic oxford2dic directory2dic dictd2dic + wquick2dic ec50 directory2treedic treedict2dir jdictionary mova xmlinout + soothill kanjidic2 powerword kdic 21tech 21shiji buddhist tabfile + cedict edict duden ${PN}-dict-update degb2utf frgb2utf jpgb2utf gmx2utf + rucn kingsoft kingsoft2 wikipedia wikipediaImage babylon ${PN}2txt ${PN}-verify + fest2dict i2e2dict downloadwiki ooo2dict myspell2dic exc2i2e + dictbuilder tabfile2sql KangXi Unihan xiaoxuetang-ja wubi ydp2dict + wordnet lingvosound2resdb resdatabase2dir dir2resdatabase ${PN}-index + sd2foldoc + ${PN}-text2bin ${PN}-bin2text ${PN}-repair" + + use perl && apps+=" dicts-dump.pl ncce2stardict.pl parse-oxford.perl" + use python && apps+=" hanzim2dict.py jm2stardict.py lingea-trd-decoder.py + makevietdict.py uyghur2dict.py" + + for app in ${apps}; do + if [[ "${app}" =~ ^${PN} ]]; then + dobin "tools/src/${app}" + else + newbin "tools/src/${app}" "${PN}_${app}" + fi + done + use python && python_doscript "${ED}"usr/bin/*.py + + docinto tools + dodoc tools/{AUTHORS,ChangeLog,README} + + if use examples; then + insinto /usr/share/doc/${PF}/tools + doins tools/src/{dictbuilder.{example,readme},example.ifo,example_treedict.tar.bz2} + fi + fi +} + +pkg_postinst() { + elog + elog "Note: festival text to speech (TTS) plugin is not built. To use festival" + elog 'TTS plugin, please, emerge festival and enable "Use TTS program." at:' + elog '"Preferences -> Dictionary -> Sound" and fill in "Commandline" with:' + elog '"echo %s | festival --tts"' + elog + elog "You will now need to install ${PN} dictionary files. If" + elog "you have not, execute the below to get a list of dictionaries:" + elog " emerge -s ${PN}-" + elog + elog "Additionally you may install any stardict dictionary from the net" + elog "by unpacking it to:" + elog " /usr/share/stardict/dic" + elog + + gnome2_pkg_postinst +} |