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/Manifest23
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-10.0-associated-item.patch11
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-10.0-configure.patch21
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-10.0-gcc6.patch38
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-9.1-cerr-ptr.patch40
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-9.1-cflags.patch34
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-9.1-gcc.patch33
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-9.1-portage.patch32
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-9.5-cflags.patch34
-rw-r--r--dev-lang/qu-prolog/files/qu-prolog-9.5-portage.patch32
-rw-r--r--dev-lang/qu-prolog/metadata.xml11
-rw-r--r--dev-lang/qu-prolog/qu-prolog-10.0.ebuild97
-rw-r--r--dev-lang/qu-prolog/qu-prolog-9.1-r1.ebuild95
-rw-r--r--dev-lang/qu-prolog/qu-prolog-9.1.ebuild102
-rw-r--r--dev-lang/qu-prolog/qu-prolog-9.5.ebuild93
-rw-r--r--dev-lang/qu-prolog/qu-prolog-9.6.ebuild90
-rw-r--r--dev-lang/qu-prolog/qu-prolog-9.7.ebuild90
17 files changed, 876 insertions, 0 deletions
diff --git a/dev-lang/qu-prolog/Manifest b/dev-lang/qu-prolog/Manifest
new file mode 100644
index 000000000000..72466f303f6e
--- /dev/null
+++ b/dev-lang/qu-prolog/Manifest
@@ -0,0 +1,23 @@
+AUX qu-prolog-10.0-associated-item.patch 335 SHA256 27a6f727de28056bf8987ce013cd68fb461d7ad5748d3ce775ab0e04d56be625 SHA512 3b4cefaecacb1e1fb8df8804f198563e99ee69b2ffbdc421e56fb34faeb5ed1a87809b4acf917999ac5e25982e522c8b08775cf9bcf1c01675a77521d372913f WHIRLPOOL 683a51ad7f07b0898a477878cd568e445e77078cbe388586ec59547aeacae075b728394a36b1b2f6799cd6f7c96149e1e889fd51e526414787b292439acc3ed6
+AUX qu-prolog-10.0-configure.patch 518 SHA256 484b5fe687c16f5c701210869ff4c3d8c5240dfff3f9ff85e272a40ba022f499 SHA512 85e484b8086054166740dd757b95547179afa5c199c240b43dcef531aeedd812f4fcb35003a888708c90db5d7bb1ffd22cf9bef1fd31f339ec0894ddde365cd9 WHIRLPOOL 2de644b28673497e8717a239146ba54c57a1217f3f177abf5bc384f7de20adb324b63edd8843f6177abcb30a06b15860589af1981a9e9c4ec662fcfb2a724519
+AUX qu-prolog-10.0-gcc6.patch 906 SHA256 61201c18cad61ed803fd2635a12e0334f3a7c970fc512ee63a1c2a6325504e71 SHA512 bbf5a1d5749964bc5c0e8e530de3729bf1666e541f908ddc66debc696a6b6b4dc55373ef788348f02e33aa58afa5a350f7be866bfb1e4c31c917f334e9dc9ca6 WHIRLPOOL ce1a55eeef54338743bb40f725b251a3600d93f015d3a271a4a3333f7ae5f2fd4fc1498e4519bde3f5de948ea1d5a84f4e208e77e429172bef60fe0d888b4ac2
+AUX qu-prolog-9.1-cerr-ptr.patch 1379 SHA256 dd9ac54f97e84d256f044d7e2f8d5c7470d8e39ab472fd7f55c6007f996234c9 SHA512 b46bdef26c3bbdddb0ed3d463f7a75cbef644c80c78ecfe45ac1cc23771f9a70fa1217480f12f57ee2fcf28afdef1e7a6c9b23e0521c12d3cf151d0ff648f396 WHIRLPOOL 6ca724634ad4244eeba07c489640b245adef2640a919ad304d8501c9f51a2ee67aeca89de049a59b026f77e340cbbbe839d433e8d31d24cd5ba77cc9cf0b5f30
+AUX qu-prolog-9.1-cflags.patch 1089 SHA256 67b6cc6c4009b4bfd8578d5006d5d0fc1b6f7a50368ce078a4a97610a559521b SHA512 5502c6923d8f32e10fbc4dfb49ad3d34cde3e3f7fc68165b121a27c51934edd8cd963066d8cd15323a67854861f51508a5450a1a47867d857989b881a29d8ed9 WHIRLPOOL f51043fe57cc2ef83ece4cdda8dfc80ab14fef1a9a1b222c4b482d7c7a7502719d517164f87f561bd5962b58599ef0cfad60e6b6ed2d222b60b5fd3e300cc46c
+AUX qu-prolog-9.1-gcc.patch 1020 SHA256 b312300d23742dbfacbda0d09c5f8d8bdcd89a510c363db23d707e63bc5a5261 SHA512 6f7e56f060330df6863df22c409be6b8ad7deab5dd9ebd9173d33170d8eedf6367b9a624dd270d46dc45c1699c6c37c218093494cdba9559dab795d8da6f15d5 WHIRLPOOL ca2cbd6ce428731da1e74875337386c66a4238251e9da3f204c3c00e339354fea0c97d728541118da19c3534908ee73051236b52b90902556a7d04c1b4c06584
+AUX qu-prolog-9.1-portage.patch 910 SHA256 d1565bd511cec886a6858db156957388029854c28338bb3d76e494e0ef9c5a95 SHA512 90ab22c9a75254b4370905cf64cebdcb64f7130c2edc07cf3c79562352a9d07e839b24ebbca623587b22ab1cb19b97ae62bc2f5f068ef6380ac2cfc45ec29b8e WHIRLPOOL 4f59b3b3d6394b7645d13f8e9582a6f07ab85e71f2afa2b8bcdd50a0cafc9895c026a7803e6ded82fc31b7fd17aaeefd846b987b718c5e71a51f633f69b8fb84
+AUX qu-prolog-9.5-cflags.patch 1089 SHA256 c9b9ee740757def5833633194c8dead0994fe2b576dfd8aee28ce3e9e040d38f SHA512 cbe5681801f04cbbbd3502bcd5e471e13726e7d33453c7922ab63203db736c83acdf0a5e5325c9c9371d9a994e20d721e9a3d9eb118d5bbd8d762ba0bd52b81c WHIRLPOOL 2d027fd06c399a09a55f41924b23ec729b43d6b52c093d3d001b6b14cf3fbd6c8ad2ae6bb5b8d98da92ed9362179e55d81c10c2e75a05b20745a1bd4724243f7
+AUX qu-prolog-9.5-portage.patch 910 SHA256 bfd9bc50dd813f4be7ebcd1c21715775a874daeb1c76bfe7fe4797de369da44e SHA512 1a77a834c82fbee6b81f114535b22a9b135e0db017a03f3cbd874b166dbc86c6de61dae464ab0e70d00ee11dbce42ab7c0affee98ae895c75ac52af94820d980 WHIRLPOOL 577b0c74ec8564d1ed6166a81965541cbbca2ec0ae5d49ef197ec7b45914b754f3de691a6db10ffd99184b4580304979c07b97b632aef9201f59b56266c832df
+DIST qp10.0.tar.gz 1521469 SHA256 f3968e0ea5f9da80475b8298cbac0c70d3684fb8e68ddc0961a2d8c739aa9f07 SHA512 491ef9cc01f0d34163d47163b3103dcbd52cc5672f64057b898c2d234384ac2e3b64b4e59a1795765ff92de4c97ebdb11a82d394213685c387e4dd7d598c5c60 WHIRLPOOL 675a46d6ce428456e1055b8192c84e488ea1b6a3715f9f3e267d9df0637e304982f933e6078e5912c025eceb02dc79c08bd6744d181269b210ff3233ce69fa37
+DIST qp9.1.tar.gz 1460679 SHA256 1f3052f2700d537b33207943a3ade48b2b3aa5cd01cafc0475bcf26c645bc9af SHA512 44590be9d1ecec97fa6c82b657e9ecc3778f833644055ee87c9a6a36996663d139ffd7b583d72f8ac317648e0f22ccbc2a1da9c3a5eabd23381c668e5d073cbb WHIRLPOOL 37ec4e25c2284b267f72c016b4ea1e542d735c9da5f6532d1f6b439af2b91422ddc251d31e1a17b6366ee6af0e754acdbf8a0c44ef03f46a2515f14b1259b732
+DIST qp9.5.tar.gz 1537445 SHA256 7e4b9883fad00b16c919620033da48482b2eccc875b37f8170d674ce9f72aee2 SHA512 7a79090a6e3f0263e38cf5e5724a5c35c63c8cca2842fa8c07f9ff84011ef7ac9a22b195713aeb626a787c9391c612f3fea0ff38c084634a2f62258feb3eb6e2 WHIRLPOOL 3f589998f3480925fa3ad3c54f1f0ba4122cfa12c48d9bf1269e92a0fdf52d1823cd8dae8851e36d2c97ec2f869da10ff6ee7f2663b752d1d396e1b5a95ca982
+DIST qp9.6.tar.gz 1539483 SHA256 631ab73af271279d583c5ecf19e5542dd8dff097179e3bb34ac2624aeb029f7a SHA512 a15d3f2254d9ed9a2032f7e2902363f2ed2dbf0a7ba67a89aae79202d38954a195e93725aa828d19d50d7a891d8cea4f0d23af66ffd55984738db9b612467cd8 WHIRLPOOL 3dcc746da3283044267abd7aa00795b1bff79bffd206c1bf227087281d94f2dc4a390a5ccd85933641aea150313b2f62e0e9fbe491ef4fafa73e4fdd9b35d7d1
+DIST qp9.7.tar.gz 1539804 SHA256 9b77c97e0cb981669cf27df0f68875ba44958e67cc82ac71a4f5d2665b96708b SHA512 20a7a00eab2ec489489f95d78eb4dc8edf71d99fae2f23807158ca78d0bbd1b66d03460f0e06f91ac4ecafd9aab2bbdd109368ba8d3cc2c8452e17c634035c19 WHIRLPOOL 20a790902848790cfedefc6434eda01bb4b0ed2cfdf26c7d1a7914cef9916d161fcd397001a7f5a0aadf2d710112446bd99103f161ef22ad7b3567b45b33ac6d
+EBUILD qu-prolog-10.0.ebuild 1998 SHA256 3258396cb34058083e430e9be93bee94ae3949996df95f847344329ffe9d63aa SHA512 0df66e1f943662396070621cac0adbf8cd2f6e9109b5e1c231281708eead667da180e04a022dc8329bae408ec4862fa7a239c3478c0120d75d4dab66c59cd2cf WHIRLPOOL eddad8d2920cc866a6cfab192e0c2a4177602a39fac286cb272c9237acc9b29ace8b01e966f0b5434b43e625f697c02ce79c30e21edb43663504fcc8f3a9cfcd
+EBUILD qu-prolog-9.1-r1.ebuild 1930 SHA256 795140602a6b33def04f5d883ad46fd20ca0ed692b87501b0ee1e8b731502ad1 SHA512 30aaf2dd17655cc0b54467c51ec3603c753ec25de8c2f54b054f081dd67d3aa1df31bc5cc4135a5ccaf435a0c3b0dcc11756b29c8145e62a1bd17508dcb8c4eb WHIRLPOOL 8049fc87b6bb1cc999fcc5404d3629b5e1ec36bf061ed2c162cc24b2423499bac78ccb760456214b97f4d7f3999ea21ebad9457c2c495442166b6275283cb07b
+EBUILD qu-prolog-9.1.ebuild 2141 SHA256 6fec08cf89fdf190008f8b4d10014808125dae1371f6a4715bd9e2c30df4976c SHA512 bb4b3339c7c7201e9c263b4558904dc840ecbde25fecf9c93416f9fcdd503cfcc88253d589718ca5a78cb2ba174b50223f4afbadd2fd98f6be5b28364482b4bf WHIRLPOOL 9c77b9144220526f00b913bb5c0bc989a7830b0d5c4a4c7f8b38b457ece75591e8ba059b6e9f46b56847dac6509cacbb15e4ccb4050af9e0415981efa5ece9c9
+EBUILD qu-prolog-9.5.ebuild 1859 SHA256 754a40912a3f95d4c62b8a82a2e1fef3264cfee82404e2d054e63d16e3d1dedc SHA512 c0d40d94d70b6cdad89e12d2336a4b76c2aa17b5f7a117172a23ebb25080ad9159519b45e28af8574f8849b17820a3cdee431d89e8d1e673527998c7527e2bcc WHIRLPOOL caa6e93a4a9560797a44018ba2069a11617c3304ea3905f558f1db6bc6381d16770e10d89a6485c7af16ea6d7f69d70116b53dced7f93fea5d35625c7f025cbd
+EBUILD qu-prolog-9.6.ebuild 1831 SHA256 85b9a1097d36f45f99687596042735a0332432a5b27a825dcc1976185fc826e2 SHA512 51cf334a9d7bb652d5d55b680c06e65c5de3e0a0c2d3596d3d7719f410455fed42e40fc201f150cba7652cffb7143b1cb106d2dcaaa467b7f61e85df4b0f5033 WHIRLPOOL b5a4de9cde72335c791d8c8b24fe43e5ab3b589374ec2dc9b74df52b3cf6a48c9043390546562e9e6b6823fec352ab8ea7ca77a9a15ea7610b63eb2a1e4a2dd9
+EBUILD qu-prolog-9.7.ebuild 1831 SHA256 85b9a1097d36f45f99687596042735a0332432a5b27a825dcc1976185fc826e2 SHA512 51cf334a9d7bb652d5d55b680c06e65c5de3e0a0c2d3596d3d7719f410455fed42e40fc201f150cba7652cffb7143b1cb106d2dcaaa467b7f61e85df4b0f5033 WHIRLPOOL b5a4de9cde72335c791d8c8b24fe43e5ab3b589374ec2dc9b74df52b3cf6a48c9043390546562e9e6b6823fec352ab8ea7ca77a9a15ea7610b63eb2a1e4a2dd9
+MISC ChangeLog 3560 SHA256 2543cd91b2a23c903faed2a714837582c2bb2367ca07c28015aede51e83efad7 SHA512 4b315c4ed15b8a7e27b5afe2c7ac24874f74e3cc7c2353c617fac419443e1a62f5dee1433c10a89a45206a714fc4911740533cf07eca38f6cb14551448e5fe07 WHIRLPOOL 3223722677a8856fe5f2665b69f35643144be05909b191237e7d6da74b1df6200f3ad1baffca8e6b4c903e5b1aa6dddf38b530ac3fac5e71a7159df3db7be593
+MISC ChangeLog-2015 14668 SHA256 8e01daf09706375c12bb8225bc467341a3ab9a3c652831931e8a3d438e4f1dcd SHA512 c456535f83cb3894d985fc19fbd58fd92de15d59c2ce69c2c181f2b682080158d25eb196f453b19755972fa1e22b6a629e6c835eb6c1cd50e54ec2483df94a8d WHIRLPOOL 4c31ec8f07e838080a018830601c3a3c8f80eaf95b639982d2ca0c78e1052d62f93327d7ae12577cfe8afa01e0908b1ce640c09593b4fe50302f749eba259f43
+MISC metadata.xml 347 SHA256 24b0c949839c0d29cad8fdbb160eb7ec3f1f1ade8307795a3ce0ba3d48a19d86 SHA512 7a7bb3ccaa42fa120c3702d963719d5fdfcf0a413685cad98bd34a515a4cc83a213a71e7f3b6b0ce67947fa347229caecf699879192f0d930c9c6577e0ce59cc WHIRLPOOL cd38ec1759e73478bf05d5b00af1606d861f668254cbc6f11f686c75b9a4834865fc2cd3f7a83e0222055bacd9b34073aead1dfc31a71c0bc129b9da11f4df14
diff --git a/dev-lang/qu-prolog/files/qu-prolog-10.0-associated-item.patch b/dev-lang/qu-prolog/files/qu-prolog-10.0-associated-item.patch
new file mode 100644
index 000000000000..d5e992d51c26
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-10.0-associated-item.patch
@@ -0,0 +1,11 @@
+--- qp10.0.orig/src/objects.h 2016-06-07 02:54:35.000000000 +0200
++++ qp10.0/src/objects.h 2016-10-03 18:26:49.924782008 +0200
+@@ -1210,7 +1210,7 @@
+ << this->getName() << "\" ";
+
+ #ifndef WIN32
+- switch (hasAssociatedItem())
++ switch (tag & AssociatedMask)
+ {
+ case AssociatedNone:
+ std::cerr << "(no info)";
diff --git a/dev-lang/qu-prolog/files/qu-prolog-10.0-configure.patch b/dev-lang/qu-prolog/files/qu-prolog-10.0-configure.patch
new file mode 100644
index 000000000000..b3c109613912
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-10.0-configure.patch
@@ -0,0 +1,21 @@
+--- qp10.0.orig/configure 2016-06-07 02:54:42.000000000 +0200
++++ qp10.0/configure 2016-10-03 18:30:22.360786524 +0200
+@@ -2256,12 +2256,16 @@
+ #
+ # Check for addtional command line options.
+ #
+-DEBUGGING=" -DNDEBUG "
+ # Check whether --enable-debug was given.
+ if test "${enable_debug+set}" = set; then :
+- enableval=$enable_debug; DEBUGGING=
++ enableval=$enable_debug;
+ fi
+
++if test "$enable_debug" = yes; then
++ DEBUGGING=
++else
++ DEBUGGING=" -DNDEBUG "
++fi
+
+
+ # Single versus multiple thread configuraation.
diff --git a/dev-lang/qu-prolog/files/qu-prolog-10.0-gcc6.patch b/dev-lang/qu-prolog/files/qu-prolog-10.0-gcc6.patch
new file mode 100644
index 000000000000..626a15b5de99
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-10.0-gcc6.patch
@@ -0,0 +1,38 @@
+--- qp10.0/src/io_qp.h.old 2016-10-12 02:50:04.343499674 -0400
++++ qp10.0/src/io_qp.h 2016-10-12 02:50:10.605264154 -0400
+@@ -662,7 +662,7 @@
+
+ bool seekp(streampos pos, ios::seekdir d = ios::beg)
+ {
+- return stream->seekp(pos, d);
++ return !stream->seekp(pos, d).fail();
+ }
+
+ bool put(char ch)
+@@ -736,7 +736,7 @@
+
+ bool seekp(streampos pos, ios::seekdir d = ios::beg)
+ {
+- return stream.seekp(pos, d);
++ return !stream.seekp(pos, d).fail();
+ }
+
+ bool put(char ch)
+@@ -816,7 +816,7 @@
+
+ bool seekp(streampos pos, ios::seekdir d = ios::beg)
+ {
+- return stream.seekp(pos, d);
++ return !stream.seekp(pos, d).fail();
+ }
+
+ bool put(char ch);
+@@ -876,7 +876,7 @@
+
+ bool seekp(streampos pos, ios::seekdir d = ios::beg)
+ {
+- return stream.seekp(pos, d);
++ return !stream.seekp(pos, d).fail();
+ }
+
+ bool put(char ch);
diff --git a/dev-lang/qu-prolog/files/qu-prolog-9.1-cerr-ptr.patch b/dev-lang/qu-prolog/files/qu-prolog-9.1-cerr-ptr.patch
new file mode 100644
index 000000000000..1fde09843e66
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-9.1-cerr-ptr.patch
@@ -0,0 +1,40 @@
+diff -ur qp9.1.orig/src/gc.cc qp9.1/src/gc.cc
+--- qp9.1.orig/src/gc.cc 2011-08-23 11:17:44.000000000 +1200
++++ qp9.1/src/gc.cc 2011-11-20 07:14:14.000000000 +1300
+@@ -152,7 +152,7 @@
+ {
+ cerr << size << endl;
+ heapobject* ptr = reinterpret_cast<heapobject*>(term);
+- cerr << hex << (u_int)(ptr) << " : " << *ptr << " " << *(ptr+1) << dec << endl;
++ cerr << hex << (wordptr)(ptr) << " : " << *ptr << " " << *(ptr+1) << dec << endl;
+ return false;
+ }
+ return true;
+diff -ur qp9.1.orig/src/objects.h qp9.1/src/objects.h
+--- qp9.1.orig/src/objects.h 2011-08-23 11:17:44.000000000 +1200
++++ qp9.1/src/objects.h 2011-11-20 07:14:14.000000000 +1300
+@@ -1242,18 +1242,12 @@
+ << this->getName() << "\" ";
+
+ #ifndef WIN32
+- switch (hasAssociatedItem())
+- {
+- case AssociatedNone:
+- std::cerr << "(no info)";
+- break;
+- case AssociatedInteger:
+- std::cerr << "int: " << getAssociatedInteger();
+- break;
+- case AssociatedAtom:
+- std::cerr << "atom: [" << std::hex << (wordptr) getAssociatedAtom() << std::dec << "]";
+- break;
+- }
++ if (hasAssociatedInteger())
++ std::cerr << "int: " << getAssociatedInteger();
++ else if (hasAssociatedAtom())
++ std::cerr << "atom: [" << std::hex << (wordptr) getAssociatedAtom() << std::dec << "]";
++ else
++ std::cerr << "(no info)";
+ #endif
+ }
+ #endif
diff --git a/dev-lang/qu-prolog/files/qu-prolog-9.1-cflags.patch b/dev-lang/qu-prolog/files/qu-prolog-9.1-cflags.patch
new file mode 100644
index 000000000000..f53eb067b1fd
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-9.1-cflags.patch
@@ -0,0 +1,34 @@
+diff -ur qp9.1.orig/Makefile.in qp9.1/Makefile.in
+--- qp9.1.orig/Makefile.in 2011-08-23 11:17:54.000000000 +1200
++++ qp9.1/Makefile.in 2012-01-14 12:57:16.000000000 +1300
+@@ -23,7 +23,7 @@
+
+ export PROLOG = prolog
+
+-
++export CXX=@CXX@
+
+ .PHONY: all
+ all: objects
+diff -ur qp9.1.orig/src/Makefile.in qp9.1/src/Makefile.in
+--- qp9.1.orig/src/Makefile.in 2011-08-23 11:17:54.000000000 +1200
++++ qp9.1/src/Makefile.in 2012-01-14 12:48:33.000000000 +1300
+@@ -40,7 +40,7 @@
+
+ #export DEBUGGING=
+
+-export CXXFLAGS = @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 $(OPTIMISATION) @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized
++#export CXXFLAGS = @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 $(OPTIMISATION) @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized
+ export QACXXFLAGS = -Wall -D_GNU_SOURCE=1 @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized
+
+ .PHONY: all
+@@ -79,6 +79,9 @@
+
+ # Targets
+
++.cc.o:
++ $(CXX) $(CXXFLAGS) @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized -c $<
++
+ .PHONY: commands
+ commands: $(GENERATED) $(LIBRARIES) $(BIG_LIBRARY)
+ @$(MAKE) $(ALL_COMMANDS)
diff --git a/dev-lang/qu-prolog/files/qu-prolog-9.1-gcc.patch b/dev-lang/qu-prolog/files/qu-prolog-9.1-gcc.patch
new file mode 100644
index 000000000000..82d5bc7f7ebb
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-9.1-gcc.patch
@@ -0,0 +1,33 @@
+diff -ur qp9.1.orig/src/pile.h qp9.1/src/pile.h
+--- qp9.1.orig/src/pile.h 2011-08-23 01:17:44.000000000 +0200
++++ qp9.1/src/pile.h 2013-01-09 12:07:44.000000000 +0100
+@@ -75,7 +75,7 @@
+ //
+ // Push a StoredType onto the pile.
+ //
+- void push(const StoredType s){ pushElement(s); }
++ void push(const StoredType s){ this->pushElement(s); }
+
+ //
+ // Pop a StoredType off the pile.
+@@ -85,7 +85,7 @@
+ //
+ // Pop n entries of StoredType off the pile.
+ //
+- void popNEntries(word32 n) { setTopOfStack(this->getTopOfStack() - n); }
++ void popNEntries(word32 n) { this->setTopOfStack(this->getTopOfStack() - n); }
+
+ //
+ // Check whether the pile is empty or not.
+diff -ur qp9.1.orig/src/system_support.cc qp9.1/src/system_support.cc
+--- qp9.1.orig/src/system_support.cc 2011-08-23 01:17:44.000000000 +0200
++++ qp9.1/src/system_support.cc 2013-01-09 12:07:16.000000000 +0100
+@@ -61,6 +61,8 @@
+ #include <iostream>
+ #ifdef WIN32
+ #include <direct.h>
++#else
++#include <unistd.h>
+ #endif //WIN32
+
+ using namespace std;
diff --git a/dev-lang/qu-prolog/files/qu-prolog-9.1-portage.patch b/dev-lang/qu-prolog/files/qu-prolog-9.1-portage.patch
new file mode 100644
index 000000000000..4a1aa23607ac
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-9.1-portage.patch
@@ -0,0 +1,32 @@
+diff -ur qp9.1.orig/bin/qc.in qp9.1/bin/qc.in
+--- qp9.1.orig/bin/qc.in 2011-08-23 11:17:28.000000000 +1200
++++ qp9.1/bin/qc.in 2011-11-20 07:16:18.000000000 +1300
+@@ -27,13 +27,13 @@
+
+ ##############################
+
+-preprocess='@QPHOME@/bin/qppp'
+-expand='@QPHOME@/bin/qg'
+-qpcompile='@QPHOME@/bin/qc1'
++preprocess='qppp'
++expand='qg'
++qpcompile='qc1'
+ compversion='qup'
+-assemble='@QPHOME@/bin/qa'
+-link='@QPHOME@/bin/ql'
+-execute='@QPHOME@/bin/qem'
++assemble='qa'
++link='ql'
++execute='qem'
+ libqofiles="@QPHOME@/prolog/compiler/*.qo @QPHOME@/prolog/library/*.qo"
+
+ ##############################
+diff -ur qp9.1.orig/prolog/Makefile.in qp9.1/prolog/Makefile.in
+--- qp9.1.orig/prolog/Makefile.in 2006-04-06 16:01:45.000000000 +1200
++++ qp9.1/prolog/Makefile.in 2011-11-20 07:16:18.000000000 +1300
+@@ -1,3 +1,5 @@
++PATH:=$(PATH):@QPHOME@/bin
++
+ .DEFAULT:
+ @$(MAKE) -C compiler $@
+ @$(MAKE) -C library $@
diff --git a/dev-lang/qu-prolog/files/qu-prolog-9.5-cflags.patch b/dev-lang/qu-prolog/files/qu-prolog-9.5-cflags.patch
new file mode 100644
index 000000000000..5bcce94d9b6b
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-9.5-cflags.patch
@@ -0,0 +1,34 @@
+diff -ur qp9.5.orig/Makefile.in qp9.5/Makefile.in
+--- qp9.5.orig/Makefile.in 2014-11-17 06:46:22.000000000 +0100
++++ qp9.5/Makefile.in 2015-05-03 11:29:52.000000000 +0200
+@@ -23,7 +23,7 @@
+
+ export PROLOG = prolog
+
+-
++export CXX=@CXX@
+
+ .PHONY: all
+ all: objects
+diff -ur qp9.5.orig/src/Makefile.in qp9.5/src/Makefile.in
+--- qp9.5.orig/src/Makefile.in 2014-11-17 06:46:22.000000000 +0100
++++ qp9.5/src/Makefile.in 2015-05-03 11:29:52.000000000 +0200
+@@ -40,7 +40,7 @@
+
+ #export DEBUGGING=
+
+-export CXXFLAGS = @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 $(OPTIMISATION) @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized
++#export CXXFLAGS = @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 $(OPTIMISATION) @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized
+ export QACXXFLAGS = -Wall -D_GNU_SOURCE=1 @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized
+
+ .PHONY: all
+@@ -79,6 +79,9 @@
+
+ # Targets
+
++.cc.o:
++ $(CXX) $(CXXFLAGS) @GCC_ALIAS_FLAG@ -Wall -D_GNU_SOURCE=1 @DEBUGGING@ @GCCINCLUDES@ -Wno-uninitialized -c $<
++
+ .PHONY: commands
+ commands: $(GENERATED) $(LIBRARIES) $(BIG_LIBRARY)
+ @$(MAKE) $(ALL_COMMANDS)
diff --git a/dev-lang/qu-prolog/files/qu-prolog-9.5-portage.patch b/dev-lang/qu-prolog/files/qu-prolog-9.5-portage.patch
new file mode 100644
index 000000000000..55dc08ffe474
--- /dev/null
+++ b/dev-lang/qu-prolog/files/qu-prolog-9.5-portage.patch
@@ -0,0 +1,32 @@
+diff -ur qp9.5.orig/bin/qc.in qp9.5/bin/qc.in
+--- qp9.5.orig/bin/qc.in 2014-11-17 06:45:59.000000000 +0100
++++ qp9.5/bin/qc.in 2015-05-03 11:31:54.000000000 +0200
+@@ -27,13 +27,13 @@
+
+ ##############################
+
+-preprocess='@QPHOME@/bin/qppp'
+-expand='@QPHOME@/bin/qg'
+-qpcompile='@QPHOME@/bin/qc1'
++preprocess='qppp'
++expand='qg'
++qpcompile='qc1'
+ compversion='qup'
+-assemble='@QPHOME@/bin/qa'
+-link='@QPHOME@/bin/ql'
+-execute='@QPHOME@/bin/qem'
++assemble='qa'
++link='ql'
++execute='qem'
+ libqofiles="@QPHOME@/prolog/compiler/*.qo @QPHOME@/prolog/library/*.qo"
+
+ ##############################
+diff -ur qp9.5.orig/prolog/Makefile.in qp9.5/prolog/Makefile.in
+--- qp9.5.orig/prolog/Makefile.in 2006-04-06 06:01:45.000000000 +0200
++++ qp9.5/prolog/Makefile.in 2015-05-03 11:31:54.000000000 +0200
+@@ -1,3 +1,5 @@
++PATH:=$(PATH):@QPHOME@/bin
++
+ .DEFAULT:
+ @$(MAKE) -C compiler $@
+ @$(MAKE) -C library $@
diff --git a/dev-lang/qu-prolog/metadata.xml b/dev-lang/qu-prolog/metadata.xml
new file mode 100644
index 000000000000..8f04a5fdaa28
--- /dev/null
+++ b/dev-lang/qu-prolog/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>prolog@gentoo.org</email>
+ <name>Prolog</name>
+ </maintainer>
+ <use>
+ <flag name="pedro">Pedro subscription/notification communications system</flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-lang/qu-prolog/qu-prolog-10.0.ebuild b/dev-lang/qu-prolog/qu-prolog-10.0.ebuild
new file mode 100644
index 000000000000..a32be5b617f3
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-10.0.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2017 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 qt4 readline threads"
+
+RDEPEND="
+ !dev-util/mpatch
+ !dev-util/rej
+ !games-rpg/kqlives
+ qt4? ( dev-qt/qtgui:4 )
+ 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
+}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable debug) \
+ $(use_enable threads multiple-threads)
+
+ if use qt4; then
+ cd "${S}"/src/xqp || die
+ eqmake4 xqp.pro
+ fi
+}
+
+src_compile() {
+ emake OPTIMISATION="${CXXFLAGS}"
+
+ if use qt4; 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}
+
+ into /usr/$(get_libdir)/${PN}
+ dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp}
+
+ use qt4 && dobin src/xqp/xqp
+
+ 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
+}
diff --git a/dev-lang/qu-prolog/qu-prolog-9.1-r1.ebuild b/dev-lang/qu-prolog/qu-prolog-9.1-r1.ebuild
new file mode 100644
index 000000000000..3b0035ad4775
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-9.1-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2015 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="Qu-Prolog GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug doc examples pedro qt4 readline threads"
+
+RDEPEND="
+ !dev-util/mpatch
+ !dev-util/rej
+ qt4? ( dev-qt/qtgui:4 )
+ pedro? ( net-misc/pedro )
+ readline? ( app-misc/rlwrap )"
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-portage.patch \
+ "${FILESDIR}"/${P}-cflags.patch \
+ "${FILESDIR}"/${P}-cerr-ptr.patch \
+ "${FILESDIR}"/${P}-gcc.patch
+}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable debug) \
+ $(use_enable threads multiple-threads)
+
+ if use qt4; then
+ cd "${S}"/src/xqp || die
+ eqmake4 xqp.pro
+ fi
+}
+
+src_compile() {
+ emake
+
+ if use qt4; 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/{qa,qdeal,qem,ql,qc,qc1.qup,qecat,qg,qp,qppp,kq}
+
+ use qt4 && dobin src/xqp/xqp
+
+ 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
+}
diff --git a/dev-lang/qu-prolog/qu-prolog-9.1.ebuild b/dev-lang/qu-prolog/qu-prolog-9.1.ebuild
new file mode 100644
index 000000000000..cf59aef3bbe6
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-9.1.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+
+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="Qu-Prolog GPL-2+"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="debug doc examples pedro qt4 readline threads"
+
+RDEPEND="
+ !dev-util/mpatch
+ !dev-util/rej
+ qt4? ( dev-qt/qtgui:4 )
+ pedro? ( net-misc/pedro )
+ readline? ( app-misc/rlwrap )"
+
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-portage.patch \
+ "${FILESDIR}"/${P}-cflags.patch \
+ "${FILESDIR}"/${P}-cerr-ptr.patch \
+ "${FILESDIR}"/${P}-gcc.patch
+}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable debug) \
+ $(use_enable threads multiple-threads)
+
+ if use qt4; then
+ cd "${S}"/src/xqp || die
+ eqmake4 xqp.pro
+ fi
+}
+
+src_compile() {
+ emake || die "emake failed"
+
+ if use qt4; then
+ cd "${S}"/src/xqp || die
+ emake || die "emake xqp failed"
+ fi
+}
+
+src_install() {
+ sed -i -e "s|${S}|/usr/$(get_libdir)/qu-prolog|g" \
+ bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp || die
+
+ dobin bin/qa bin/qdeal bin/qem bin/ql || die
+ dobin bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp bin/qppp || die
+ dobin bin/kq || die
+
+ if use qt4; then
+ dobin src/xqp/xqp || die
+ fi
+
+ insinto /usr/$(get_libdir)/${PN}/bin
+ doins bin/rl_commands
+ doins bin/qc1.qup.qx \
+ bin/qecat.qx \
+ bin/qg.qx \
+ bin/qp.qx || die
+
+ insinto /usr/$(get_libdir)/${PN}/library
+ doins prolog/library/*.qo || die
+
+ insinto /usr/$(get_libdir)/${PN}/compiler
+ doins prolog/compiler/*.qo || die
+
+ doman doc/man/man1/*.1 || die
+
+ dodoc README || die
+
+ if use doc ; then
+ docinto reference-manual
+ dodoc doc/manual/*.html || die
+ docinto user-guide
+ dodoc doc/user/main.pdf || die
+ fi
+
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples
+ doins examples/*.ql || die
+ docinto examples
+ dodoc examples/README || die
+ fi
+}
diff --git a/dev-lang/qu-prolog/qu-prolog-9.5.ebuild b/dev-lang/qu-prolog/qu-prolog-9.5.ebuild
new file mode 100644
index 000000000000..b8b4cd271e0f
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-9.5.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2015 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="Qu-Prolog GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug doc examples pedro qt4 readline threads"
+
+RDEPEND="
+ !dev-util/mpatch
+ !dev-util/rej
+ qt4? ( dev-qt/qtgui:4 )
+ pedro? ( net-misc/pedro )
+ readline? ( app-misc/rlwrap )"
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-portage.patch \
+ "${FILESDIR}"/${P}-cflags.patch
+}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable debug) \
+ $(use_enable threads multiple-threads)
+
+ if use qt4; then
+ cd "${S}"/src/xqp || die
+ eqmake4 xqp.pro
+ fi
+}
+
+src_compile() {
+ emake
+
+ if use qt4; 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/{qa,qdeal,qem,ql,qc,qc1.qup,qecat,qg,qp,qppp,kq}
+
+ use qt4 && dobin src/xqp/xqp
+
+ 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
+}
diff --git a/dev-lang/qu-prolog/qu-prolog-9.6.ebuild b/dev-lang/qu-prolog/qu-prolog-9.6.ebuild
new file mode 100644
index 000000000000..39c0124558d9
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-9.6.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2016 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="Qu-Prolog GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug doc examples pedro qt4 readline threads"
+
+RDEPEND="
+ !dev-util/mpatch
+ !dev-util/rej
+ qt4? ( dev-qt/qtgui:4 )
+ pedro? ( net-misc/pedro )
+ readline? ( app-misc/rlwrap )"
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable debug) \
+ $(use_enable threads multiple-threads)
+
+ if use qt4; then
+ cd "${S}"/src/xqp || die
+ eqmake4 xqp.pro
+ fi
+}
+
+src_compile() {
+ emake OPTIMISATION="${CXXFLAGS}"
+
+ if use qt4; 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}
+
+ into /usr/$(get_libdir)/${PN}
+ dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp}
+
+ use qt4 && dobin src/xqp/xqp
+
+ 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
+}
diff --git a/dev-lang/qu-prolog/qu-prolog-9.7.ebuild b/dev-lang/qu-prolog/qu-prolog-9.7.ebuild
new file mode 100644
index 000000000000..39c0124558d9
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-9.7.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2016 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="Qu-Prolog GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug doc examples pedro qt4 readline threads"
+
+RDEPEND="
+ !dev-util/mpatch
+ !dev-util/rej
+ qt4? ( dev-qt/qtgui:4 )
+ pedro? ( net-misc/pedro )
+ readline? ( app-misc/rlwrap )"
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable debug) \
+ $(use_enable threads multiple-threads)
+
+ if use qt4; then
+ cd "${S}"/src/xqp || die
+ eqmake4 xqp.pro
+ fi
+}
+
+src_compile() {
+ emake OPTIMISATION="${CXXFLAGS}"
+
+ if use qt4; 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}
+
+ into /usr/$(get_libdir)/${PN}
+ dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp}
+
+ use qt4 && dobin src/xqp/xqp
+
+ 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
+}