From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- dev-qt/qtgui/Manifest | 24 +++ dev-qt/qtgui/files/qtgui-4.7.3-cups.patch | 84 ++++++++++ dev-qt/qtgui/files/qtgui-4.8.5-CVE-2015-0295.patch | 40 +++++ ...4.8.5-cleanlooks-floating-point-exception.patch | 38 +++++ .../qtgui-4.8.5-disable-gtk-theme-check.patch | 22 +++ ...gui-4.8.5-dont-crash-on-broken-GIF-images.patch | 43 +++++ .../qtgui/files/qtgui-4.8.5-qclipboard-delay.patch | 33 ++++ dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1858.patch | 63 ++++++++ dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1860.patch | 31 ++++ dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch | 39 +++++ dev-qt/qtgui/files/qtgui-5.7.1-x32.patch | 34 ++++ dev-qt/qtgui/metadata.xml | 37 +++++ dev-qt/qtgui/qtgui-4.8.6-r4.ebuild | 174 ++++++++++++++++++++ dev-qt/qtgui/qtgui-4.8.7.ebuild | 166 +++++++++++++++++++ dev-qt/qtgui/qtgui-5.6.2.ebuild | 174 ++++++++++++++++++++ dev-qt/qtgui/qtgui-5.7.1-r1.ebuild | 179 +++++++++++++++++++++ dev-qt/qtgui/qtgui-5.9.2.ebuild | 164 +++++++++++++++++++ 17 files changed, 1345 insertions(+) create mode 100644 dev-qt/qtgui/Manifest create mode 100644 dev-qt/qtgui/files/qtgui-4.7.3-cups.patch create mode 100644 dev-qt/qtgui/files/qtgui-4.8.5-CVE-2015-0295.patch create mode 100644 dev-qt/qtgui/files/qtgui-4.8.5-cleanlooks-floating-point-exception.patch create mode 100644 dev-qt/qtgui/files/qtgui-4.8.5-disable-gtk-theme-check.patch create mode 100644 dev-qt/qtgui/files/qtgui-4.8.5-dont-crash-on-broken-GIF-images.patch create mode 100644 dev-qt/qtgui/files/qtgui-4.8.5-qclipboard-delay.patch create mode 100644 dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1858.patch create mode 100644 dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1860.patch create mode 100644 dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch create mode 100644 dev-qt/qtgui/files/qtgui-5.7.1-x32.patch create mode 100644 dev-qt/qtgui/metadata.xml create mode 100644 dev-qt/qtgui/qtgui-4.8.6-r4.ebuild create mode 100644 dev-qt/qtgui/qtgui-4.8.7.ebuild create mode 100644 dev-qt/qtgui/qtgui-5.6.2.ebuild create mode 100644 dev-qt/qtgui/qtgui-5.7.1-r1.ebuild create mode 100644 dev-qt/qtgui/qtgui-5.9.2.ebuild (limited to 'dev-qt/qtgui') diff --git a/dev-qt/qtgui/Manifest b/dev-qt/qtgui/Manifest new file mode 100644 index 000000000000..9314af205ccf --- /dev/null +++ b/dev-qt/qtgui/Manifest @@ -0,0 +1,24 @@ +AUX qtgui-4.7.3-cups.patch 3297 SHA256 3ccfefb432015e4a4ea967b030c51b10dcdfb1f63445557908ddae5e75012d33 SHA512 4a8f828c79bde81ab1e39c9eaba4ef553582d85b62d6d182dda02820c4c8e046de6a25cc77d228955ed37fbc5b55f697a0a464af0bb3e171849851639e9ef4ee WHIRLPOOL 41d82843f91533a5cbb0c9945c9013d9c8f07be3f06fef1b52cf8d18483d9cdfd24fe1d53c18a2f1eebd7a504f1665f1859616ae460d6471dc1599cea63a7bda +AUX qtgui-4.8.5-CVE-2015-0295.patch 1619 SHA256 07bbb715bcb6d0a75f9b77c95b536ac8c8b8a3c3fcbe59470a19e56f0a193424 SHA512 42fca5fade432dabe987dced28147aa46104bb89fd8e05b365ce2f7178e8788f7fbbcd05b12eebed2b63c7ce694a125150d5598f9d1dedf1531376a492864ebc WHIRLPOOL d2c56391b598bfc93e7f01f63a7e24246acc0adfb79f1bcbfeb7f82628be7ce1753376c0c43c8ecd73e37569eced4286834406c2bd65dc9db621c2b70158b197 +AUX qtgui-4.8.5-cleanlooks-floating-point-exception.patch 1699 SHA256 739e0eb48e1797c7b2b67705378d1a1abe993b0930b1c1ca4092bb49165a73f5 SHA512 e404e0f6203bfe53859fb3f3043f11103e5fa4c99b16c5c1cd5310e61c2cf15d3ae1ae5425013e686eaaf5991bfe6db32701155afbcd26691fe88d82813e7b21 WHIRLPOOL 2843c7b3cd7c3d586044455545211f289d71fe66b556ac3189cf67356ac43b761f173e91093c422f24397d31d6725e6aef3c43c7cb3a4076312f6844d4377081 +AUX qtgui-4.8.5-disable-gtk-theme-check.patch 1166 SHA256 9c0f263d4ebfefa1ee892badaed5a3640449863f0113884c9e1b19ba9ec5f324 SHA512 c0f8b0c5bfb83552edc92af94669b15c85171aef72418dfa37a237f34b49e3999c939afed8b6c90391104c9ea305152ea85b0b0ad0e2400f5c64d6301a2c8d14 WHIRLPOOL 0fb982a19e7a0acc5110aea534f8bab3509aaabe8a74ffa58f6b2d8f35a0eceb4ec9224d2acdcf03fc5291f065c89c860d10a6371c3022b7740f7416b9c5befa +AUX qtgui-4.8.5-dont-crash-on-broken-GIF-images.patch 1440 SHA256 f76ec92367e32cbff23b7fd5064ca7da4fa1146f458630b8897862072cbca554 SHA512 ce1a06dbb52f200b21621a4b7febbd2938d9fb2fa9117c7e1fd2e24283784d645b36bb79ebf411f07ecff774f8c4cde1fa5d27956e4f95f28e0181e5953817b3 WHIRLPOOL a4ee9986ab5df6a6c85282b7367afb2f1708b1a1f8b52e940fe09669bf2e9c6db0fd2cb1fe0b98df9a95a22ad2a6f35f7901d1521ea7acb798327716f53a3817 +AUX qtgui-4.8.5-qclipboard-delay.patch 1135 SHA256 7119cdc3450e1e36e01ce3273c5131b89c6e4a03f08652f5fa4eb0919d3b4bd0 SHA512 00c901fc9b9bd5b8ce45e8bb4dd4eda8832df7eda104ae1614d7cdac681d23f0daad543d0480f1d9366e2644833db680e0526660472a6cf1a907b803acf76517 WHIRLPOOL a45f6cfda0fd6f137c091eb82039900ac6f39d2b277ab9125b74e0828e2bb809561f1ef11328af1c5c1c20f5ca06e39e66881219c6101b1134126ca482d2aac9 +AUX qtgui-4.8.6-CVE-2015-1858.patch 2849 SHA256 bf7b77a1b311d2b0f647c4efb72cf42edb66f3085750784388fc7ffaf6a73fb0 SHA512 b7be8cf6bc9706df4f491fb5134a76ade03e1fd1d127d5d9bf228a787ee0f32496da04c937a1d44adcb698eadfe969f0026d626e9c5d9ec623e24541184b8246 WHIRLPOOL 01da12595a31eb323d5c96d85b8d3315a17929f916661eda209f5e2d13b9f7c187423d2620fedac33856ca132a5ac66d22ffb52bc437490ebe55c6d8a4366cb1 +AUX qtgui-4.8.6-CVE-2015-1860.patch 1009 SHA256 4afd0b1ef272774dfa845c2dc1340ce7d468f159646e92d6669e9d8f38f14171 SHA512 e2da2a04ab4d1180f855571aa39356ed74d173e95e7c0561021709256c7cfc85d2b99fd485d724357a2947379de52fad4c9ac7d52c61dd04373b00494de58e15 WHIRLPOOL 821a7552963412cba0294bbe3a7c3d7604c09f466d3cb9b22c7eb10a359359fa32748ad5ae45f86972de7edb1cb676197e082bb715e08c9c0391bbc6ec8f78f0 +AUX qtgui-5.7.1-qclipboard.patch 1791 SHA256 328342cbeb29fa245054765f9e9c51cbf51b0dccba3c9f6330bdc202ac55f008 SHA512 c765e7f1cf2e10b4fa90b2c4e3a4a39c9001996d4837eb86c1d298531dd30fc1f6a215addfd1bec88526451d7b2ff3ba8a53a330776c94851e79b1964336759c WHIRLPOOL 7b977885bc5fcfe2ba0b1f66531a016fec839c2e9f622ac5f63583c4576229cbaa64ef9b97397362e4d1fedb722d8fa7c87363cba533e523b3ef91058c0ba54b +AUX qtgui-5.7.1-x32.patch 1161 SHA256 2d15bef6ec2aedb36a952778fb9266c74a269cc5cfcf4b982004c2ca8590d4e6 SHA512 61f6cc40c2897e17c0a71cb1d79bf8e6c69cbacf6409ae0d96f485584bd6a930484ecff709c208ca78335418e022c68151d096505f5db2179cb6c4c8b065c116 WHIRLPOOL 12e09f5ad61375ac58cb579b436ba194d109e7a567860ecd15e92ecf4efbae75a72e01b67264b77533444ba34421f44335812014497cf57c1e9570b0766c867a +DIST qt-everywhere-opensource-src-4.8.6.tar.gz 241623667 SHA256 8b14dd91b52862e09b8e6a963507b74bc2580787d171feda197badfa7034032c SHA512 c2d07c3cf9d687cb9b93e337c89df3f0055bd02bc8aa5ecd55d3ffb238b31a4308aeabc3c51a4f94ac76a1b00796f047513d02e427ed93ae8dd99f836fff7692 WHIRLPOOL 473566814a77237dbdd37a47980c1085f6cf39599c4d6b0120959fe80dadf65c4eaafd5f528dd86cea8815562faa204bedfe3b766c2ca4f2d2c99efc21dbca84 +DIST qt-everywhere-opensource-src-4.8.7.tar.gz 241075567 SHA256 e2882295097e47fe089f8ac741a95fef47e0a73a3f3cdf21b56990638f626ea0 SHA512 f9f81a2e7205e1fd05c8d923dc73244f29aa33f951fa6b7c5c8193449328b37084796b9b71ad0c317e4e6fd00017c10ea5d67b1b2032551cde00548522218125 WHIRLPOOL ad8f01172f5bdb3a3a69fe7b03862c4c411bc8d95211053ad66ed1d60a3c0577d073d1075a1e0a80b25d9b2721addda55a2967e6ccf5e194cec8d08770ac5fc2 +DIST qtbase-opensource-src-5.6.2.tar.xz 46825164 SHA256 2f6eae93c5d982fe0a387a01aeb3435571433e23e9d9d9246741faf51f1ee787 SHA512 ff55204e6f0b046ccb03430ac6a22bd743bc2f3822625f0c23a481a8a7acb5d93f5b8e900815c70f10554887fbe26b3ee79f6d702acfa5c370e4e3cbd1f2b321 WHIRLPOOL 4a68aae4e471b0cfac3abf3652bb18cac8ffce17c941c8589a154bf07eb8d26945fab535f2e1acb866a584584c1811e953aa19fb1b3709831d85a620f0b6dc5a +DIST qtbase-opensource-src-5.7.1.tar.xz 44992616 SHA256 edcdf549d94d98aff08e201dcb3ca25bc3628a37b1309e320d5f556b6b66557e SHA512 0506a3a856f76e5ba182e3382a515282b6096f3900fbdc14cd5aec425105ab61922e0ada0361234387335ceb80b3c69e39cd34d75476c2946c4371e7b8c0827f WHIRLPOOL de5ff1380b3fd9cbcca741d212ac516e3f8a31366219605730cf5525a04e4efc9965a9b3cf8e99f50a2912bc7add83f61e7f90a85e176ad2830e4c1422b5d682 +DIST qtbase-opensource-src-5.9.2.tar.xz 45148744 SHA256 7fe2bb468955f633c71b3ddd3c269e68a2c4137a4e5b8dd12dcdb34cbc6d609b SHA512 a2f965871645256f3d019f71f3febb875455a29d03fccc7a3371ddfeb193b0af12394e779df05adf69fd10fe7b0d966f3915a24528ec7eb3bc36c2db6af2b6e7 WHIRLPOOL aed0b8aac590fad17b4f9067b46097e81d9991307b296428a9592d66a7c11967ee3e9a50b1d05afdeb7503470e658b016ec5af5c71e71059bd4c0d391b845f95 +DIST qtgui-systemtrayicon-plugin-system.patch 51377 SHA256 e8582ebb2a5db99bf85789585516459ace42fc2b57fc7d5ff6156a2819bda282 SHA512 0d74b61e23af2e8ef0619ee616c4b775761514f53ba79bcb25b32b7e55beab3575c0d279ba1b016498804023bb78f8cff61964ce56f80642f648406f7c303679 WHIRLPOOL 03cc247a2a0e3b77fc541fa0b47abb125c8f7b304037f2067488861f12fdab25d3b3b3a7cf90626c229aa85a2d43ae4319c0f838b6eeb5ecdfe838a365ed8a58 +EBUILD qtgui-4.8.6-r4.ebuild 6074 SHA256 b5e2b8e1b50bc04d6eb7fbae4ce01dab4da4834ecd59a4027da68b61eba07db1 SHA512 7d1784458f63e2a0f38b80745d62af185049771d3e19e5dc4cb432882dd9ed3252326feb866dd75adf2756ce704d5b977f7f5cd9ca8d408eca227611556cad0a WHIRLPOOL 8f46a3f53fc53863537971eed920516b77a93c3ff94d6840c745c6aae0f95c26503bfd5f2f924a8ef11b9eecea9954ffbb5aa6e0212bebe3f8a56a6018d9885a +EBUILD qtgui-4.8.7.ebuild 5655 SHA256 64741789904b335973a3bfe8db7091d0f977f5146dc33f28a36cb0dff677d56b SHA512 8d642f38263bb2902a183f78142919226f9cf3cc8009f1c4166f7c194adee4b1db2b7ee6e212f97f16aa8696f046cbb5c1c4b4c17638e7311e57cff636327427 WHIRLPOOL d8e504e12a6c3a39e4ffad26836dedeb2c9172def488063f6098b1a06b2b685587f0856f9cb32231cc47a2e10004ed8218231f6f3248599e7dbbd942a8d33342 +EBUILD qtgui-5.6.2.ebuild 3698 SHA256 3da8026e05b1053832d8ae562ecdb133a4dc7eb2d2291152e10838c139ab92a7 SHA512 7e89c312327ec880b1e080cc4e5a983faeb789c7625cc7ae3f16204b7309eb4386aa21b8d5c8710edd057b9ea290a4d8642d1551ae9e297dc7fdef7997e43fdc WHIRLPOOL 671896eb07c8f549ef765e5d51850deef8db1ebb18239c43fec13285a9e4d40ad34ba4164ce63db079e1a1e179a6d8495390018f6ae5b05add6decb8ad4a48f0 +EBUILD qtgui-5.7.1-r1.ebuild 3792 SHA256 861ddc0cc5ce6c32f3e22c116caed60d9844062d1709af38eb3f4b89320afcf5 SHA512 f8d57932f30b17ea72cdebe7aa268e022df15a29bc3c3e2789f8c68b54a29e89d8c9b9a489cd6d5492e88dbc6f35cd9872d02ce920ef7b8d17878bfbfee10a7e WHIRLPOOL 06b4afc767fe25998e201ebf0042834b03c4d2cb3f652b70123829a5a32e9e6efaf0959bee251d0e69c8dcf0f48f75c18a91900a37f0c49c4c36183d36deb788 +EBUILD qtgui-5.9.2.ebuild 3500 SHA256 e9f0ed7c1968b3fbec2c0851505af1a3d07e9dd7c0f4ea30301942f9ee38182f SHA512 e47f1940a22f8de23511a4b058ea6ed3907b0549f6598cd7bfe0de73529b4bf928ea8fbb6746b1833ebddd7e812acc06641170e962f35ed289dfa73e07a296de WHIRLPOOL 09774bc506162b78898517089f7624f879c320adcee8b876b492a2283bc1dc97358215210f23637906a7b72abb9269cf7b655c20f4a70e86230f8808b60a64ab +MISC ChangeLog 8734 SHA256 849ee0697b95cbd927ac9e868d036e89f630a5715eafe47449f2582f5cf762f7 SHA512 53d70cf59fd8c58726d6dd0f8386167b45712c4a5ccc04464789734f2f825c2bf3a7f1f6b4a87141edf9f05224a58a5d5a79a4884bbcca8470da304a3c78740d WHIRLPOOL ee681261ad745adfd0e81575683d405af66b17a773d583c65d568b6c1fb797d69615aa28f97c96ff94587df663903861556bc74ab0829b4d6a870653ca86a950 +MISC ChangeLog-2015 45863 SHA256 1b4f8622a4a7eb6af91eefa9adb238f904bef34b399c1ac451b74778308c7534 SHA512 883d01c0cb53dca492d3e9daba2773eebfffea5e36193b98c4e7e1a032b1e1e331fab97c235ee4b4b5821d9d14f95dc47a656683e1c2ef2eb16e0c30bf8eab6f WHIRLPOOL 1236f303c57a4cafc978f482a9f90c18021a0121466603191a9feebc7a44751eda9a1a70a93d8fb6e06db289937861100464b29bbf80eb557acebe9815af4539 +MISC metadata.xml 1862 SHA256 3fc199f72c70282630b176b3f6ecf21a1ea47433cfa218d475ab874e2d4e5391 SHA512 cba45629873eba71f152885640e51ad324b0dbb702c45811b4a1785a0af3baa7ce39923dfd0dbf7748d604e9a053d6580defdad75ad5ae228d37424d9b54e530 WHIRLPOOL 884bf256ffb0dd63d10e498008954e53cf591a00c2d391eb230217c87ba1a04383f39eac0e65375ac2e6c0fd8aae10cb1bb8e5a1068dbde91e44c922399f329f diff --git a/dev-qt/qtgui/files/qtgui-4.7.3-cups.patch b/dev-qt/qtgui/files/qtgui-4.7.3-cups.patch new file mode 100644 index 000000000000..e0305e11b89a --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-4.7.3-cups.patch @@ -0,0 +1,84 @@ +diff -ur qt-everywhere-opensource-src-4.6.2/src/gui/dialogs/qprintdialog_unix.cpp qt-everywhere-opensource-src-4.6.2-cups/src/gui/dialogs/qprintdialog_unix.cpp +--- qt-everywhere-opensource-src-4.6.2/src/gui/dialogs/qprintdialog_unix.cpp 2010-02-11 16:55:22.000000000 +0100 ++++ qt-everywhere-opensource-src-4.6.2-cups/src/gui/dialogs/qprintdialog_unix.cpp 2010-02-28 04:34:16.000000000 +0100 +@@ -569,6 +569,32 @@ + void QPrintDialogPrivate::selectPrinter(QCUPSSupport *cups) + { + options.duplex->setEnabled(cups && cups->ppdOption("Duplex")); ++ ++ if (cups) { ++ const ppd_option_t* duplex = cups->ppdOption("Duplex"); ++ if (duplex) { ++ // copy default ppd duplex to qt dialog ++ if (qstrcmp(duplex->defchoice, "DuplexTumble") == 0) ++ options.duplexShort->setChecked(true); ++ else if (qstrcmp(duplex->defchoice, "DuplexNoTumble") == 0) ++ options.duplexLong->setChecked(true); ++ else ++ options.noDuplex->setChecked(true); ++ } ++ ++ if (cups->currentPPD()) { ++ // set default color ++ if (cups->currentPPD()->color_device) ++ options.color->setChecked(true); ++ else ++ options.grayscale->setChecked(true); ++ } ++ ++ // set collation ++ const ppd_option_t *collate = cups->ppdOption("Collate"); ++ if (collate) ++ options.collate->setChecked(qstrcmp(collate->defchoice, "True")==0); ++ } + } + #endif + +diff -ur qt-everywhere-opensource-src-4.6.2/src/gui/painting/qprinter.cpp qt-everywhere-opensource-src-4.6.2-cups/src/gui/painting/qprinter.cpp +--- qt-everywhere-opensource-src-4.6.2/src/gui/painting/qprinter.cpp 2010-02-11 16:55:22.000000000 +0100 ++++ qt-everywhere-opensource-src-4.6.2-cups/src/gui/painting/qprinter.cpp 2010-02-28 04:55:15.000000000 +0100 +@@ -627,6 +627,44 @@ + && d_ptr->paintEngine->type() != QPaintEngine::MacPrinter) { + setOutputFormat(QPrinter::PdfFormat); + } ++ ++#if !defined(QT_NO_CUPS) && !defined(QT_NO_LIBRARY) ++ // fill in defaults from ppd file ++ QCUPSSupport cups; ++ ++ int printernum = -1; ++ for (int i = 0; i < cups.availablePrintersCount(); i++) { ++ if (printerName().toLocal8Bit() == cups.availablePrinters()[i].name) ++ printernum = i; ++ } ++ if (printernum >= 0) { ++ cups.setCurrentPrinter(printernum); ++ ++ const ppd_option_t* duplex = cups.ppdOption("Duplex"); ++ if (duplex) { ++ // copy default ppd duplex to qt dialog ++ if (qstrcmp(duplex->defchoice, "DuplexTumble") == 0) ++ setDuplex(DuplexShortSide); ++ else if (qstrcmp(duplex->defchoice, "DuplexNoTumble") == 0) ++ setDuplex(DuplexLongSide); ++ else ++ setDuplex(DuplexNone); ++ } ++ ++ if (cups.currentPPD()) { ++ // set default color ++ if (cups.currentPPD()->color_device) ++ setColorMode(Color); ++ else ++ setColorMode(GrayScale); ++ } ++ ++ // set collation ++ const ppd_option_t *collate = cups.ppdOption("Collate"); ++ if (collate) ++ setCollateCopies(qstrcmp(collate->defchoice, "True")==0); ++ } ++#endif + } + + /*! diff --git a/dev-qt/qtgui/files/qtgui-4.8.5-CVE-2015-0295.patch b/dev-qt/qtgui/files/qtgui-4.8.5-CVE-2015-0295.patch new file mode 100644 index 000000000000..3ac87d8dc369 --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-4.8.5-CVE-2015-0295.patch @@ -0,0 +1,40 @@ +From e50aa2252cdd5cb53eef7d8c4503c7edff634f68 Mon Sep 17 00:00:00 2001 +From: "Richard J. Moore" +Date: Tue, 24 Feb 2015 19:02:35 +0000 +Subject: [PATCH] Fix a division by zero when processing malformed BMP files. + +This fixes a division by 0 when processing a maliciously crafted BMP +file. No impact beyond DoS. + +Backport of 661f6bfd032dacc62841037732816a583640e187 + +Task-number: QTBUG-44547 +Change-Id: I43f06e752b11cb50669101460902a82b885ae618 +Reviewed-by: Thiago Macieira +--- + src/gui/image/qbmphandler.cpp | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/gui/image/qbmphandler.cpp b/src/gui/image/qbmphandler.cpp +index b22e842..30fa9e0 100644 +--- a/src/gui/image/qbmphandler.cpp ++++ b/src/gui/image/qbmphandler.cpp +@@ -319,10 +319,16 @@ static bool read_dib_body(QDataStream &s, const BMP_INFOHDR &bi, int offset, int + } + } else if (comp == BMP_BITFIELDS && (nbits == 16 || nbits == 32)) { + red_shift = calc_shift(red_mask); ++ if (((red_mask >> red_shift) + 1) == 0) ++ return false; + red_scale = 256 / ((red_mask >> red_shift) + 1); + green_shift = calc_shift(green_mask); ++ if (((green_mask >> green_shift) + 1) == 0) ++ return false; + green_scale = 256 / ((green_mask >> green_shift) + 1); + blue_shift = calc_shift(blue_mask); ++ if (((blue_mask >> blue_shift) + 1) == 0) ++ return false; + blue_scale = 256 / ((blue_mask >> blue_shift) + 1); + } else if (comp == BMP_RGB && (nbits == 24 || nbits == 32)) { + blue_mask = 0x000000ff; +-- +2.0.5 \ No newline at end of file diff --git a/dev-qt/qtgui/files/qtgui-4.8.5-cleanlooks-floating-point-exception.patch b/dev-qt/qtgui/files/qtgui-4.8.5-cleanlooks-floating-point-exception.patch new file mode 100644 index 000000000000..a54efef0d78b --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-4.8.5-cleanlooks-floating-point-exception.patch @@ -0,0 +1,38 @@ +From 0db65e148dcb4d5e5b98475f207d41a287c401a1 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev +Date: Wed, 28 May 2014 00:22:55 -0400 +Subject: [PATCH] Cleanlooks style: Fix floating point exception + +In QCleanlooksStyle::drawControl, if indeterminate == true and +rect.width() == 4, we will end up with slideWidth of zero, and +take a mod by zero when calculating the value of step. + +This causes a crash in Quassel 0.10; see +https://bugs.gentoo.org/show_bug.cgi?id=507124 + +Instead, calculate slideWidth based on max(width, minWidth) where +minWidth was already set as 4, ensuring that slideWidth >= 2. + +Change-Id: I6678789105e359fa26c99409f449cad0ba3bd0ae +(cherry picked from qtstyleplugins/8ff2ac6035fb1d01f5c0054ba14afb949410e3a7) +Reviewed-by: Giuseppe D'Angelo +--- + src/gui/styles/qcleanlooksstyle.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/gui/styles/qcleanlooksstyle.cpp b/src/gui/styles/qcleanlooksstyle.cpp +index 504734a..3f665ca 100644 +--- a/src/gui/styles/qcleanlooksstyle.cpp ++++ b/src/gui/styles/qcleanlooksstyle.cpp +@@ -1773,7 +1773,7 @@ void QCleanlooksStyle::drawControl(ControlElement element, const QStyleOption *o + } + } else { + Q_D(const QCleanlooksStyle); +- int slideWidth = ((rect.width() - 4) * 2) / 3; ++ int slideWidth = (qMax(rect.width() - 4, minWidth) * 2) / 3; + int step = ((d->animateStep * slideWidth) / d->animationFps) % slideWidth; + if ((((d->animateStep * slideWidth) / d->animationFps) % (2 * slideWidth)) >= slideWidth) + step = slideWidth - step; +-- +2.0.0 + diff --git a/dev-qt/qtgui/files/qtgui-4.8.5-disable-gtk-theme-check.patch b/dev-qt/qtgui/files/qtgui-4.8.5-disable-gtk-theme-check.patch new file mode 100644 index 000000000000..9a9f773537e4 --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-4.8.5-disable-gtk-theme-check.patch @@ -0,0 +1,22 @@ +diff -up qt-everywhere-opensource-src-4.8.5/src/gui/styles/qgtkstyle_p.cpp.qgtkstyle_disable_gtk_theme_check qt-everywhere-opensource-src-4.8.5/src/gui/styles/qgtkstyle_p.cpp +--- qt-everywhere-opensource-src-4.8.5/src/gui/styles/qgtkstyle_p.cpp.qgtkstyle_disable_gtk_theme_check 2013-06-09 16:28:22.938840346 -0500 ++++ qt-everywhere-opensource-src-4.8.5/src/gui/styles/qgtkstyle_p.cpp 2013-06-09 17:03:01.781125479 -0500 +@@ -503,18 +503,6 @@ void QGtkStylePrivate::initGtkWidgets() + return; + } + +- static QString themeName; +- if (!gtkWidgetMap()->contains("GtkWindow") && themeName.isEmpty()) { +- themeName = getThemeName(); +- +- if (themeName == QLS("Qt") || themeName == QLS("Qt4")) { +- // Due to namespace conflicts with Qt3 and obvious recursion with Qt4, +- // we cannot support the GTK_Qt Gtk engine +- qWarning("QGtkStyle cannot be used together with the GTK_Qt engine."); +- return; +- } +- } +- + if (QGtkStylePrivate::gtk_init) { + // Gtk will set the Qt error handler so we have to reset it afterwards + x11ErrorHandler qt_x_errhandler = XSetErrorHandler(0); diff --git a/dev-qt/qtgui/files/qtgui-4.8.5-dont-crash-on-broken-GIF-images.patch b/dev-qt/qtgui/files/qtgui-4.8.5-dont-crash-on-broken-GIF-images.patch new file mode 100644 index 000000000000..d800caf97421 --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-4.8.5-dont-crash-on-broken-GIF-images.patch @@ -0,0 +1,43 @@ +From f1b76c126c476c155af8c404b97c42cd1a709333 Mon Sep 17 00:00:00 2001 +From: Lars Knoll +Date: Thu, 24 Apr 2014 15:33:27 +0200 +Subject: Don't crash on broken GIF images + +Broken GIF images could set invalid width and height +values inside the image, leading to Qt creating a null +QImage for it. In that case we need to abort decoding +the image and return an error. + +Initial patch by Rich Moore. + +Backport of Id82a4036f478bd6e49c402d6598f57e7e5bb5e1e from Qt 5 + +Task-number: QTBUG-38367 +Change-Id: I0680740018aaa8356d267b7af3f01fac3697312a +Security-advisory: CVE-2014-0190 +Reviewed-by: Richard J. Moore +--- + src/gui/image/qgifhandler.cpp | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/src/gui/image/qgifhandler.cpp b/src/gui/image/qgifhandler.cpp +index 3324f04..5199dd3 100644 +--- a/src/gui/image/qgifhandler.cpp ++++ b/src/gui/image/qgifhandler.cpp +@@ -359,6 +359,13 @@ int QGIFFormat::decode(QImage *image, const uchar *buffer, int length, + memset(bits, 0, image->byteCount()); + } + ++ // Check if the previous attempt to create the image failed. If it ++ // did then the image is broken and we should give up. ++ if (image->isNull()) { ++ state = Error; ++ return -1; ++ } ++ + disposePrevious(image); + disposed = false; + +-- +1.9.3 + diff --git a/dev-qt/qtgui/files/qtgui-4.8.5-qclipboard-delay.patch b/dev-qt/qtgui/files/qtgui-4.8.5-qclipboard-delay.patch new file mode 100644 index 000000000000..d46f8c541872 --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-4.8.5-qclipboard-delay.patch @@ -0,0 +1,33 @@ +From a83ddc5212736f89a0b94667c495494fe6861d63 Mon Sep 17 00:00:00 2001 +From: Michael Palimaka +Date: Mon, 16 Jun 2014 23:52:24 +1000 +Subject: Fix delay with QClipboard and useEventLoop. + +This manifests when using LibreOffice with KDE integration. When KFileDialog is +open, the clipboard is repeatedly polled causing a visible delay since using +QClipboard in "useEventLoop" mode adds 50ms delay to every single clipboard +fetch. + +Change-Id: Id30cda7b983ae7c949fa270d04f772fa44fc21cd +Task-number: QTBUG-38585 +--- + src/gui/kernel/qclipboard_x11.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/gui/kernel/qclipboard_x11.cpp b/src/gui/kernel/qclipboard_x11.cpp +index 14bf088..5f442b9 100644 +--- a/src/gui/kernel/qclipboard_x11.cpp ++++ b/src/gui/kernel/qclipboard_x11.cpp +@@ -548,7 +548,8 @@ bool QX11Data::clipboardWaitForEvent(Window win, int type, XEvent *event, int ti + return false; + + XSync(X11->display, false); +- usleep(50000); ++ if (!XPending(X11->display)) ++ usleep(5000); + + now.start(); + +-- +2.0.0 + diff --git a/dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1858.patch b/dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1858.patch new file mode 100644 index 000000000000..c1aac444a644 --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1858.patch @@ -0,0 +1,63 @@ +From 3e55cd6dc467303a3c35312e9fcb255c2c048b32 Mon Sep 17 00:00:00 2001 +From: Eirik Aavitsland +Date: Wed, 11 Mar 2015 13:34:01 +0100 +Subject: Fixes crash in bmp and ico image decoding + +Fuzzing test revealed that for certain malformed bmp and ico files, +the handler would segfault. + +Change-Id: I19d45145f31e7f808f7f6a1a1610270ea4159cbe +(cherry picked from qtbase/2adbbae5432aa9d8cc41c6fcf55c2e310d2d4078) +Reviewed-by: Richard J. Moore +--- + src/gui/image/qbmphandler.cpp | 13 +++++++------ + src/plugins/imageformats/ico/qicohandler.cpp | 2 +- + 2 files changed, 8 insertions(+), 7 deletions(-) + +diff --git a/src/gui/image/qbmphandler.cpp b/src/gui/image/qbmphandler.cpp +index 30fa9e0..17a880b 100644 +--- a/src/gui/image/qbmphandler.cpp ++++ b/src/gui/image/qbmphandler.cpp +@@ -478,12 +478,6 @@ static bool read_dib_body(QDataStream &s, const BMP_INFOHDR &bi, int offset, int + p = data + (h-y-1)*bpl; + break; + case 2: // delta (jump) +- // Protection +- if ((uint)x >= (uint)w) +- x = w-1; +- if ((uint)y >= (uint)h) +- y = h-1; +- + { + quint8 tmp; + d->getChar((char *)&tmp); +@@ -491,6 +485,13 @@ static bool read_dib_body(QDataStream &s, const BMP_INFOHDR &bi, int offset, int + d->getChar((char *)&tmp); + y += tmp; + } ++ ++ // Protection ++ if ((uint)x >= (uint)w) ++ x = w-1; ++ if ((uint)y >= (uint)h) ++ y = h-1; ++ + p = data + (h-y-1)*bpl + x; + break; + default: // absolute mode +diff --git a/src/plugins/imageformats/ico/qicohandler.cpp b/src/plugins/imageformats/ico/qicohandler.cpp +index 1a88605..3c34765 100644 +--- a/src/plugins/imageformats/ico/qicohandler.cpp ++++ b/src/plugins/imageformats/ico/qicohandler.cpp +@@ -571,7 +571,7 @@ QImage ICOReader::iconAt(int index) + QImage::Format format = QImage::Format_ARGB32; + if (icoAttrib.nbits == 24) + format = QImage::Format_RGB32; +- else if (icoAttrib.ncolors == 2) ++ else if (icoAttrib.ncolors == 2 && icoAttrib.depth == 1) + format = QImage::Format_Mono; + else if (icoAttrib.ncolors > 0) + format = QImage::Format_Indexed8; +-- +cgit v0.11.0 + diff --git a/dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1860.patch b/dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1860.patch new file mode 100644 index 000000000000..d881db8d5b86 --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-4.8.6-CVE-2015-1860.patch @@ -0,0 +1,31 @@ +From a1cf194c54be57d6ab55dfd26b9562a60532208e Mon Sep 17 00:00:00 2001 +From: Eirik Aavitsland +Date: Wed, 11 Mar 2015 09:00:41 +0100 +Subject: Fixes crash in gif image decoder + +Fuzzing test revealed that for certain malformed gif files, +qgifhandler would segfault. + +Change-Id: I5bb6f60e1c61849e0d8c735edc3869945e5331c1 +(cherry picked from qtbase/ea2c5417fcd374302f5019e67f72af5facbd29f6) +Reviewed-by: Richard J. Moore +--- + src/gui/image/qgifhandler.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/gui/image/qgifhandler.cpp b/src/gui/image/qgifhandler.cpp +index 5199dd3..49aa2a6 100644 +--- a/src/gui/image/qgifhandler.cpp ++++ b/src/gui/image/qgifhandler.cpp +@@ -944,6 +944,8 @@ void QGIFFormat::fillRect(QImage *image, int col, int row, int w, int h, QRgb co + + void QGIFFormat::nextY(unsigned char *bits, int bpl) + { ++ if (out_of_bounds) ++ return; + int my; + switch (interlace) { + case 0: // Non-interlaced +-- +cgit v0.11.0 + diff --git a/dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch b/dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch new file mode 100644 index 000000000000..42ee58b611fe --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-5.7.1-qclipboard.patch @@ -0,0 +1,39 @@ +From 291eba6f8099a0fec8fbd9cf8a1fb67e5c9f4f8d Mon Sep 17 00:00:00 2001 +From: Palo Kisa +Date: Mon, 7 Nov 2016 18:27:17 +0100 +Subject: QClipboard: Fix emitting changed() in XCB + +In XCB environment the QClipboard::changed() was not delivered if the +QClipboard::clear() was issued by other Qt app/process. + +If the QClipboard::clear() is used, then the owner in +xcb_xfixes_selection_notify_event_t is XCB_NONE, so we need make the +decission to handle this event by the selection_timestamp and our +m_timestamp[mode]. + +Task-number: QTBUG-56972 +Change-Id: If4c486ac02223eac506465cac7ff1a07bd02a187 +Reviewed-by: Lars Knoll +--- + src/plugins/platforms/xcb/qxcbclipboard.cpp | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp +index d44ebae..40abef4 100644 +--- a/src/plugins/platforms/xcb/qxcbclipboard.cpp ++++ b/src/plugins/platforms/xcb/qxcbclipboard.cpp +@@ -723,8 +723,10 @@ void QXcbClipboard::handleXFixesSelectionRequest(xcb_xfixes_selection_notify_eve + if (mode > QClipboard::Selection) + return; + +- // here we care only about the xfixes events that come from non Qt processes +- if (event->owner != XCB_NONE && event->owner != owner()) { ++ // Note1: Here we care only about the xfixes events that come from other processes. ++ // Note2: If the QClipboard::clear() is issued, event->owner is XCB_NONE, ++ // so we check selection_timestamp to not handle our own QClipboard::clear(). ++ if (event->owner != owner() && event->selection_timestamp > m_timestamp[mode]) { + if (!m_xClipboard[mode]) { + m_xClipboard[mode].reset(new QXcbClipboardMime(mode, this)); + } else { +-- +cgit v1.0-4-g1e03 diff --git a/dev-qt/qtgui/files/qtgui-5.7.1-x32.patch b/dev-qt/qtgui/files/qtgui-5.7.1-x32.patch new file mode 100644 index 000000000000..9cfc29d1d088 --- /dev/null +++ b/dev-qt/qtgui/files/qtgui-5.7.1-x32.patch @@ -0,0 +1,34 @@ +From 92805a0e9c488e47280e93f65e5378818e340ad1 Mon Sep 17 00:00:00 2001 +From: Laszlo Agocs +Date: Mon, 7 Nov 2016 11:23:21 +0100 +Subject: Fix EGL break on Debian X32 + +Change to QT_POINTER_SIZE instead of Q_PROCESSOR_WORDSIZE. The latter +is 8 due to targeting 64-bit, but pointers are 32-bit still in such +builds. For the condition in question it is the pointer size that +matters. + +Task-number: QTBUG-56686 +Change-Id: I96c203cae91ceb8404606de605c4fdb1a02a9d5f +Reviewed-by: Dmitry Shachnev +Reviewed-by: Thiago Macieira +--- + src/platformsupport/eglconvenience/qt_egl_p.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/platformsupport/eglconvenience/qt_egl_p.h b/src/platformsupport/eglconvenience/qt_egl_p.h +index 615ee4b80a..b1495c9f9d 100644 +--- a/src/platformsupport/eglconvenience/qt_egl_p.h ++++ b/src/platformsupport/eglconvenience/qt_egl_p.h +@@ -83,7 +83,7 @@ struct QtEglConverter + { return v; } + }; + +-#if Q_PROCESSOR_WORDSIZE > 4 ++#if QT_POINTER_SIZE > 4 + template <> + struct QtEglConverter + { +-- +cgit v1.1-6-g87c4 + diff --git a/dev-qt/qtgui/metadata.xml b/dev-qt/qtgui/metadata.xml new file mode 100644 index 000000000000..ef12478e668a --- /dev/null +++ b/dev-qt/qtgui/metadata.xml @@ -0,0 +1,37 @@ + + + + + qt@gentoo.org + Gentoo Qt Project + + + Enable EGL integration + Build the EGL Full Screen/Single Surface platform plugin + Enable support for input devices via evdev + Add support for exceptions - like catching them + inside the event loop (recommended by upstream) + Use GLES 2.0 or later instead of full OpenGL + Enable integration with the dev-libs/glib event loop + Build a widgets style that mimics the active GTK+ theme + Build the IBus input method plugin + Enable support for input devices via dev-libs/libinput + Enable the Qt3Support libraries for Qt4. Note that + this does not mean you can compile pure Qt3 programs with Qt4. + Build the 'trace' graphicssystem engine which allows to record + all drawing operations into a trace buffer. The trace can be replayed + later with the qttracereplay tool. + Enable support for touchscreen devices via x11-libs/tslib + Build plugin to receive touch events over the TUIO protocol + Build the XCB platform plugin and enable X11 integration + + + https://bugreports.qt.io/ + https://doc.qt.io/ + + + + Must only be used by packages that are known to use private parts of the Qt API. + + + diff --git a/dev-qt/qtgui/qtgui-4.8.6-r4.ebuild b/dev-qt/qtgui/qtgui-4.8.6-r4.ebuild new file mode 100644 index 000000000000..2eccb9dcdeb4 --- /dev/null +++ b/dev-qt/qtgui/qtgui-4.8.6-r4.ebuild @@ -0,0 +1,174 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit eutils qt4-build-multilib + +DESCRIPTION="The GUI module for the Qt toolkit" +SRC_URI+=" https://dev.gentoo.org/~pesa/patches/${PN}-systemtrayicon-plugin-system.patch" + +if [[ ${QT4_BUILD_TYPE} == live ]]; then + KEYWORDS="alpha arm hppa ia64 ppc ppc64 sparc" +else + KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd" +fi + +IUSE="+accessibility cups egl +glib gtkstyle mng nas nis qt3support tiff trace xinerama +xv" + +REQUIRED_USE=" + gtkstyle? ( glib ) +" + +# cairo[-qt4] is needed because of bug 454066 +RDEPEND=" + app-eselect/eselect-qtgraphicssystem + ~dev-qt/qtcore-${PV}[aqua=,debug=,glib=,qt3support=,${MULTILIB_USEDEP}] + ~dev-qt/qtscript-${PV}[aqua=,debug=,${MULTILIB_USEDEP}] + >=media-libs/fontconfig-2.10.2-r1[${MULTILIB_USEDEP}] + >=media-libs/freetype-2.4.11-r1:2[${MULTILIB_USEDEP}] + media-libs/libpng:0=[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] + virtual/jpeg:0[${MULTILIB_USEDEP}] + !aqua? ( + >=x11-libs/libICE-1.0.8-r1[${MULTILIB_USEDEP}] + >=x11-libs/libSM-1.2.1-r1[${MULTILIB_USEDEP}] + >=x11-libs/libX11-1.5.0-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXcursor-1.1.13-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.1-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXfixes-5.0-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXi-1.6.2-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXrandr-1.4.0-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXrender-0.9.7-r1[${MULTILIB_USEDEP}] + xinerama? ( >=x11-libs/libXinerama-1.1.2-r1[${MULTILIB_USEDEP}] ) + xv? ( >=x11-libs/libXv-1.0.7-r1[${MULTILIB_USEDEP}] ) + ) + cups? ( net-print/cups[${MULTILIB_USEDEP}] ) + egl? ( media-libs/mesa[egl,${MULTILIB_USEDEP}] ) + glib? ( dev-libs/glib:2[${MULTILIB_USEDEP}] ) + gtkstyle? ( + >=x11-libs/cairo-1.12[-qt4(-),${MULTILIB_USEDEP}] + >=x11-libs/gtk+-2.24.23-r1:2[aqua=,${MULTILIB_USEDEP}] + ) + mng? ( >=media-libs/libmng-1.0.10-r2:=[${MULTILIB_USEDEP}] ) + nas? ( >=media-libs/nas-1.9.3-r1[${MULTILIB_USEDEP}] ) + tiff? ( >=media-libs/tiff-4.0.3-r2:0[${MULTILIB_USEDEP}] ) + ! "${ED}"/usr/share/qt4/graphicssystems/raster || die + echo "" > "${ED}"/usr/share/qt4/graphicssystems/native || die + + if has tools/qtconfig ${QT4_TARGET_DIRECTORIES}; then + newicon tools/qtconfig/images/appicon.png qtconfig.png + make_desktop_entry qtconfig 'Qt Configuration Tool' qtconfig 'Qt;Settings;DesktopSettings' + fi +} + +pkg_postinst() { + qt4-build-multilib_pkg_postinst + + # raster is the default graphicssystem, set it on first install + eselect qtgraphicssystem set raster --use-old +} diff --git a/dev-qt/qtgui/qtgui-4.8.7.ebuild b/dev-qt/qtgui/qtgui-4.8.7.ebuild new file mode 100644 index 000000000000..dda69ac8593d --- /dev/null +++ b/dev-qt/qtgui/qtgui-4.8.7.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +inherit eutils qt4-build-multilib + +DESCRIPTION="The GUI module for the Qt toolkit" +SRC_URI+=" https://dev.gentoo.org/~pesa/patches/${PN}-systemtrayicon-plugin-system.patch" + +if [[ ${QT4_BUILD_TYPE} == release ]]; then + KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd" +fi + +IUSE="+accessibility cups egl +glib gtkstyle mng nas nis qt3support tiff trace xinerama +xv" + +REQUIRED_USE=" + gtkstyle? ( glib ) +" + +# cairo[-qt4] is needed because of bug 454066 +RDEPEND=" + app-eselect/eselect-qtgraphicssystem + ~dev-qt/qtcore-${PV}[aqua=,debug=,glib=,qt3support=,${MULTILIB_USEDEP}] + ~dev-qt/qtscript-${PV}[aqua=,debug=,${MULTILIB_USEDEP}] + >=media-libs/fontconfig-2.10.2-r1[${MULTILIB_USEDEP}] + >=media-libs/freetype-2.4.11-r1:2[${MULTILIB_USEDEP}] + media-libs/libpng:0=[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] + virtual/jpeg:0[${MULTILIB_USEDEP}] + !aqua? ( + >=x11-libs/libICE-1.0.8-r1[${MULTILIB_USEDEP}] + >=x11-libs/libSM-1.2.1-r1[${MULTILIB_USEDEP}] + >=x11-libs/libX11-1.5.0-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXcursor-1.1.13-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.1-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXfixes-5.0-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXi-1.6.2-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXrandr-1.4.0-r1[${MULTILIB_USEDEP}] + >=x11-libs/libXrender-0.9.7-r1[${MULTILIB_USEDEP}] + xinerama? ( >=x11-libs/libXinerama-1.1.2-r1[${MULTILIB_USEDEP}] ) + xv? ( >=x11-libs/libXv-1.0.7-r1[${MULTILIB_USEDEP}] ) + ) + cups? ( net-print/cups[${MULTILIB_USEDEP}] ) + egl? ( media-libs/mesa[egl,${MULTILIB_USEDEP}] ) + glib? ( dev-libs/glib:2[${MULTILIB_USEDEP}] ) + gtkstyle? ( + >=x11-libs/cairo-1.12[-qt4(-),${MULTILIB_USEDEP}] + >=x11-libs/gtk+-2.24.23-r1:2[aqua=,${MULTILIB_USEDEP}] + ) + mng? ( >=media-libs/libmng-1.0.10-r2:=[${MULTILIB_USEDEP}] ) + nas? ( >=media-libs/nas-1.9.3-r1[${MULTILIB_USEDEP}] ) + tiff? ( >=media-libs/tiff-4.0.3-r2:0[${MULTILIB_USEDEP}] ) + ! "${ED}"/usr/share/qt4/graphicssystems/raster || die + echo "" > "${ED}"/usr/share/qt4/graphicssystems/native || die + + if has tools/qtconfig ${QT4_TARGET_DIRECTORIES}; then + newicon tools/qtconfig/images/appicon.png qtconfig.png + make_desktop_entry qtconfig 'Qt Configuration Tool' qtconfig 'Qt;Settings;DesktopSettings' + fi +} + +pkg_postinst() { + qt4-build-multilib_pkg_postinst + + # raster is the default graphicssystem, set it on first install + eselect qtgraphicssystem set raster --use-old +} diff --git a/dev-qt/qtgui/qtgui-5.6.2.ebuild b/dev-qt/qtgui/qtgui-5.6.2.ebuild new file mode 100644 index 000000000000..da1e04dd3df2 --- /dev/null +++ b/dev-qt/qtgui/qtgui-5.6.2.ebuild @@ -0,0 +1,174 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +QT5_MODULE="qtbase" +inherit qt5-build + +DESCRIPTION="The GUI module and platform plugins for the Qt5 framework" + +if [[ ${QT5_BUILD_TYPE} == release ]]; then + KEYWORDS="amd64 arm ~arm64 hppa ppc ppc64 x86" +fi + +# TODO: linuxfb + +IUSE="accessibility dbus egl eglfs evdev +gif gles2 gtkstyle + ibus jpeg libinput +png tslib tuio +udev +xcb" +REQUIRED_USE=" + || ( eglfs xcb ) + accessibility? ( dbus xcb ) + eglfs? ( egl ) + ibus? ( dbus ) + libinput? ( udev ) + xcb? ( gles2? ( egl ) ) +" + +RDEPEND=" + dev-libs/glib:2 + ~dev-qt/qtcore-${PV} + media-libs/fontconfig + >=media-libs/freetype-2.6.1:2 + >=media-libs/harfbuzz-1.0.6:= + >=sys-libs/zlib-1.2.5 + virtual/opengl + dbus? ( ~dev-qt/qtdbus-${PV} ) + egl? ( media-libs/mesa[egl] ) + eglfs? ( + media-libs/mesa[gbm] + x11-libs/libdrm + ) + evdev? ( sys-libs/mtdev ) + gtkstyle? ( + x11-libs/gtk+:2 + x11-libs/pango + !!x11-libs/cairo[qt4] + ) + gles2? ( media-libs/mesa[gles2] ) + jpeg? ( virtual/jpeg:0 ) + libinput? ( + dev-libs/libinput:= + x11-libs/libxkbcommon + ) + png? ( media-libs/libpng:0= ) + tslib? ( x11-libs/tslib ) + tuio? ( ~dev-qt/qtnetwork-${PV} ) + udev? ( virtual/libudev:= ) + xcb? ( + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + >=x11-libs/libXi-1.7.4 + x11-libs/libXrender + >=x11-libs/libxcb-1.10:=[xkb] + >=x11-libs/libxkbcommon-0.4.1[X] + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-renderutil + x11-libs/xcb-util-wm + ) +" +DEPEND="${RDEPEND} + evdev? ( sys-kernel/linux-headers ) + udev? ( sys-kernel/linux-headers ) +" +PDEPEND=" + ibus? ( app-i18n/ibus ) +" + +QT5_TARGET_SUBDIRS=( + src/gui + src/openglextensions + src/platformheaders + src/platformsupport + src/plugins/generic + src/plugins/imageformats + src/plugins/platforms + src/plugins/platforminputcontexts + src/plugins/platformthemes +) + +QT5_GENTOO_CONFIG=( + accessibility:accessibility-atspi-bridge + egl + eglfs + eglfs:eglfs_egldevice: + eglfs:eglfs_gbm: + evdev + evdev:mtdev: + :fontconfig + :system-freetype:FREETYPE + !:no-freetype: + !gif:no-gif: + gles2::OPENGL_ES + gles2:opengles2:OPENGL_ES_2 + gtkstyle:gtkstyle: + gtkstyle:gtk2:STYLE_GTK + !:no-gui: + :system-harfbuzz:HARFBUZZ + !:no-harfbuzz: + jpeg:system-jpeg:IMAGEFORMAT_JPEG + !jpeg:no-jpeg: + libinput + libinput:xkbcommon-evdev: + :opengl + png:png: + png:system-png:IMAGEFORMAT_PNG + !png:no-png: + tslib + udev:libudev: + xcb:xcb: + xcb:xcb-glx: + xcb:xcb-plugin: + xcb:xcb-render: + xcb:xcb-sm: + xcb:xcb-xlib: + xcb:xinput2: + xcb::XKB + xcb:xrender +) + +src_prepare() { + # egl_x11 is activated when both egl and xcb are enabled + use egl && QT5_GENTOO_CONFIG+=(xcb:egl_x11) || QT5_GENTOO_CONFIG+=(egl:egl_x11) + + # avoid automagic dep on qtdbus + use dbus || sed -i -e 's/contains(QT_CONFIG, dbus)/false/' \ + src/platformsupport/platformsupport.pro || die + + qt_use_disable_mod ibus dbus \ + src/plugins/platforminputcontexts/platforminputcontexts.pro + + # avoid automagic dep on qtnetwork + use tuio || sed -i -e '/SUBDIRS += tuiotouch/d' \ + src/plugins/generic/generic.pro || die + + qt5-build_src_prepare +} + +src_configure() { + local myconf=( + $(usex dbus -dbus-linked '') + $(qt_use egl) + $(qt_use eglfs) + $(usex eglfs '-gbm -kms' '') + $(qt_use evdev) + $(qt_use evdev mtdev) + -fontconfig + -system-freetype + $(usex gif '' -no-gif) + $(qt_use gtkstyle) + -system-harfbuzz + $(qt_use jpeg libjpeg system) + $(qt_use libinput) + $(qt_use libinput xkbcommon-evdev) + -opengl $(usex gles2 es2 desktop) + $(qt_use png libpng system) + $(qt_use tslib) + $(qt_use udev libudev) + $(qt_use xcb xcb system) + $(qt_use xcb xkbcommon-x11 system) + $(usex xcb '-xcb-xlib -xinput2 -xkb -xrender' '') + ) + qt5-build_src_configure +} diff --git a/dev-qt/qtgui/qtgui-5.7.1-r1.ebuild b/dev-qt/qtgui/qtgui-5.7.1-r1.ebuild new file mode 100644 index 000000000000..fc48b79fe7bd --- /dev/null +++ b/dev-qt/qtgui/qtgui-5.7.1-r1.ebuild @@ -0,0 +1,179 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +QT5_MODULE="qtbase" +inherit qt5-build + +DESCRIPTION="The GUI module and platform plugins for the Qt5 framework" + +if [[ ${QT5_BUILD_TYPE} == release ]]; then + KEYWORDS="amd64 arm ~arm64 ~hppa ppc ppc64 x86" +fi + +# TODO: linuxfb + +IUSE="accessibility dbus egl eglfs evdev +gif gles2 gtk + ibus jpeg libinput +png tslib tuio +udev +xcb" +REQUIRED_USE=" + || ( eglfs xcb ) + accessibility? ( dbus xcb ) + eglfs? ( egl ) + ibus? ( dbus ) + libinput? ( udev ) + xcb? ( gles2? ( egl ) ) +" + +RDEPEND=" + dev-libs/glib:2 + ~dev-qt/qtcore-${PV} + media-libs/fontconfig + >=media-libs/freetype-2.6.1:2 + >=media-libs/harfbuzz-1.0.6:= + >=sys-libs/zlib-1.2.5 + virtual/opengl + dbus? ( ~dev-qt/qtdbus-${PV} ) + egl? ( media-libs/mesa[egl] ) + eglfs? ( + media-libs/mesa[gbm] + x11-libs/libdrm + ) + evdev? ( sys-libs/mtdev ) + gtk? ( + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/pango + !!x11-libs/cairo[qt4] + ) + gles2? ( media-libs/mesa[gles2] ) + jpeg? ( virtual/jpeg:0 ) + libinput? ( + dev-libs/libinput:= + x11-libs/libxkbcommon + ) + png? ( media-libs/libpng:0= ) + tslib? ( x11-libs/tslib ) + tuio? ( ~dev-qt/qtnetwork-${PV} ) + udev? ( virtual/libudev:= ) + xcb? ( + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + >=x11-libs/libXi-1.7.4 + x11-libs/libXrender + >=x11-libs/libxcb-1.10:=[xkb] + >=x11-libs/libxkbcommon-0.4.1[X] + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-renderutil + x11-libs/xcb-util-wm + ) +" +DEPEND="${RDEPEND} + evdev? ( sys-kernel/linux-headers ) + udev? ( sys-kernel/linux-headers ) +" +PDEPEND=" + ibus? ( app-i18n/ibus ) +" + +PATCHES=( + "${FILESDIR}/${P}-qclipboard.patch" # QTBUG-56972, KDE bug #348390 + "${FILESDIR}/${P}-x32.patch" # bug 623882 +) + +QT5_TARGET_SUBDIRS=( + src/gui + src/openglextensions + src/platformheaders + src/platformsupport + src/plugins/generic + src/plugins/imageformats + src/plugins/platforms + src/plugins/platforminputcontexts + src/plugins/platformthemes +) + +QT5_GENTOO_CONFIG=( + accessibility:accessibility-atspi-bridge + egl + eglfs + eglfs:eglfs_egldevice: + eglfs:eglfs_gbm: + evdev + evdev:mtdev: + :fontconfig + :system-freetype:FREETYPE + !:no-freetype: + !gif:no-gif: + gles2::OPENGL_ES + gles2:opengles2:OPENGL_ES_2 + gtk:gtk3: + !:no-gui: + :system-harfbuzz:HARFBUZZ + !:no-harfbuzz: + jpeg:system-jpeg:IMAGEFORMAT_JPEG + !jpeg:no-jpeg: + libinput + libinput:xkbcommon-evdev: + :opengl + png:png: + png:system-png:IMAGEFORMAT_PNG + !png:no-png: + tslib + udev:libudev: + xcb:xcb: + xcb:xcb-glx: + xcb:xcb-plugin: + xcb:xcb-render: + xcb:xcb-sm: + xcb:xcb-xlib: + xcb:xinput2: + xcb::XKB + xcb:xrender +) + +src_prepare() { + # egl_x11 is activated when both egl and xcb are enabled + use egl && QT5_GENTOO_CONFIG+=(xcb:egl_x11) || QT5_GENTOO_CONFIG+=(egl:egl_x11) + + # avoid automagic dep on qtdbus + use dbus || sed -i -e 's/contains(QT_CONFIG, dbus)/false/' \ + src/platformsupport/platformsupport.pro || die + + qt_use_disable_mod ibus dbus \ + src/plugins/platforminputcontexts/platforminputcontexts.pro + + # avoid automagic dep on qtnetwork + use tuio || sed -i -e '/SUBDIRS += tuiotouch/d' \ + src/plugins/generic/generic.pro || die + + qt5-build_src_prepare +} + +src_configure() { + local myconf=( + $(usex dbus -dbus-linked '') + $(qt_use egl) + $(qt_use eglfs) + $(usex eglfs '-gbm -kms' '') + $(qt_use evdev) + $(qt_use evdev mtdev) + -fontconfig + -system-freetype + $(usex gif '' -no-gif) + $(qt_use gtk) + -system-harfbuzz + $(qt_use jpeg libjpeg system) + $(qt_use libinput) + $(qt_use libinput xkbcommon-evdev) + -opengl $(usex gles2 es2 desktop) + $(qt_use png libpng system) + $(qt_use tslib) + $(qt_use udev libudev) + $(qt_use xcb xcb system) + $(qt_use xcb xkbcommon-x11 system) + $(usex xcb '-xcb-xlib -xinput2 -xkb -xrender' '') + ) + qt5-build_src_configure +} diff --git a/dev-qt/qtgui/qtgui-5.9.2.ebuild b/dev-qt/qtgui/qtgui-5.9.2.ebuild new file mode 100644 index 000000000000..53aa133b33be --- /dev/null +++ b/dev-qt/qtgui/qtgui-5.9.2.ebuild @@ -0,0 +1,164 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +QT5_MODULE="qtbase" +inherit qt5-build + +DESCRIPTION="The GUI module and platform plugins for the Qt5 framework" + +if [[ ${QT5_BUILD_TYPE} == release ]]; then + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86" +fi + +# TODO: linuxfb + +IUSE="accessibility dbus egl eglfs evdev +gif gles2 ibus + jpeg libinput +png tslib tuio +udev vnc +xcb" +REQUIRED_USE=" + || ( eglfs xcb ) + accessibility? ( dbus xcb ) + eglfs? ( egl ) + ibus? ( dbus ) + libinput? ( udev ) + xcb? ( gles2? ( egl ) ) +" + +RDEPEND=" + dev-libs/glib:2 + ~dev-qt/qtcore-${PV} + media-libs/fontconfig + >=media-libs/freetype-2.6.1:2 + >=media-libs/harfbuzz-1.0.6:= + >=sys-libs/zlib-1.2.5 + virtual/opengl + dbus? ( ~dev-qt/qtdbus-${PV} ) + egl? ( media-libs/mesa[egl] ) + eglfs? ( + media-libs/mesa[gbm] + x11-libs/libdrm + ) + evdev? ( sys-libs/mtdev ) + gles2? ( media-libs/mesa[gles2] ) + jpeg? ( virtual/jpeg:0 ) + libinput? ( + dev-libs/libinput:= + x11-libs/libxkbcommon + ) + png? ( media-libs/libpng:0= ) + tslib? ( x11-libs/tslib ) + tuio? ( ~dev-qt/qtnetwork-${PV} ) + udev? ( virtual/libudev:= ) + vnc? ( ~dev-qt/qtnetwork-${PV} ) + xcb? ( + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + >=x11-libs/libXi-1.7.4 + >=x11-libs/libxcb-1.10:=[xkb] + >=x11-libs/libxkbcommon-0.4.1[X] + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-renderutil + x11-libs/xcb-util-wm + ) +" +DEPEND="${RDEPEND} + evdev? ( sys-kernel/linux-headers ) + udev? ( sys-kernel/linux-headers ) +" +PDEPEND=" + ibus? ( app-i18n/ibus ) +" + +QT5_TARGET_SUBDIRS=( + src/gui + src/openglextensions + src/platformheaders + src/platformsupport + src/plugins/generic + src/plugins/imageformats + src/plugins/platforms + src/plugins/platforminputcontexts +) + +QT5_GENTOO_CONFIG=( + accessibility:accessibility-atspi-bridge + egl + eglfs + eglfs:eglfs_egldevice: + eglfs:eglfs_gbm: + evdev + evdev:mtdev: + :fontconfig + :system-freetype:FREETYPE + !:no-freetype: + !gif:no-gif: + gles2::OPENGL_ES + gles2:opengles2:OPENGL_ES_2 + !:no-gui: + :system-harfbuzz:HARFBUZZ + !:no-harfbuzz: + jpeg:system-jpeg:IMAGEFORMAT_JPEG + !jpeg:no-jpeg: + libinput + libinput:xkbcommon-evdev: + :opengl + png:png: + png:system-png:IMAGEFORMAT_PNG + !png:no-png: + tslib + udev:libudev: + xcb:xcb: + xcb:xcb-glx: + xcb:xcb-plugin: + xcb:xcb-render: + xcb:xcb-sm: + xcb:xcb-xlib: + xcb:xinput2: + xcb::XKB +) + +src_prepare() { + # egl_x11 is activated when both egl and xcb are enabled + use egl && QT5_GENTOO_CONFIG+=(xcb:egl_x11) || QT5_GENTOO_CONFIG+=(egl:egl_x11) + + qt_use_disable_config dbus dbus \ + src/platformsupport/themes/genericunix/genericunix.pri + + qt_use_disable_config tuio udpsocket src/plugins/generic/generic.pro + + qt_use_disable_mod ibus dbus \ + src/plugins/platforminputcontexts/platforminputcontexts.pro + + use vnc || sed -i -e '/SUBDIRS += vnc/d' \ + src/plugins/platforms/platforms.pro || die + + qt5-build_src_prepare +} + +src_configure() { + local myconf=( + $(usex dbus -dbus-linked '') + $(qt_use egl) + $(qt_use eglfs) + $(usex eglfs '-gbm -kms' '') + $(qt_use evdev) + $(qt_use evdev mtdev) + -fontconfig + -system-freetype + $(usex gif '' -no-gif) + -system-harfbuzz + $(qt_use jpeg libjpeg system) + $(qt_use libinput) + $(qt_use libinput xkbcommon-evdev) + -opengl $(usex gles2 es2 desktop) + $(qt_use png libpng system) + $(qt_use tslib) + $(qt_use udev libudev) + $(qt_use xcb xcb system) + $(qt_use xcb xkbcommon-x11 system) + $(usex xcb '-xcb-xlib -xinput2 -xkb' '') + ) + qt5-build_src_configure +} -- cgit v1.2.3