[arch-commits] Commit in (11 files)

Balló György bgyorgy at archlinux.org
Fri Dec 21 01:31:43 UTC 2018


    Date: Friday, December 21, 2018 @ 01:31:42
  Author: bgyorgy
Revision: 417044

Move gimagereader from AUR with 102 votes

And its dependencies: gtkspellmm, qtspell.

Added:
  gimagereader/
  gimagereader/trunk/
  gimagereader/trunk/PKGBUILD
  gimagereader/trunk/openmp.patch
  gimagereader/trunk/setlocale.patch
  gtkspellmm/
  gtkspellmm/trunk/
  gtkspellmm/trunk/PKGBUILD
  qtspell/
  qtspell/trunk/
  qtspell/trunk/PKGBUILD

------------------------------------+
 gimagereader/trunk/PKGBUILD        |   80 +++++++++++++++++++++++++++++++++++
 gimagereader/trunk/openmp.patch    |   26 +++++++++++
 gimagereader/trunk/setlocale.patch |   72 +++++++++++++++++++++++++++++++
 gtkspellmm/trunk/PKGBUILD          |   34 ++++++++++++++
 qtspell/trunk/PKGBUILD             |   29 ++++++++++++
 5 files changed, 241 insertions(+)

Added: gimagereader/trunk/PKGBUILD
===================================================================
--- gimagereader/trunk/PKGBUILD	                        (rev 0)
+++ gimagereader/trunk/PKGBUILD	2018-12-21 01:31:42 UTC (rev 417044)
@@ -0,0 +1,80 @@
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+
+pkgbase=gimagereader
+pkgname=(gimagereader-gtk gimagereader-qt gimagereader-common)
+pkgver=3.3.0
+pkgrel=1
+url="https://github.com/manisandro/gImageReader"
+pkgdesc="Gtk/Qt front-end to tesseract-ocr"
+arch=(x86_64)
+license=(GPL3)
+depends=(desktop-file-utils djvulibre gtksourceviewmm gtkspellmm libxml++ libzip podofo
+         poppler-glib poppler-qt5 qt5-imageformats qtspell quazip sane tesseract)
+makedepends=(cmake intltool python-gobject)
+source=(https://github.com/manisandro/gImageReader/releases/download/v$pkgver/$pkgbase-$pkgver.tar.xz
+        setlocale.patch
+        openmp.patch)
+sha256sums=('91615af41e89170aadaae68cb0db94eb62abdd5b308e8a5162477ba9baf6efe9'
+            'd007abed0fd16e3db340b3d5114a7de7b7b1cdb858f9fce51655df98a02c1baa'
+            'ee84de7fee390ee54152b4e332e50d8f585b0c9a3aa8b40a04f865b5250607c2')
+
+prepare() {
+  [[ -d build-gtk ]] || mkdir build-gtk
+  [[ -d build-qt ]] || mkdir build-qt
+  [[ -d gimagereader-common ]] || mkdir gimagereader-common
+
+  cd $pkgbase-$pkgver
+
+  # Set locale to C before constructing TessBaseAPI
+  # https://github.com/manisandro/gImageReader/issues/375
+  patch -Np1 -i ../setlocale.patch
+
+  # Run OpenMP once before calling tesseract
+  # https://github.com/manisandro/gImageReader/issues/285
+  patch -Np1 -i ../openmp.patch
+}
+
+build() {
+  cd build-gtk
+  cmake -G "Unix Makefiles" ../$pkgbase-$pkgver/ \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DINTERFACE_TYPE=gtk
+  make
+
+  cd ../build-qt
+  cmake -G "Unix Makefiles" ../$pkgbase-$pkgver/ \
+    -DCMAKE_INSTALL_PREFIX=/usr \
+    -DINTERFACE_TYPE=qt5
+  make
+}
+
+package_gimagereader-gtk() {
+  pkgdesc="Gtk front-end to tesseract-ocr"
+  depends=(gimagereader-common djvulibre gtksourceviewmm gtkspellmm libxml++ libzip podofo poppler-glib sane tesseract)
+
+  cd build-gtk
+  make DESTDIR="$pkgdir" install
+
+  # Split gimagereader-common
+  mv "$pkgdir"/usr/share/{doc,icons,locale} \
+     "$srcdir/gimagereader-common/"
+}
+
+package_gimagereader-qt() {
+  pkgdesc="Qt front-end to tesseract-ocr"
+  depends=(gimagereader-common desktop-file-utils djvulibre podofo poppler-qt5 qt5-imageformats qtspell quazip sane tesseract)
+
+  cd build-qt
+  make DESTDIR="$pkgdir" install
+
+  # Split gimagereader-common
+  rm -r "$pkgdir"/usr/share/{doc,icons,locale}
+}
+
+package_gimagereader-common() {
+  pkgdesc="Common files for gImageReader"
+  depends=(hicolor-icon-theme)
+
+  mkdir -p "$pkgdir"/usr/share
+  mv gimagereader-common/* "$pkgdir/usr/share"
+}


Property changes on: gimagereader/trunk/PKGBUILD
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+Id
\ No newline at end of property
Added: gimagereader/trunk/openmp.patch
===================================================================
--- gimagereader/trunk/openmp.patch	                        (rev 0)
+++ gimagereader/trunk/openmp.patch	2018-12-21 01:31:42 UTC (rev 417044)
@@ -0,0 +1,26 @@
+From 122ed08d72265e3abb02c48c4be804d793058fc9 Mon Sep 17 00:00:00 2001
+From: Philip Rinn <rinni at inventati.org>
+Date: Fri, 5 Jan 2018 15:22:47 +0100
+Subject: [PATCH] Run OpenMP once before calling tesseract (fixes: #285)
+
+---
+ gtk/src/main.cc | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/gtk/src/main.cc b/gtk/src/main.cc
+index a2668e4..9fec77a 100644
+--- a/gtk/src/main.cc
++++ b/gtk/src/main.cc
+@@ -94,6 +94,12 @@ int main (int argc, char *argv[]) {
+ 	}
+ #endif
+ 
++    // Run OpenMP once before tesseract is called, otherwise it might be
++    // _very_ slow, see https://github.com/manisandro/gImageReader/issues/285
++    // Sleep 1 millisecond to prevent being optimized out.
++    #pragma omp parallel for schedule(static)
++    for(int i = 0; i < 1; i++) { sleep(1); }
++
+ 	std::string localeDir = Glib::build_filename(pkgDir, "share", "locale");
+ 
+ 	bindtextdomain(GETTEXT_PACKAGE, localeDir.c_str());

Added: gimagereader/trunk/setlocale.patch
===================================================================
--- gimagereader/trunk/setlocale.patch	                        (rev 0)
+++ gimagereader/trunk/setlocale.patch	2018-12-21 01:31:42 UTC (rev 417044)
@@ -0,0 +1,72 @@
+From 46390fee9a01ea7c4d85cd0757a6a258c8ebe600 Mon Sep 17 00:00:00 2001
+From: Sandro Mani <manisandro at gmail.com>
+Date: Sun, 30 Sep 2018 23:35:26 +0200
+Subject: [PATCH] Set locale to C before constructing TessBaseAPI
+
+---
+ gtk/src/Recognizer.cc            | 3 +++
+ gtk/src/hocr/OutputEditorHOCR.cc | 3 +++
+ qt/src/Recognizer.cc             | 3 +++
+ qt/src/hocr/OutputEditorHOCR.cc  | 3 +++
+ 4 files changed, 12 insertions(+)
+
+diff --git a/gtk/src/Recognizer.cc b/gtk/src/Recognizer.cc
+index 564a3f2..2cbeb93 100644
+--- a/gtk/src/Recognizer.cc
++++ b/gtk/src/Recognizer.cc
+@@ -148,7 +148,10 @@ static void tessCrashHandler(int /*signal*/) {
+ 			captured += buf;
+ 		}
+ 	} while(bytesRead == sizeof(buf) - 1);
++	std::string current = setlocale(LC_ALL, NULL);
++	setlocale(LC_ALL, "C");
+ 	tesseract::TessBaseAPI tess;
++	setlocale(LC_ALL, current.c_str());
+ 	Glib::ustring errMsg = Glib::ustring::compose(_("Tesseract crashed with the following message:\n\n"
+ 	                       "%1\n\n"
+ 	                       "This typically happens for one of the following reasons:\n"
+diff --git a/gtk/src/hocr/OutputEditorHOCR.cc b/gtk/src/hocr/OutputEditorHOCR.cc
+index ffd7250..45679df 100644
+--- a/gtk/src/hocr/OutputEditorHOCR.cc
++++ b/gtk/src/hocr/OutputEditorHOCR.cc
+@@ -972,7 +972,10 @@ bool OutputEditorHOCR::save(const std::string& filename) {
+ 		Utils::message_dialog(Gtk::MESSAGE_ERROR, _("Failed to save output"), _("Check that you have writing permissions in the selected folder."));
+ 		return false;
+ 	}
++	std::string current = setlocale(LC_ALL, NULL);
++	setlocale(LC_ALL, "C");
+ 	tesseract::TessBaseAPI tess;
++	setlocale(LC_ALL, current.c_str());
+ 	Glib::ustring header = Glib::ustring::compose(
+ 	                           "<!DOCTYPE html>\n"
+ 	                           "<html>\n"
+diff --git a/qt/src/Recognizer.cc b/qt/src/Recognizer.cc
+index 0c4b0dd..7ff38cb 100644
+--- a/qt/src/Recognizer.cc
++++ b/qt/src/Recognizer.cc
+@@ -135,7 +135,10 @@ static void tessCrashHandler(int /*signal*/) {
+ 			captured += buf;
+ 		}
+ 	} while(bytesRead == sizeof(buf) - 1);
++	QByteArray current = setlocale(LC_ALL, NULL);
++	setlocale(LC_ALL, "C");
+ 	tesseract::TessBaseAPI tess;
++	setlocale(LC_ALL, current.constData());
+ 	QString errMsg = QString(_("Tesseract crashed with the following message:\n\n"
+ 	                           "%1\n\n"
+ 	                           "This typically happens for one of the following reasons:\n"
+diff --git a/qt/src/hocr/OutputEditorHOCR.cc b/qt/src/hocr/OutputEditorHOCR.cc
+index bb3759a..c59e3ee 100644
+--- a/qt/src/hocr/OutputEditorHOCR.cc
++++ b/qt/src/hocr/OutputEditorHOCR.cc
+@@ -842,7 +842,10 @@ bool OutputEditorHOCR::save(const QString& filename) {
+ 		QMessageBox::critical(MAIN, _("Failed to save output"), _("Check that you have writing permissions in the selected folder."));
+ 		return false;
+ 	}
++	QByteArray current = setlocale(LC_ALL, NULL);
++	setlocale(LC_ALL, "C");
+ 	tesseract::TessBaseAPI tess;
++	setlocale(LC_ALL, current.constData());
+ 	QString header = QString(
+ 	                     "<!DOCTYPE html>\n"
+ 	                     "<html>\n"

Added: gtkspellmm/trunk/PKGBUILD
===================================================================
--- gtkspellmm/trunk/PKGBUILD	                        (rev 0)
+++ gtkspellmm/trunk/PKGBUILD	2018-12-21 01:31:42 UTC (rev 417044)
@@ -0,0 +1,34 @@
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+
+pkgbase=gtkspellmm
+pkgname=(gtkspellmm gtkspellmm-docs)
+pkgver=3.0.5
+pkgrel=3
+url="http://gtkspell.sourceforge.net/"
+pkgdesc="C++ binding for gtkspell"
+arch=(x86_64)
+license=(GPL)
+depends=(gtkmm3 gtkspell3)
+makedepends=(gtkmm3-docs)
+source=(https://downloads.sourceforge.net/gtkspell/$pkgbase-$pkgver.tar.xz)
+sha256sums=('5b875a5753ce593274d0c6e803af6300973020c5443905999aba96ed3cef1545')
+
+build() {
+  cd $pkgbase-$pkgver
+  ./configure --prefix=/usr
+  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+  make
+}
+
+package_gtkspellmm() {
+  cd $pkgbase-$pkgver
+  make DESTDIR="$pkgdir" install doc_subdirs=
+}
+
+package_gtkspellmm-docs() {
+  pkgdesc="Developer documentation for gtkspellmm"
+  depends=(gtkmm3-docs)
+
+  cd $pkgbase-$pkgver
+  make -C doc DESTDIR="$pkgdir" install
+}


Property changes on: gtkspellmm/trunk/PKGBUILD
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+Id
\ No newline at end of property
Added: qtspell/trunk/PKGBUILD
===================================================================
--- qtspell/trunk/PKGBUILD	                        (rev 0)
+++ qtspell/trunk/PKGBUILD	2018-12-21 01:31:42 UTC (rev 417044)
@@ -0,0 +1,29 @@
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+
+pkgname=qtspell
+pkgver=0.8.5
+pkgrel=2
+url="https://github.com/manisandro/qtspell"
+pkgdesc="Spell checking for Qt text widgets"
+arch=(x86_64)
+license=(GPL3)
+depends=(enchant iso-codes qt5-base)
+makedepends=(cmake qt5-tools)
+source=($pkgname-$pkgver.tar.gz::https://github.com/manisandro/$pkgname/archive/$pkgver.tar.gz)
+sha256sums=('4d13b8b07b6c572fd6e1896dd87f6516113f36c31aa2d1f3aa9d6bfe672461c5')
+
+prepare() {
+  [[ -d build ]] || mkdir build
+}
+
+build() {
+  cd build
+  cmake -G "Unix Makefiles" ../$pkgname-$pkgver/ \
+    -DCMAKE_INSTALL_PREFIX=/usr
+  make
+}
+
+package() {
+  cd build
+  make DESTDIR="$pkgdir" install
+}


Property changes on: qtspell/trunk/PKGBUILD
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+Id
\ No newline at end of property



More information about the arch-commits mailing list