commit:     e50021b642670b3ef723e1f086c96983c69f0841
Author:     Keri Harris <keri <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 27 13:13:55 2018 +0000
Commit:     Keri Harris <keri <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 13:14:36 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e50021b6

dev-lang/qu-prolog: port to QT5

Package-Manager: Portage-2.3.13, Repoman-2.3.3

 dev-lang/qu-prolog/files/qu-prolog-10.0-qt5.patch |  35 ++++++++
 dev-lang/qu-prolog/qu-prolog-10.0-r1.ebuild       | 101 ++++++++++++++++++++++
 2 files changed, 136 insertions(+)

diff --git a/dev-lang/qu-prolog/files/qu-prolog-10.0-qt5.patch 
b/dev-lang/qu-prolog/files/qu-prolog-10.0-qt5.patch
new file mode 100644
index 00000000000..d82e78cada1
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-10.0-qt5.patch
@@ -0,0 +1,35 @@
+diff -ur qp10.0.orig/src/xqp/term.cc qp10.0/src/xqp/term.cc
+--- qp10.0.orig/src/xqp/term.cc        2008-07-09 07:32:37.000000000 +0200
++++ qp10.0/src/xqp/term.cc     2018-01-27 14:06:54.101545854 +0100
+@@ -38,7 +38,7 @@
+ 
+ bool graphic_char(QChar c)
+ {
+-    switch (c.toAscii())
++    switch (c.toLatin1())
+     {
+        case '-':
+        case '/':
+diff -ur qp10.0.orig/src/xqp/xqp.cc qp10.0/src/xqp/xqp.cc
+--- qp10.0.orig/src/xqp/xqp.cc 2011-07-14 01:08:42.000000000 +0200
++++ qp10.0/src/xqp/xqp.cc      2018-01-27 14:07:53.902543353 +0100
+@@ -167,7 +167,7 @@
+ 
+ void Xqp::send_cmd_to_qp(QString cmd)
+ {
+-   write(qp_stdin, cmd.toAscii(), cmd.length());
++   write(qp_stdin, cmd.toLatin1(), cmd.length());
+ }
+ 
+   
+diff -ur qp10.0.orig/src/xqp/xqp.pro qp10.0/src/xqp/xqp.pro
+--- qp10.0.orig/src/xqp/xqp.pro        2008-07-09 07:32:37.000000000 +0200
++++ qp10.0/src/xqp/xqp.pro     2018-01-27 14:01:24.764559627 +0100
+@@ -4,6 +4,7 @@
+ 
+ TEMPLATE = app
+ INCLUDEPATH += .
++QT += widgets
+ 
+ # Input
+ HEADERS += interact.h qpconfig.h qthelp.h term.h xqp.h xqpqueries.h

diff --git a/dev-lang/qu-prolog/qu-prolog-10.0-r1.ebuild 
b/dev-lang/qu-prolog/qu-prolog-10.0-r1.ebuild
new file mode 100644
index 00000000000..bb5af2782e1
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-10.0-r1.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils multilib qmake-utils
+
+MY_P=qp${PV}
+
+DESCRIPTION="Extended Prolog supporting quantifiers, object-variables and 
substitutions"
+HOMEPAGE="http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html";
+SRC_URI="http://www.itee.uq.edu.au/~pjr/HomePages/QPFiles/${MY_P}.tar.gz";
+
+LICENSE="Apache-2.0 GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug doc examples pedro qt5 readline threads"
+
+RDEPEND="
+       !dev-util/mpatch
+       !dev-util/rej
+       !games-rpg/kqlives
+       qt5? (
+               dev-qt/qtwidgets:5
+               dev-qt/qtgui:5
+        )
+       pedro? ( net-misc/pedro )
+       readline? ( app-misc/rlwrap )"
+DEPEND="${RDEPEND}
+       dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+       epatch "${FILESDIR}"/${P}-configure.patch
+       epatch "${FILESDIR}"/${P}-associated-item.patch
+       epatch "${FILESDIR}"/${P}-gcc6.patch
+       epatch "${FILESDIR}"/${P}-qt5.patch
+}
+
+src_configure() {
+       econf \
+               --libdir=/usr/$(get_libdir) \
+               $(use_enable debug) \
+               $(use_enable threads multiple-threads)
+
+       if use qt5; then
+               cd "${S}"/src/xqp || die
+               eqmake5 xqp.pro
+       fi
+}
+
+src_compile() {
+       emake OPTIMISATION="${CXXFLAGS}"
+
+       if use qt5; then
+               cd "${S}"/src/xqp || die
+               emake
+       fi
+}
+
+src_install() {
+       sed \
+               -e "s|${S}|/usr/$(get_libdir)/qu-prolog|g" \
+               -i bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp || die
+
+       dobin bin/{qc,qecat,qp,kq}
+
+       use qt5 && dobin src/xqp/xqp
+
+       into /usr/$(get_libdir)/${PN}
+       dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp}
+
+       insinto /usr/$(get_libdir)/${PN}/bin
+       doins bin/rl_commands
+       doins bin/{qc1.qup,qecat,qg,qp}.qx
+
+       insinto /usr/$(get_libdir)/${PN}/library
+       doins prolog/library/*.qo
+
+       insinto /usr/$(get_libdir)/${PN}/compiler
+       doins prolog/compiler/*.qo
+
+       doman doc/man/man1/*.1
+
+       dodoc README
+
+       if use doc ; then
+               docinto reference-manual
+               dodoc doc/manual/*.html
+               docinto user-guide
+               dodoc doc/user/main.pdf
+       fi
+
+       if use examples ; then
+               insinto /usr/share/doc/${PF}/examples
+               doins examples/*.ql
+               docinto examples
+               newdoc examples/README README.examples
+       fi
+}

Reply via email to