guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add qscintilla.


From: Efraim Flashner
Subject: Re: [PATCH] gnu: Add qscintilla.
Date: Tue, 13 Sep 2016 22:39:07 +0300
User-agent: Mutt/1.7.0 (2016-08-17)

On Tue, Sep 13, 2016 at 02:01:33PM -0400, Kei Kebreau wrote:
> Leo Famulari <address@hidden> writes:
> 
> > On Tue, Sep 13, 2016 at 10:37:56AM -0400, Kei Kebreau wrote:
> >> Kei Kebreau <address@hidden> writes:
> >> > A component necessary for GNU Octave's GUI.
> >> > How does it look?
> >> Not sure how packaging Qt packages goes, but I've discovered that
> >> GNU Octave's GUI only builds with Qt4 support. I've changed the patch to
> >> adjust this. Should I leave the old patch as is and add a qt4 package
> >> that inherits from it?
> >
> > Since Qt 4 is no longer supported upstream, we are trying to remove
> > users of the qt-4 package so that we can eventually remove the qt-4
> > package itself.
> >
> > With that in mind, how about a qscintilla-for-octave package? This
> > package can inherit from a qscintilla that uses qtbase, and I think it
> > should be declared privately [using (define) instead of (define-public].
> >
> >> +         (replace 'configure
> >> +           (lambda _
> >> +             (chdir "Qt4Qt5")
> >> +             (zero? (system* "qmake" "qscintilla.pro"))))
> >
> > I would change directory in a separate 'chdir' phase.
> >
> >> +               (substitute* (find-files "." "Makefile")
> >> +                 (((string-append "INSTALL_ROOT)" qt))
> >> +                  (string-append "INSTALL_ROOT)" out)))))))))
> >                      ^
> > Inconsistent indentation. Also, this phase should return #t, since the
> > return value of substitute* is unspecified.
> >
> >> +    (synopsis "Qt5 port of the Scintilla editing component")
> >
> > Make sure to adjust the Qt name as appropriate :)
> 
> Like below? And how could I then access qscintilla-for-octave from
> maths.scm if it isn't defined publicly?
> 
> (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))))
> 
> (define qtscintilla-for-octave

This should be qtscintilla-qt4, we might have a use for it outside of
octave

>   (package
>     (inherit qtscintilla)
>     (name "qtscintilla-for-octave")
>     (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)

python-pyqt is built against qt-5

>        ("qt" ,qt-4))) ; for qmake
>     (synopsis "Qt4 port of the Scintilla editing component")))



-- 
Efraim Flashner   <address@hidden>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]