From 71d11ce985062717f3bb06f835b6f1d32f2e852d Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Wed, 7 Mar 2018 15:41:13 +0000
Subject: lyx: dep of vulkan-docs

---
 abs/extra/lyx/PKGBUILD           | 51 ++++++++++++++++++++++++++++++++++++++++
 abs/extra/lyx/lyx-enchant2.patch | 37 +++++++++++++++++++++++++++++
 abs/extra/lyx/lyxrc.dist         | 14 +++++++++++
 3 files changed, 102 insertions(+)
 create mode 100644 abs/extra/lyx/PKGBUILD
 create mode 100644 abs/extra/lyx/lyx-enchant2.patch
 create mode 100644 abs/extra/lyx/lyxrc.dist

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"
-- 
cgit v0.12

