summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeri Harris <keri@gentoo.org>2018-01-27 14:13:55 +0100
committerKeri Harris <keri@gentoo.org>2018-01-27 14:14:36 +0100
commite50021b642670b3ef723e1f086c96983c69f0841 (patch)
treee33cdcfa39f425f2fe77d323f1d8c6d577db81ea
parentnet-analyzer/sslscan: cleanup (diff)
downloadgentoo-e50021b642670b3ef723e1f086c96983c69f0841.tar.gz
gentoo-e50021b642670b3ef723e1f086c96983c69f0841.tar.bz2
gentoo-e50021b642670b3ef723e1f086c96983c69f0841.zip
dev-lang/qu-prolog: port to QT5
Package-Manager: Portage-2.3.13, Repoman-2.3.3
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-10.0-qt5.patch35
-rw-r--r--dev-lang/qu-prolog/qu-prolog-10.0-r1.ebuild101
2 files changed, 136 insertions, 0 deletions
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 000000000000..d82e78cada16
--- /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 000000000000..bb5af2782e14
--- /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
+}