summaryrefslogtreecommitdiffstats
path: root/abs/extra
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra')
-rw-r--r--abs/extra/lyx/PKGBUILD51
-rw-r--r--abs/extra/lyx/lyx-enchant2.patch37
-rw-r--r--abs/extra/lyx/lyxrc.dist14
3 files changed, 102 insertions, 0 deletions
diff --git a/abs/extra/lyx/PKGBUILD b/abs/extra/lyx/PKGBUILD
new file mode 100644
index 0000000..7938c32
--- /dev/null
+++ b/abs/extra/lyx/PKGBUILD
@@ -0,0 +1,51 @@
+# $Id$
+# Maintainer: Ronald van Haren <ronald.archlinux.org>
+# Contributor: Jason Chu <jason@archlinux.org>
+
+pkgname=lyx
+pkgver=2.3.0
+pkgrel=1
+pkgdesc="An advanced WYSIWYM document processor & LaTeX front-end"
+arch=('x86_64')
+url="http://www.lyx.org"
+depends=('qt5-svg' 'texlive-core' 'python2' 'imagemagick' 'enchant' 'boost-libs' 'libmythes' 'file'
+ 'hicolor-icon-theme')
+makedepends=('boost' 'bc')
+optdepends=('rcs: built-in version control system'
+ 'texlive-latexextra: float wrap support'
+ 'python: support for python scripts')
+license=('GPL')
+backup=('etc/lyx/lyxrc.dist')
+options=('emptydirs')
+source=(ftp://ftp.lyx.org/pub/lyx/stable/2.3.x/$pkgname-$pkgver.tar.xz{,.sig}
+ lyxrc.dist lyx-enchant2.patch)
+validpgpkeys=('FE66471B43559707AFDAD955DE7A44FAC7FB382D') # LyX Release Manager
+sha512sums=('77366d365f600069564b6d508ba2169744bbc7bc4dc9cb7e9d5f44941796dd7a027ca9ad08f5a67fd6863cbd1f6308ce5233b6e8685ebc6cf78ed19eef84ccb5'
+ 'SKIP'
+ 'eef777cf6033a7b1e04700f33068b07309f8d5c6931c16927305dafb3a00fd46d4b536149349ab56b7455e7dea195c8889da2b6fbf9caa9e76bc0557f9358bc3'
+ '4c3ac4d6b01cb8072179718d9401e61634ce3ac0f324e1d4955d7026889183734d04d9760cc850bce6308917060584eab41d389812e0ddafdf80386c21e04d49')
+
+
+prepare() {
+ cd $pkgname-$pkgver
+ patch -p1 -i ../lyx-enchant2.patch # Fix build with Enchant 2.x
+ sed -e 's|\[enchant\]|\[enchant-2\]|g' -i config/spell.m4
+ autoreconf -vi
+}
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ export CXXFLAGS="$CXXFLAGS -fpermissive"
+ ./configure --prefix=/usr \
+ --enable-qt5 --without-included-boost \
+ --without-included-mythes
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ # install default config file
+ install -Dm644 "${srcdir}/lyxrc.dist" "${pkgdir}/etc/lyx/lyxrc.dist"
+ ln -sf /etc/lyx/lyxrc.dist "${pkgdir}/usr/share/lyx/lyxrc.dist"
+}
diff --git a/abs/extra/lyx/lyx-enchant2.patch b/abs/extra/lyx/lyx-enchant2.patch
new file mode 100644
index 0000000..9a8c444
--- /dev/null
+++ b/abs/extra/lyx/lyx-enchant2.patch
@@ -0,0 +1,37 @@
+diff --git a/lyx-2.2.3/src/EnchantChecker.cpp.orig b/lyx-2.2.3/src/EnchantChecker.cpp
+index 7be361a..70d9914 100644
+--- lyx-2.2.3/src/EnchantChecker.cpp.orig
++++ lyx-2.2.3/src/EnchantChecker.cpp
+@@ -53,6 +53,8 @@ struct EnchantChecker::Private
+
+ /// the spellers
+ Spellers spellers_;
++
++ enchant::Broker instance;
+ };
+
+
+@@ -68,12 +70,11 @@ EnchantChecker::Private::~Private()
+
+ enchant::Dict * EnchantChecker::Private::addSpeller(string const & lang)
+ {
+- enchant::Broker * instance = enchant::Broker::instance();
+ Speller m;
+
+ try {
+ LYXERR(Debug::FILES, "request enchant speller for language " << lang);
+- m.speller = instance->request_dict(lang);
++ m.speller = instance.request_dict(lang);
+ }
+ catch (enchant::Exception & e) {
+ // FIXME error handling?
+@@ -186,8 +187,7 @@ bool EnchantChecker::hasDictionary(Language const * lang) const
+ {
+ if (!lang)
+ return false;
+- enchant::Broker * instance = enchant::Broker::instance();
+- return (instance->dict_exists(lang->code()));
++ return (d->instance.dict_exists(lang->code()));
+ }
+
+
diff --git a/abs/extra/lyx/lyxrc.dist b/abs/extra/lyx/lyxrc.dist
new file mode 100644
index 0000000..dd18694
--- /dev/null
+++ b/abs/extra/lyx/lyxrc.dist
@@ -0,0 +1,14 @@
+### This file is part of
+### ========================================================
+### LyX, The Document Processor
+###
+### Copyright 1995 Matthias Ettrich
+### Copyright 1995-2011 The LyX Team.
+###
+### ========================================================
+
+# The file lyxrc.dist gives initial global options for all LyX users.
+# Almost all settings here can be overridden through the preferences in LyX.
+
+\thesaurusdir_path "/usr/share/mythes"
+\hunspelldir_path "/usr/share/myspell"