summaryrefslogtreecommitdiff
blob: 990d8d7ba40782297962f9e2c8cb3e79f2178522 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-office/lyx/lyx-1.3.5-r1.ebuild,v 1.9 2005/07/07 04:25:32 caleb Exp $

inherit kde-functions eutils libtool flag-o-matic

DESCRIPTION="WYSIWYM frontend for LaTeX"
HOMEPAGE="http://www.lyx.org/"
SRC_URI="ftp://ftp.lyx.org/pub/lyx/stable/${P}.tar.bz2
	http://movementarian.org/latex-xft-fonts-0.1.tar.gz
	http://www.math.tau.ac.il/~dekelts/lyx/files/hebrew.bind
	http://www.math.tau.ac.il/~dekelts/lyx/files/preferences
	cjk? ( qt? ( ftp://cellular.phys.pusan.ac.kr/CJK-LyX/qt/CJK-LyX-qt-${PV}-1.patch )
		!qt? ( ftp://cellular.phys.pusan.ac.kr/CJK-LyX/xforms/CJK-LyX-xforms-${PV}-1.patch ) )"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc sparc x86"
IUSE="cjk nls cups qt debug gnome"

# these dependencies need looking at.
# does lyx only need qt to compile but not run ?
# I'll look into it <obz@gentoo.org>
DEPEND="virtual/x11
	virtual/tetex
	>=dev-lang/perl-5
	nls? ( sys-devel/gettext )
	app-text/aiksaurus
	qt? ( =x11-libs/qt-3* )
	!qt? ( cjk? ( =x11-libs/xforms-1.0-r1 )
		!cjk? ( =x11-libs/xforms-1* ) )"

RDEPEND="${DEPEND}
	virtual/ghostscript
	virtual/pdfviewer
	virtual/psviewer
	virtual/aspell-dict
	dev-tex/latex2html
	media-gfx/imagemagick
	cups? ( virtual/lpr )
	app-text/sgmltools-lite
	app-text/noweb
	dev-tex/chktex"

DEPEND="$DEPEND >=sys-devel/autoconf-2.58"

src_unpack() {
	unpack ${P}.tar.bz2
	unpack latex-xft-fonts-0.1.tar.gz
	cd ${S}
	epatch ${FILESDIR}/${PN}-1.3.2-nomktex.patch
	epatch ${FILESDIR}/${PN}-1.3.3-configure-diff
	epatch ${FILESDIR}/${P}-boost.patch
	if use cjk && use qt ; then
		epatch ${DISTDIR}/CJK-LyX-qt-${PV}-1.patch
	elif use cjk && built_with_use '=x11-libs/xforms-1.0-r1' cjk ; then
		epatch ${DISTDIR}/CJK-LyX-xforms-${PV}-1.patch
	elif use cjk ; then
		eerror
		eerror 'CJK-LyX requires qt USE flag enabled or x11-libs/xforms-1.0-r1'
		eerror 'built with cjk USE flag. You should either'
		eerror '1) USE="cjk qt" emerge lyx'
		eerror 'or'
		eerror '2) USE="cjk" emerge xforms-1.0-r1; USE="cjk -qt" emerge lyx'
		eerror 'or'
		eerror '3) USE="-cjk" emerge lyx (normal LyX will be built)'
		eerror
		die "Please remerge xforms-1.0-r1 with cjk USE flag enabled."
	fi
	elibtoolize || die
}

src_compile() {
	local myconf=""
	if use qt ; then
		set-qtdir 3
		myconf="$myconf --with-frontend=qt --with-qt-dir=${QTDIR}"
	else
		export CPPFLAGS="${CPPFLAGS} -I/usr/X11R6/include/X11"
		myconf="$myconf --with-frontend=xforms"
	fi

	export WANT_AUTOCONF=2.5

	local flags="${CXXFLAGS} $(test_flag -fno-stack-protector) $(test_flag -fno-stack-protector-all)"
	unset CFLAGS
	unset CXXFLAGS
	econf \
		$(use_enable nls) \
		$(use_enable debug) \
		${myconf} \
		--enable-optimization="${flags/-Os}" \
		|| die
	# bug 57479
	emake || die "emake failed"

}

src_install() {
	einstall || die
	dodoc README* UPGRADING INSTALL* ChangeLog NEWS COPYING \
		ANNOUNCE ABOUT-NLS ${DISTDIR}/preferences
	insinto /usr/share/lyx/bind
	doins ${DISTDIR}/hebrew.bind

	domenu ${FILESDIR}/lyx.desktop

	# install the latex-xft fonts, which should fix
	# the problems outlined in bug #15629
	# <obz@gentoo.org>
	cd ${WORKDIR}/latex-xft-fonts-0.1
	make DESTDIR=${D} install || die "Font installation failed"

	mkfontscale ${D}/usr/share/fonts/latex-xft-fonts
	mkfontdir -e /usr/share/fonts/encodings \
		-e /usr/share/fonts/encodings/large \
		-e /usr/X11R6/$(get_libdir)/X11/fonts/encodings \
		${D}/usr/share/fonts/latex-xft-fonts
	HOME=/root fc-cache -f ${D}/usr/share/fonts/latex-xft-fonts
}

pkg_postinst() {

	draw_line
	einfo ""
	einfo "How to use Hebrew in LyX:"
	einfo "1. emerge app-text/ivritex."
	einfo "2. unzip /usr/share/doc/${P}/preferences.gz into ~/.lyx/preferences"
	einfo "or, read http://www.math.tau.ac.il/~dekelts/lyx/instructions2.html"
	einfo "for instructions on using lyx's own preferences dialog to equal effect."
	einfo "3. use lyx's qt interface (compile with USE=qt) for maximum effect."
	einfo ""

	if ! useq qt ; then
	draw_line
	einfo ""
	einfo "If you have a multi-head setup not using xinerama you can only use lyx"
	einfo "on the 2nd head if not using qt (maybe due to a xforms bug). See bug #40392."
	einfo ""
	fi
}