From ced0df00c37a91b4dbcf38665bdedc0d38fbd44f Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Wed, 14 Sep 2016 14:00:35 -0400 Subject: [PATCH] gnu: Add qscintilla-qt4. * gnu/packages/qt.scm (qscintilla-qt4): New variable. --- gnu/packages/qt.scm | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index a482d75..de3e656 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Ludovic Courtès ;;; Copyright © 2015, 2016 Efraim Flashner ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Kei Kebreau ;;; ;;; This file is part of GNU Guix. ;;; @@ -1112,3 +1113,70 @@ contain over 620 classes.") "QtKeychain is a Qt library to store passwords and other secret data securely. It will not store any data unencrypted unless explicitly requested.") (license license:bsd-3))) + +(define-public qscintilla + (package + (name "qscintilla") + (version "2.9.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/QScintilla2/QScintilla-" + version "/QScintilla_gpl-" version ".tar.gz")) + (sha256 + (base32 + "0znvdncpj64zcpbkyvj11dm8bdc3nfn5girggj33ammhfcyvkalq")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'change-directory + (lambda _ (chdir "Qt4Qt5") #t)) + (replace 'configure + (lambda _ (zero? (system* "qmake" "qscintilla.pro")))) + (add-before 'install 'fix-Makefiles + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (qtbase (assoc-ref inputs "qtbase"))) + (substitute* (find-files "." "Makefile") + (((string-append "INSTALL_ROOT)" qtbase)) + (string-append "INSTALL_ROOT)" out)))) + #t))))) + (native-inputs + `(("python-pyqt" ,python-pyqt) + ("qtbase" ,qtbase))) ; for qmake + (home-page "https://www.riverbankcomputing.com/software/qscintilla/intro") + (synopsis "Qt5 port of the Scintilla editing component") + (description + "QScintilla is a port to Qt of Neil Hodgson's Scintilla C++ editor control. +As well as features found in standard text editing components, QScintilla +includes features especially useful when editing and debugging source code. +These include support for syntax styling, error indicators, code completion and +call tips.") + (license (list license:bsd-2 ; Python/configure.py + license:expat ; src/ and include/ + license:gpl3)))) + +;; required for Octave until its GUI is updated to Qt 5 +(define-public qscintilla-qt4 + (package + (inherit qscintilla) + (name "qscintilla-qt4") + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'change-directory + (lambda _ (chdir "Qt4Qt5") #t)) + (replace 'configure + (lambda _ (zero? (system* "qmake" "qscintilla.pro")))) + (add-before 'install 'fix-Makefiles + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (qt (assoc-ref inputs "qt"))) + (substitute* (find-files "." "Makefile") + (((string-append "INSTALL_ROOT)" qt)) + (string-append "INSTALL_ROOT)" out)))) + #t))))) + (native-inputs + `(("python-pyqt" ,python-pyqt-4) + ("qt" ,qt-4))) ; for qmake + (synopsis "Qt4 port of the Scintilla editing component"))) -- 2.10.0