summaryrefslogtreecommitdiff
path: root/dev-lang/qu-prolog
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/qu-prolog')
-rw-r--r--dev-lang/qu-prolog/Manifest3
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-10.x-qa-compiler-flags.patch22
-rw-r--r--dev-lang/qu-prolog/qu-prolog-10.7.ebuild107
3 files changed, 132 insertions, 0 deletions
diff --git a/dev-lang/qu-prolog/Manifest b/dev-lang/qu-prolog/Manifest
index 326c69182da4..cec4d33f2b91 100644
--- a/dev-lang/qu-prolog/Manifest
+++ b/dev-lang/qu-prolog/Manifest
@@ -1,5 +1,8 @@
AUX qu-prolog-10.x-compiler-flags.patch 762 BLAKE2B 1b96597015aeae67aa92caf5913e81f2bf11e86c73ce6acaaeee1f2663871471fd595eaccfb00cdd10cedf9677c03095bc37ddc2a8d4a370d38439896f16e72b SHA512 c09286d76692a125d98b6bf3684df0d6dd57cd5ef70387fdbd5184493d978c8d5b9c1ce63c4305986df28382e0201abb53af3a6451f802d677dbc22b1741237e
+AUX qu-prolog-10.x-qa-compiler-flags.patch 995 BLAKE2B 1a35bd4eecc08cb9b4d861b65710a38fcada73e5ceed4cd02cc196541ec7417990788179022c1b12c7a545df5f5e074178745d70d97e960e1dfb4747556f2963 SHA512 e766c099f53e66f3775d8b50cc4f659770369001f78689b41c5a8e4ddcc4249bd7aaba678bcd60b879688d1b2525135454ff03e01d4d4b43bb1f2f357561ee55
AUX qu-prolog-10.x-qt5.patch 1037 BLAKE2B 91287f26c97c0c2f1c9cd3bae3a007cf27e4b8121aca4a42cabbbb37c224b7399ed06468b7a725977f27bad2fcda8d2165bfeb569f36491d227dd472036de5ed SHA512 9dd1c8245f725d552bf23ad9ef1bb858a06c69b66778fa851013775081751a77923e2145f6575966e8394666b8dc2e04724d102be28b32efaa44b7e474b3dd7f
DIST qp10.6.tar.gz 1671349 BLAKE2B 189ddd733a0bbf939387de60ec76e8e41a430af5f4684a9a3b8cc3effa4e402cfd4471c955f4d626d2de8cf14eb93c2977540ad209d06ce9b562325a4b984fea SHA512 425b35c758ba86cc14a1faf5c19f2c091142be6c42261323dc6f551efd6c80f7223584cd2be239748539eaf25308f777d95fd5bfdc65b33ca3245377e1766299
+DIST qp10.7.tar.gz 1857589 BLAKE2B 986f0d8744d5b0a3974191d154a2ca0efa97f6c02483d975b4bb43bd7ae44d9d4233f6bffc1947d03ac3db9c0181953254e66bc62d55add6b0debbed1ad21de6 SHA512 305c89710e02167bb37e999b5af182b9dbca710d32c79149782a90f29b2e80f6a5462e9fb22153e770cef7484c5181bde31f1fe680b786f0f253ced13a3df830
EBUILD qu-prolog-10.6.ebuild 2058 BLAKE2B d4cd32c6ddf4255809ed4788c2b83131a46de9a6f6f138e1f59baf5a10fe39719948f7e179c6bc061db09def5a19a9ffd3aeae15b1cdec87058095c09d514157 SHA512 660a976f9da11c96fd72d1ee4f7676f00a3932904f7f83a7ba447f47174807c1973805e8104038e41dc4362b1138aaf952f08fdbb59bb5bf0a80040a404d5b53
+EBUILD qu-prolog-10.7.ebuild 2164 BLAKE2B 66903a37e43a51704f07dffd6f750c719b27c02aea709cdb2955744bc97a7d702b72f0f3f5799df5aa0e2579dfac2a08f97adee050da425b2fc12ce4d787f41c SHA512 63433017376393c8c13595d2fef20c30dc921c55d162fac9e110b545b9dd6ba0d68069dc83765bbf509dabf733da8a4dff1ee5e740d1d5bdacbe029a3b819250
MISC metadata.xml 348 BLAKE2B ca5e1c4b76b62f23822a7a8c4f666faa96e4eabfb4a4477f40b49984dedee39d911d1ac5fd811e340af4b3ce556073baa6fa40949925419996b7c41c04605efa SHA512 5e41fd540a4897642a392bc0eea54762142f80f9523e0abd497e10d4c4cc83f0c0784063383b53c363d7e55ffbb75829201dd93cc73cbfbf4e7c5e8419ae337c
diff --git a/dev-lang/qu-prolog/files/qu-prolog-10.x-qa-compiler-flags.patch b/dev-lang/qu-prolog/files/qu-prolog-10.x-qa-compiler-flags.patch
new file mode 100644
index 000000000000..c6dbaca842f0
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-10.x-qa-compiler-flags.patch
@@ -0,0 +1,22 @@
+--- qp10.7.orig/src/Makefile.in 2020-06-24 23:37:02.000000000 -0000
++++ qp10.7/src/Makefile.in 2021-06-26 08:07:51.916841713 -0000
+@@ -41,7 +41,7 @@
+ #export DEBUGGING=
+
+ export CXXFLAGS = -std=c++11 @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 $(OPTIMISATION) @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized `pkg-config --cflags libpcre2-8`
+-export QACXXFLAGS = -Wall -D_GNU_SOURCE=1 @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized
++export QACXXFLAGS = -Wall -D_GNU_SOURCE=1 $(OPTIMISATION) @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized
+
+ .PHONY: all
+ all: commands
+--- qp10.7.orig/src/Makefile.ipc.in 2020-06-24 23:37:02.000000000 -0000
++++ qp10.7/src/Makefile.ipc.in 2021-06-26 08:14:01.700826247 -0000
+@@ -20,7 +20,7 @@
+
+
+ pedro_token.o : pedro_token.c
+- $(CXX) -fno-strict-aliasing -Wall -D_GNU_SOURCE=1 -O2 -DNDEBUG -Wno-uninitialized -c -o pedro_token.o pedro_token.c
++ $(CXX) $(CXXFLAGS) -c -o pedro_token.o pedro_token.c
+
+ pedro_token.c: pedro_token.l
+ flex -opedro_token.c pedro_token.l
diff --git a/dev-lang/qu-prolog/qu-prolog-10.7.ebuild b/dev-lang/qu-prolog/qu-prolog-10.7.ebuild
new file mode 100644
index 000000000000..707ab8e46073
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-10.7.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit autotools python-any-r1 qmake-utils
+
+MY_P=qp${PV}
+
+DESCRIPTION="Extended Prolog supporting quantifiers, object-variables and substitutions"
+HOMEPAGE="http://staff.itee.uq.edu.au/pjr/HomePages/QuPrologHome.html"
+SRC_URI="http://staff.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 pcre pedro qt5 readline threads"
+
+RDEPEND="
+ !dev-util/rej
+ qt5? (
+ dev-qt/qtwidgets:5
+ dev-qt/qtgui:5
+ )
+ pcre? ( dev-libs/libpcre2 )
+ pedro? ( net-misc/pedro )
+ readline? ( app-misc/rlwrap )"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+ eapply "${FILESDIR}"/${PN}-10.x-qt5.patch
+ eapply "${FILESDIR}"/${PN}-10.x-compiler-flags.patch
+ eapply "${FILESDIR}"/${PN}-10.x-qa-compiler-flags.patch
+ eapply_user
+
+ mv configure.in configure.ac || die
+ eautoconf
+
+ python_fix_shebang "${S}"/bin/qc.in
+}
+
+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
+ docinto examples
+ newdoc examples/README README.examples
+ dodoc examples/*.ql
+ fi
+}