From 7aab7ed9efda2f2fb27f73aa796a31ac469f96b9 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Sun, 15 Sep 2019 12:00:02 -0500 Subject: [PATCH 1/9] qt512: 5.12.3 -> 5.12.4 --- pkgs/development/libraries/qt-5/5.12/fetch.sh | 2 +- pkgs/development/libraries/qt-5/5.12/srcs.nix | 320 +++++++++--------- 2 files changed, 161 insertions(+), 161 deletions(-) diff --git a/pkgs/development/libraries/qt-5/5.12/fetch.sh b/pkgs/development/libraries/qt-5/5.12/fetch.sh index a4d2fc82ff2..86cd509a9f2 100644 --- a/pkgs/development/libraries/qt-5/5.12/fetch.sh +++ b/pkgs/development/libraries/qt-5/5.12/fetch.sh @@ -1 +1 @@ -WGET_ARGS=( http://download.qt.io/official_releases/qt/5.12/5.12.3/submodules/ ) +WGET_ARGS=( http://download.qt.io/official_releases/qt/5.12/5.12.4/submodules/ ) diff --git a/pkgs/development/libraries/qt-5/5.12/srcs.nix b/pkgs/development/libraries/qt-5/5.12/srcs.nix index ce567c3a2bc..46bc14a1346 100644 --- a/pkgs/development/libraries/qt-5/5.12/srcs.nix +++ b/pkgs/development/libraries/qt-5/5.12/srcs.nix @@ -3,323 +3,323 @@ { qt3d = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qt3d-everywhere-src-5.12.3.tar.xz"; - sha256 = "8997f07c816bbc6dd43fc2171801178bc65e704d35039998530cfa49837eaa7d"; - name = "qt3d-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qt3d-everywhere-src-5.12.4.tar.xz"; + sha256 = "cfad2e16f40fa07f8be59fa29c0c246743ee67db417ca29772a92f36fa322af3"; + name = "qt3d-everywhere-src-5.12.4.tar.xz"; }; }; qtactiveqt = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtactiveqt-everywhere-src-5.12.3.tar.xz"; - sha256 = "15a5fde0a069f402bea9f422d8d2c46af440d202122c6307c2a6be642d20dc0f"; - name = "qtactiveqt-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtactiveqt-everywhere-src-5.12.4.tar.xz"; + sha256 = "d3c78e6c2a75b9d4f9685d4eea6e84f44f97034a54aed7a159c53cfd4ec4eac7"; + name = "qtactiveqt-everywhere-src-5.12.4.tar.xz"; }; }; qtandroidextras = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtandroidextras-everywhere-src-5.12.3.tar.xz"; - sha256 = "866b3fbcfc2cbebdb83b5adec4e5d0bd29b0e0b0762d66fb3fef0b400e37254f"; - name = "qtandroidextras-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtandroidextras-everywhere-src-5.12.4.tar.xz"; + sha256 = "18e0dbd82920b0ca51b29172fc0ed1f2a923cb7c4fa8fb574595abc16ec3245e"; + name = "qtandroidextras-everywhere-src-5.12.4.tar.xz"; }; }; qtbase = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtbase-everywhere-src-5.12.3.tar.xz"; - sha256 = "fddfd8852ef7503febeed67b876d1425160869ae2b1ae8e10b3fb0fedc5fe701"; - name = "qtbase-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtbase-everywhere-src-5.12.4.tar.xz"; + sha256 = "20fbc7efa54ff7db9552a7a2cdf9047b80253c1933c834f35b0bc5c1ae021195"; + name = "qtbase-everywhere-src-5.12.4.tar.xz"; }; }; qtcanvas3d = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtcanvas3d-everywhere-src-5.12.3.tar.xz"; - sha256 = "c0821f1232c6bcd00648af9a5d1eade8e0397c6bfff60621e0fcdfc75561baea"; - name = "qtcanvas3d-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtcanvas3d-everywhere-src-5.12.4.tar.xz"; + sha256 = "d7e0e8aa542d077a929fb7700411ca9de1f65ae4748d64168d2e7533facd7869"; + name = "qtcanvas3d-everywhere-src-5.12.4.tar.xz"; }; }; qtcharts = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtcharts-everywhere-src-5.12.3.tar.xz"; - sha256 = "820c94b2bf5d73e921fe99be1e3a03a6f012d96574a08e504d68db237522b3a9"; - name = "qtcharts-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtcharts-everywhere-src-5.12.4.tar.xz"; + sha256 = "06ff68a80dc377847429cdd87d4e46465e1d6fbc417d52700a0a59d197669c9e"; + name = "qtcharts-everywhere-src-5.12.4.tar.xz"; }; }; qtconnectivity = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtconnectivity-everywhere-src-5.12.3.tar.xz"; - sha256 = "01518cee71a8d53b9c2387f8c7facbcc2c4d63ab3b79462edfa06ba3bfeae661"; - name = "qtconnectivity-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtconnectivity-everywhere-src-5.12.4.tar.xz"; + sha256 = "749d05242b9fae12e80f569fb6b918dc011cb191eeb05147cbde474ca6b173ef"; + name = "qtconnectivity-everywhere-src-5.12.4.tar.xz"; }; }; qtdatavis3d = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtdatavis3d-everywhere-src-5.12.3.tar.xz"; - sha256 = "f6d073c4575542f8ff6de3ac3b6e8dde6ae2d87e98119de7a13bc984aa967313"; - name = "qtdatavis3d-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtdatavis3d-everywhere-src-5.12.4.tar.xz"; + sha256 = "1c160eeb430c8602aaee8ae4faa55bc62f880dae642be5fd1ac019f7886eb15a"; + name = "qtdatavis3d-everywhere-src-5.12.4.tar.xz"; }; }; qtdeclarative = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtdeclarative-everywhere-src-5.12.3.tar.xz"; - sha256 = "839881cd6996e35c351bc7d560372ebb91e61f3688957c33248c4f31ea007fa7"; - name = "qtdeclarative-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtdeclarative-everywhere-src-5.12.4.tar.xz"; + sha256 = "614105ed73079d67d81b34fef31c9934c5e751342e4b2e0297128c8c301acda7"; + name = "qtdeclarative-everywhere-src-5.12.4.tar.xz"; }; }; qtdoc = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtdoc-everywhere-src-5.12.3.tar.xz"; - sha256 = "ce5e9d0f48d108c48d742ab2127ead735270d7b525103c6cf409683d7fc8334f"; - name = "qtdoc-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtdoc-everywhere-src-5.12.4.tar.xz"; + sha256 = "93e6cb6abc0dad3a831a6e2c46d950bd7a99b59d60ce2d2b81c2ce893bfb41bb"; + name = "qtdoc-everywhere-src-5.12.4.tar.xz"; }; }; qtgamepad = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtgamepad-everywhere-src-5.12.3.tar.xz"; - sha256 = "5d046869e9646912936e3622efa755d85ccc8eddba91f5b12880cfb5e6489642"; - name = "qtgamepad-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtgamepad-everywhere-src-5.12.4.tar.xz"; + sha256 = "25de6f10fb18f2484d1e569688bf33deb90ecbfb97ce41c2b5fb3521146e4c45"; + name = "qtgamepad-everywhere-src-5.12.4.tar.xz"; }; }; qtgraphicaleffects = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtgraphicaleffects-everywhere-src-5.12.3.tar.xz"; - sha256 = "772c98a009cc82ac290f868906c5aa719e4608ef3c5905d69ef7402b15924a73"; - name = "qtgraphicaleffects-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtgraphicaleffects-everywhere-src-5.12.4.tar.xz"; + sha256 = "0bc38b168fa724411984525173d667aa47076c8cbd4eeb791d0da7fe4b9bdf73"; + name = "qtgraphicaleffects-everywhere-src-5.12.4.tar.xz"; }; }; qtimageformats = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtimageformats-everywhere-src-5.12.3.tar.xz"; - sha256 = "db5a9e784f9c327c1e6830b1550311024cc91202d3b8dde82cd0944164298be2"; - name = "qtimageformats-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtimageformats-everywhere-src-5.12.4.tar.xz"; + sha256 = "2dee25c3eea90d172cbd40f41450153322b902da1daa7d2370a55124b2307bb3"; + name = "qtimageformats-everywhere-src-5.12.4.tar.xz"; }; }; qtlocation = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtlocation-everywhere-src-5.12.3.tar.xz"; - sha256 = "52d589be2852ada0c000b06cc411b61e521cd0797470be567fd1625bcc9d75c6"; - name = "qtlocation-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtlocation-everywhere-src-5.12.4.tar.xz"; + sha256 = "127b40bd7679fead3fb98f4c9c1d71dde9d6d416e90a6000129b61a5f128b3a0"; + name = "qtlocation-everywhere-src-5.12.4.tar.xz"; }; }; qtmacextras = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtmacextras-everywhere-src-5.12.3.tar.xz"; - sha256 = "38dedd29d07ea9e4e92a7ef28f9e03c06cf9a1525aee4f8084310c519f5b47ed"; - name = "qtmacextras-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtmacextras-everywhere-src-5.12.4.tar.xz"; + sha256 = "3ea0b94f9b63e801f2ddafa2a908002d9529a3c65021d261627d21e07454acde"; + name = "qtmacextras-everywhere-src-5.12.4.tar.xz"; }; }; qtmultimedia = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtmultimedia-everywhere-src-5.12.3.tar.xz"; - sha256 = "a30beeb37fb284d93522e29c01fb8d12726f40e9248e80b70b1f8ab60197a301"; - name = "qtmultimedia-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtmultimedia-everywhere-src-5.12.4.tar.xz"; + sha256 = "7c0759ab6fca2480b10b71a35beeffe0b847adeff5af94eacd1a4531d033423d"; + name = "qtmultimedia-everywhere-src-5.12.4.tar.xz"; }; }; qtnetworkauth = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtnetworkauth-everywhere-src-5.12.3.tar.xz"; - sha256 = "dd6bf334be29fb82adaeecb184779328b4ad33a069528b9954d9c07f2d889332"; - name = "qtnetworkauth-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtnetworkauth-everywhere-src-5.12.4.tar.xz"; + sha256 = "e501eb46b8405a2b7db9fe90a1c224cf6676a07dc22c0662317ffe3dee1dbf55"; + name = "qtnetworkauth-everywhere-src-5.12.4.tar.xz"; }; }; qtpurchasing = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtpurchasing-everywhere-src-5.12.3.tar.xz"; - sha256 = "a848f1e1022af38571f5ab0c4ec4b904c12fa6ef19154d44abbcaeb35156753e"; - name = "qtpurchasing-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtpurchasing-everywhere-src-5.12.4.tar.xz"; + sha256 = "7804a111043d0e8d6d81a0d0ae465ce2c36eca73f2774ccb5fa7be8670211672"; + name = "qtpurchasing-everywhere-src-5.12.4.tar.xz"; }; }; qtquickcontrols = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtquickcontrols-everywhere-src-5.12.3.tar.xz"; - sha256 = "68ae03b35eaa44a24c3f663b842252053c9f2b00b18841fd39ff7d2150986f46"; - name = "qtquickcontrols-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtquickcontrols-everywhere-src-5.12.4.tar.xz"; + sha256 = "32d4c2505337c67b0bac26d7f565ec8fabdc616e61247e98674820769dda9858"; + name = "qtquickcontrols-everywhere-src-5.12.4.tar.xz"; }; }; qtquickcontrols2 = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtquickcontrols2-everywhere-src-5.12.3.tar.xz"; - sha256 = "e855e8369c3cb5a2ebcd2028a2a195ba73945fd9d5bc26134706c2fa14e99b3a"; - name = "qtquickcontrols2-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtquickcontrols2-everywhere-src-5.12.4.tar.xz"; + sha256 = "9a447eed38bc8c7d7be7bc407317f58940377c077ddca74c9a641b1ee6200331"; + name = "qtquickcontrols2-everywhere-src-5.12.4.tar.xz"; }; }; qtremoteobjects = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtremoteobjects-everywhere-src-5.12.3.tar.xz"; - sha256 = "3475a409127739930e0bf833cea5f7f605adc66ab25fac39b72ce4bf3039cc42"; - name = "qtremoteobjects-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtremoteobjects-everywhere-src-5.12.4.tar.xz"; + sha256 = "54dd0c782abff90bf0608771c2e90b36073d9bd8d6c61706a2873bb7c317f413"; + name = "qtremoteobjects-everywhere-src-5.12.4.tar.xz"; }; }; qtscript = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtscript-everywhere-src-5.12.3.tar.xz"; - sha256 = "0f37bf032a2370bd08667aad053f5a57717ea49596c16bf6cfb32b0d6e5c1f9e"; - name = "qtscript-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtscript-everywhere-src-5.12.4.tar.xz"; + sha256 = "7adb3fe77638c7a6f2a26bca850b0ff54f5fb7e5561d2e4141d14a84305c2b6a"; + name = "qtscript-everywhere-src-5.12.4.tar.xz"; }; }; qtscxml = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtscxml-everywhere-src-5.12.3.tar.xz"; - sha256 = "70c4b1f8e23560cf54e69aeb3ded4078434e6f78e1b9573fbad1ddace5fc4b19"; - name = "qtscxml-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtscxml-everywhere-src-5.12.4.tar.xz"; + sha256 = "696fb72a62018151275fe589fc80cb160d2becab9a3254321d40e2e11a0ad4f8"; + name = "qtscxml-everywhere-src-5.12.4.tar.xz"; }; }; qtsensors = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtsensors-everywhere-src-5.12.3.tar.xz"; - sha256 = "7f63fedf60fdf110a3fc529568c7226d7acd59cc5eaee908f4d5a969e34005fc"; - name = "qtsensors-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtsensors-everywhere-src-5.12.4.tar.xz"; + sha256 = "95873c7ea5960008d6eb41368ca64d68fbd05594ca8c2cd848b1612fc4aec0a9"; + name = "qtsensors-everywhere-src-5.12.4.tar.xz"; }; }; qtserialbus = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtserialbus-everywhere-src-5.12.3.tar.xz"; - sha256 = "792cd2d411d2ebd737f5d09580f8db479cd35f2f7e7cedb4412075ef20fcfe4d"; - name = "qtserialbus-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtserialbus-everywhere-src-5.12.4.tar.xz"; + sha256 = "69d56905f43ee13e670750e8f46d373835fae81d6343baa7c4004d2a2c6311fc"; + name = "qtserialbus-everywhere-src-5.12.4.tar.xz"; }; }; qtserialport = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtserialport-everywhere-src-5.12.3.tar.xz"; - sha256 = "1faf7df4a1f9028bef1ce79330badb4e5cbbba9f717c53cafc5aea41eed1de51"; - name = "qtserialport-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtserialport-everywhere-src-5.12.4.tar.xz"; + sha256 = "bf487df8a9fb2eddf103842b57a75b17ef4c498ee40306ae9997017c82b0ad39"; + name = "qtserialport-everywhere-src-5.12.4.tar.xz"; }; }; qtspeech = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtspeech-everywhere-src-5.12.3.tar.xz"; - sha256 = "ed211822765744553fb5abeb97058420668b18a50d985061d949a0e068ee64f5"; - name = "qtspeech-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtspeech-everywhere-src-5.12.4.tar.xz"; + sha256 = "2ff9660fb3f5663c9161f491d1a304db62691720136ae22c145ef6a1c94b90ec"; + name = "qtspeech-everywhere-src-5.12.4.tar.xz"; }; }; qtsvg = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtsvg-everywhere-src-5.12.3.tar.xz"; - sha256 = "f666438dbf6816b7534e539b95e3fa4405f11d7e2e2bbcde34f2db5ae0f27dc2"; - name = "qtsvg-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtsvg-everywhere-src-5.12.4.tar.xz"; + sha256 = "110812515a73c650e5ebc41305d9a243dadeb21f485aaed773e394dd84ce0d04"; + name = "qtsvg-everywhere-src-5.12.4.tar.xz"; }; }; qttools = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qttools-everywhere-src-5.12.3.tar.xz"; - sha256 = "c9e92d2f0d369e44bb1a60e9fa6d970f8d9893d653212305e04be5e6daec2cd8"; - name = "qttools-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qttools-everywhere-src-5.12.4.tar.xz"; + sha256 = "3b0e353860a9c0cd4db9eeae5f94fef8811ed7d107e3e5e97e4a557f61bd6eb6"; + name = "qttools-everywhere-src-5.12.4.tar.xz"; }; }; qttranslations = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qttranslations-everywhere-src-5.12.3.tar.xz"; - sha256 = "eefcec0a91c302548f9d948a138b8ec77d78570ce818931bd8475b1bff1205ca"; - name = "qttranslations-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qttranslations-everywhere-src-5.12.4.tar.xz"; + sha256 = "ab8dd55f5ca869cab51c3a6ce0888f854b96dc03c7f25d2bd3d2c50314ab60fb"; + name = "qttranslations-everywhere-src-5.12.4.tar.xz"; }; }; qtvirtualkeyboard = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtvirtualkeyboard-everywhere-src-5.12.3.tar.xz"; - sha256 = "7b83af4527310de4ab81146622f3a46677daabf05556d0e33a2e25ca2aa13b22"; - name = "qtvirtualkeyboard-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtvirtualkeyboard-everywhere-src-5.12.4.tar.xz"; + sha256 = "33ac0356f916995fe5a91582e12b4c4f730c705808ea3c14e75c6e350e8131e6"; + name = "qtvirtualkeyboard-everywhere-src-5.12.4.tar.xz"; }; }; qtwayland = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwayland-everywhere-src-5.12.3.tar.xz"; - sha256 = "f0b45ad84180730e2d5a1249eb20c6357869b4b78f45eb266c2f2b17f77d86ff"; - name = "qtwayland-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwayland-everywhere-src-5.12.4.tar.xz"; + sha256 = "2fade959c3927687134c597d85c12ba1af22129a60ab326c2dc77a648e74e6b7"; + name = "qtwayland-everywhere-src-5.12.4.tar.xz"; }; }; qtwebchannel = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebchannel-everywhere-src-5.12.3.tar.xz"; - sha256 = "72d1620bcc94e14caa91ddf344c84cd1288aa9479e00b1bb3b5e51f92efe088a"; - name = "qtwebchannel-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebchannel-everywhere-src-5.12.4.tar.xz"; + sha256 = "ab571a1b699e61a86be1a6b8d6ffd998d431c4850cc27e9a21f81fa5923bfdb7"; + name = "qtwebchannel-everywhere-src-5.12.4.tar.xz"; }; }; qtwebengine = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebengine-everywhere-src-5.12.3.tar.xz"; - sha256 = "3ff3bac12d75aa0f3fd993bb7077fe411f7b0e6a3993af6f8b039d48e3dc4317"; - name = "qtwebengine-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebengine-everywhere-src-5.12.4.tar.xz"; + sha256 = "fccf5c945412c19c3805323211b504ac8becbf191c638a2dc85ec91abfb1b331"; + name = "qtwebengine-everywhere-src-5.12.4.tar.xz"; }; }; qtwebglplugin = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebglplugin-everywhere-src-5.12.3.tar.xz"; - sha256 = "23da63013101e97c4e663bb4f6dbb1c7b4386679c634680d3b8d79bcc59d26b3"; - name = "qtwebglplugin-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebglplugin-everywhere-src-5.12.4.tar.xz"; + sha256 = "756fa09893618029bb56605be3ac5756a1834255fb223f8e4b7de205846d3266"; + name = "qtwebglplugin-everywhere-src-5.12.4.tar.xz"; }; }; qtwebsockets = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebsockets-everywhere-src-5.12.3.tar.xz"; - sha256 = "258883225c5e089015c4036f31019aa8f5bb013ecd8eecd193342e606319a577"; - name = "qtwebsockets-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebsockets-everywhere-src-5.12.4.tar.xz"; + sha256 = "b471eda2f486d21c51fc3bc53bb8844022117e746d5f15c5eabb82cd37eb2abe"; + name = "qtwebsockets-everywhere-src-5.12.4.tar.xz"; }; }; qtwebview = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebview-everywhere-src-5.12.3.tar.xz"; - sha256 = "f904e7fd7e755527e5bc4633c6f7c144065a3ffea473bf01fffb730385a983c5"; - name = "qtwebview-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebview-everywhere-src-5.12.4.tar.xz"; + sha256 = "1f244c6b774dd9d03d3c5cafe877381900b50a2775cef6487c8bb66e32ab5a5d"; + name = "qtwebview-everywhere-src-5.12.4.tar.xz"; }; }; qtwinextras = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwinextras-everywhere-src-5.12.3.tar.xz"; - sha256 = "2b6319f7dd19fc19b028685c163a69f0a10e610d7554411d4660c1b5e42ada3b"; - name = "qtwinextras-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwinextras-everywhere-src-5.12.4.tar.xz"; + sha256 = "f6e0172582a499d5e50c51877552d1a3bff66546d9a02e5754100a51b192973f"; + name = "qtwinextras-everywhere-src-5.12.4.tar.xz"; }; }; qtx11extras = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtx11extras-everywhere-src-5.12.3.tar.xz"; - sha256 = "85e3ae5177970c2d8656226d7535d0dff5764c100e55a79a59161d80754ba613"; - name = "qtx11extras-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtx11extras-everywhere-src-5.12.4.tar.xz"; + sha256 = "49cc009eaf4a01ca7dbe12651ef39de9a43860acb674aec372e70b209f9bae1e"; + name = "qtx11extras-everywhere-src-5.12.4.tar.xz"; }; }; qtxmlpatterns = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtxmlpatterns-everywhere-src-5.12.3.tar.xz"; - sha256 = "e0b98e7c92cd791a9b354d090788347db78f14c47579384fe22d0b650c1d8a61"; - name = "qtxmlpatterns-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtxmlpatterns-everywhere-src-5.12.4.tar.xz"; + sha256 = "0bea1719bb948f65cbed4375cc3e997a6464f35d25b631bafbd7a3161f8f5666"; + name = "qtxmlpatterns-everywhere-src-5.12.4.tar.xz"; }; }; } From ec9e7e4a0c9d9fb1cad6f7875ed2f29854213764 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Sun, 15 Sep 2019 12:00:18 -0500 Subject: [PATCH 2/9] qt512.qtbase: Refresh patches --- .../libraries/qt-5/5.12/default.nix | 24 +- .../qt-5/5.12/qtbase-fixguicmake.patch | 30 - .../qt-5/5.12/qtbase-trayicons.patch | 175 --- .../libraries/qt-5/5.12/qtbase.patch | 1146 ----------------- .../0001-qtbase-mkspecs-mac.patch | 397 ++++++ .../5.12/qtbase.patch.d/0002-qtbase-mac.patch | 60 + .../qtbase.patch.d/0003-qtbase-mkspecs.patch | 508 ++++++++ .../qtbase.patch.d/0004-qtbase-cmake.patch | 194 +++ .../qtbase.patch.d/0005-qtbase-gtk3.patch | 48 + .../qtbase.patch.d/0006-qtbase-xcursor.patch | 29 + .../qtbase.patch.d/0007-qtbase-xcompose.patch | 30 + .../qtbase.patch.d/0008-qtbase-tzdir.patch | 51 + .../0009-qtbase-qtpluginpath.patch | 32 + .../qtbase.patch.d/0010-qtbase-assert.patch | 32 + .../qtwayland-fix-webengine-freezeups-1.patch | 139 -- .../qtwayland-fix-webengine-freezeups-2.patch | 493 ------- 16 files changed, 1396 insertions(+), 1992 deletions(-) delete mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase-fixguicmake.patch delete mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase-trayicons.patch delete mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-cmake.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-gtk3.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-xcursor.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcompose.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-tzdir.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-qtpluginpath.patch create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-assert.patch delete mode 100644 pkgs/development/libraries/qt-5/5.12/qtwayland-fix-webengine-freezeups-1.patch delete mode 100644 pkgs/development/libraries/qt-5/5.12/qtwayland-fix-webengine-freezeups-2.patch diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix index a2062af65f0..e7cb7c37121 100644 --- a/pkgs/development/libraries/qt-5/5.12/default.nix +++ b/pkgs/development/libraries/qt-5/5.12/default.nix @@ -50,11 +50,21 @@ let }; patches = { - qtbase = [ - ./qtbase.patch - ./qtbase-fixguicmake.patch - ./qtbase-trayicons.patch # can be removed with 5.12.4 or 5.13 - ]; + qtbase = + optionals stdenv.isDarwin [ + ./qtbase.patch.d/0001-qtbase-mkspecs-mac.patch + ./qtbase.patch.d/0002-qtbase-mac.patch + ] + ++ [ + ./qtbase.patch.d/0003-qtbase-mkspecs.patch + ./qtbase.patch.d/0004-qtbase-cmake.patch + ./qtbase.patch.d/0005-qtbase-gtk3.patch + ./qtbase.patch.d/0006-qtbase-xcursor.patch + ./qtbase.patch.d/0007-qtbase-xcompose.patch + ./qtbase.patch.d/0008-qtbase-tzdir.patch + ./qtbase.patch.d/0009-qtbase-qtpluginpath.patch + ./qtbase.patch.d/0010-qtbase-assert.patch + ]; qtdeclarative = [ ./qtdeclarative.patch ]; qtscript = [ ./qtscript.patch ]; qtserialport = [ ./qtserialport.patch ]; @@ -68,10 +78,6 @@ let ./qtwebkit-darwin-no-qos-classes.patch ]; qttools = [ ./qttools.patch ]; - qtwayland = [ - ./qtwayland-fix-webengine-freezeups-1.patch # can be removed with 5.12.4 or 5.13 - ./qtwayland-fix-webengine-freezeups-2.patch # can be removed with 5.12.4 or 5.13 - ]; }; qtModule = diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase-fixguicmake.patch b/pkgs/development/libraries/qt-5/5.12/qtbase-fixguicmake.patch deleted file mode 100644 index 8b46d432812..00000000000 --- a/pkgs/development/libraries/qt-5/5.12/qtbase-fixguicmake.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in -index 0bbc871..3673634 100644 ---- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in -+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in -@@ -286,7 +286,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) - macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) - set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) - -- set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") -+ set(imported_location \"${PLUGIN_LOCATION}\") - _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) - set_target_properties(Qt5::${Plugin} PROPERTIES - \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} -diff --git a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in -index 5baf0fd..3583745 100644 ---- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in -+++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in -@@ -2,10 +2,10 @@ - add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED) - - !!IF !isEmpty(CMAKE_RELEASE_TYPE) --_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\") -+_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_RELEASE}\") - !!ENDIF - !!IF !isEmpty(CMAKE_DEBUG_TYPE) --_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\") -+_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_DEBUG}\") - !!ENDIF - - list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME) diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase-trayicons.patch b/pkgs/development/libraries/qt-5/5.12/qtbase-trayicons.patch deleted file mode 100644 index 0376c1c96c2..00000000000 --- a/pkgs/development/libraries/qt-5/5.12/qtbase-trayicons.patch +++ /dev/null @@ -1,175 +0,0 @@ -From 4d5e59c54a805ba4e7311fe58c9adc492ca1b35a Mon Sep 17 00:00:00 2001 -From: Alexander Volkov -Date: Mon, 4 Feb 2019 18:42:35 +0300 -Subject: [PATCH] QSystemTrayIcon/X11: Create tray icon window when system tray - appears - -... and destroy it otherwise. - -Fixes: QTBUG-61898 -Fixes: QTBUG-73459 -Done-with: Gatis Paeglis -Change-Id: I6bd8f397f7ccdb123f6a60d4fa466f7b0d760dfc ---- - src/widgets/util/qsystemtrayicon_p.h | 4 ++ - src/widgets/util/qsystemtrayicon_x11.cpp | 75 ++++++++++++++++++++++---------- - 2 files changed, 57 insertions(+), 22 deletions(-) - -diff --git a/src/widgets/util/qsystemtrayicon_p.h b/src/widgets/util/qsystemtrayicon_p.h -index 5bdf020a472..e31532ea193 100644 ---- a/src/widgets/util/qsystemtrayicon_p.h -+++ b/src/widgets/util/qsystemtrayicon_p.h -@@ -69,6 +69,7 @@ - QT_BEGIN_NAMESPACE - - class QSystemTrayIconSys; -+class QSystemTrayWatcher; - class QPlatformSystemTrayIcon; - class QToolButton; - class QLabel; -@@ -90,6 +91,8 @@ public: - void showMessage_sys(const QString &title, const QString &msg, const QIcon &icon, - QSystemTrayIcon::MessageIcon msgIcon, int msecs); - -+ void destroyIcon(); -+ - static bool isSystemTrayAvailable_sys(); - static bool supportsMessages_sys(); - -@@ -101,6 +104,7 @@ public: - QSystemTrayIconSys *sys; - QPlatformSystemTrayIcon *qpa_sys; - bool visible; -+ QSystemTrayWatcher *trayWatcher; - - private: - void install_sys_qpa(); -diff --git a/src/widgets/util/qsystemtrayicon_x11.cpp b/src/widgets/util/qsystemtrayicon_x11.cpp -index 86532456c76..70e5f3678ea 100644 ---- a/src/widgets/util/qsystemtrayicon_x11.cpp -+++ b/src/widgets/util/qsystemtrayicon_x11.cpp -@@ -92,9 +92,6 @@ protected: - virtual void resizeEvent(QResizeEvent *) override; - virtual void moveEvent(QMoveEvent *) override; - --private slots: -- void systemTrayWindowChanged(QScreen *screen); -- - private: - QSystemTrayIcon *q; - }; -@@ -116,15 +113,6 @@ QSystemTrayIconSys::QSystemTrayIconSys(QSystemTrayIcon *qIn) - setMouseTracking(true); - } - --void QSystemTrayIconSys::systemTrayWindowChanged(QScreen *) --{ -- if (!locateSystemTray()) { -- QBalloonTip::hideBalloon(); -- hide(); // still no luck -- destroy(); -- } --} -- - QRect QSystemTrayIconSys::globalGeometry() const - { - return QRect(mapToGlobal(QPoint(0, 0)), size()); -@@ -199,10 +187,41 @@ void QSystemTrayIconSys::resizeEvent(QResizeEvent *event) - } - //////////////////////////////////////////////////////////////////////////// - -+class QSystemTrayWatcher: public QObject -+{ -+ Q_OBJECT -+public: -+ QSystemTrayWatcher(QSystemTrayIcon *trayIcon) -+ : QObject(trayIcon) -+ , mTrayIcon(trayIcon) -+ { -+ // This code uses string-based syntax because we want to connect to a signal -+ // which is defined in XCB plugin - QXcbNativeInterface::systemTrayWindowChanged(). -+ connect(qGuiApp->platformNativeInterface(), SIGNAL(systemTrayWindowChanged(QScreen*)), -+ this, SLOT(systemTrayWindowChanged(QScreen*))); -+ } -+ -+private slots: -+ void systemTrayWindowChanged(QScreen *) -+ { -+ auto icon = static_cast(QObjectPrivate::get(mTrayIcon)); -+ icon->destroyIcon(); -+ if (icon->visible && locateSystemTray()) { -+ icon->sys = new QSystemTrayIconSys(mTrayIcon); -+ icon->sys->show(); -+ } -+ } -+ -+private: -+ QSystemTrayIcon *mTrayIcon = nullptr; -+}; -+//////////////////////////////////////////////////////////////////////////// -+ - QSystemTrayIconPrivate::QSystemTrayIconPrivate() - : sys(0), - qpa_sys(QGuiApplicationPrivate::platformTheme()->createPlatformSystemTrayIcon()), -- visible(false) -+ visible(false), -+ trayWatcher(nullptr) - { - } - -@@ -213,16 +232,21 @@ QSystemTrayIconPrivate::~QSystemTrayIconPrivate() - - void QSystemTrayIconPrivate::install_sys() - { -+ Q_Q(QSystemTrayIcon); -+ - if (qpa_sys) { - install_sys_qpa(); - return; - } -- Q_Q(QSystemTrayIcon); -- if (!sys && locateSystemTray()) { -- sys = new QSystemTrayIconSys(q); -- QObject::connect(QGuiApplication::platformNativeInterface(), SIGNAL(systemTrayWindowChanged(QScreen*)), -- sys, SLOT(systemTrayWindowChanged(QScreen*))); -- sys->show(); -+ -+ if (!sys) { -+ if (!trayWatcher) -+ trayWatcher = new QSystemTrayWatcher(q); -+ -+ if (locateSystemTray()) { -+ sys = new QSystemTrayIconSys(q); -+ sys->show(); -+ } - } - } - -@@ -241,14 +265,21 @@ void QSystemTrayIconPrivate::remove_sys() - remove_sys_qpa(); - return; - } -+ -+ destroyIcon(); -+} -+ -+void QSystemTrayIconPrivate::destroyIcon() -+{ - if (!sys) - return; - QBalloonTip::hideBalloon(); -- sys->hide(); // this should do the trick, but... -- delete sys; // wm may resize system tray only for DestroyEvents -- sys = 0; -+ sys->hide(); -+ delete sys; -+ sys = nullptr; - } - -+ - void QSystemTrayIconPrivate::updateIcon_sys() - { - if (qpa_sys) { --- -2.16.3 - diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch deleted file mode 100644 index 87ed0ddc4d4..00000000000 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch +++ /dev/null @@ -1,1146 +0,0 @@ -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/common/mac.conf qtbase-everywhere-src-5.12.3-b/mkspecs/common/mac.conf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/common/mac.conf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/common/mac.conf 2019-07-10 09:35:08.917628566 -0500 -@@ -24,7 +24,7 @@ - - QMAKE_FIX_RPATH = install_name_tool -id - --QMAKE_LFLAGS_RPATH = -Wl,-rpath, -+QMAKE_LFLAGS_RPATH = - QMAKE_LFLAGS_GCSECTIONS = -Wl,-dead_strip - - QMAKE_LFLAGS_REL_RPATH = -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/create_cmake.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/create_cmake.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/create_cmake.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/create_cmake.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -21,7 +21,7 @@ - # at cmake time whether package has been found via a symlink, and correct - # that to an absolute path. This is only done for installations to - # the /usr or / prefix. --CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$[QT_INSTALL_LIBS]) -+CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$NIX_OUTPUT_OUT/lib/) - contains(CMAKE_INSTALL_LIBS_DIR, ^(/usr)?/lib(64)?.*): CMAKE_USR_MOVE_WORKAROUND = $$CMAKE_INSTALL_LIBS_DIR - - CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake -@@ -51,45 +51,20 @@ - $$cmake_extra_source_includes.output - } - --CMAKE_INCLUDE_DIR = $$cmakeRelativePath($$[QT_INSTALL_HEADERS], $$[QT_INSTALL_PREFIX]) --contains(CMAKE_INCLUDE_DIR, "^\\.\\./.*") { -- CMAKE_INCLUDE_DIR = $$[QT_INSTALL_HEADERS]/ -- CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True --} -+CMAKE_INCLUDE_DIR = $$NIX_OUTPUT_DEV/include/ -+CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True - --CMAKE_LIB_DIR = $$cmakeRelativePath($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX]) --contains(CMAKE_LIB_DIR,"^\\.\\./.*") { -- CMAKE_LIB_DIR = $$[QT_INSTALL_LIBS]/ -- CMAKE_LIB_DIR_IS_ABSOLUTE = True --} else { -- CMAKE_RELATIVE_INSTALL_LIBS_DIR = $$cmakeRelativePath($$[QT_INSTALL_PREFIX], $$[QT_INSTALL_LIBS]) -- # We need to go up another two levels because the CMake files are -- # installed in $${CMAKE_LIB_DIR}/cmake/Qt5$${CMAKE_MODULE_NAME} -- CMAKE_RELATIVE_INSTALL_DIR = "$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}../../" --} -+CMAKE_BIN_DIR = $$NIX_OUTPUT_BIN/bin/ -+CMAKE_BIN_DIR_IS_ABSOLUTE = True - --CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX]) --contains(CMAKE_BIN_DIR, "^\\.\\./.*") { -- CMAKE_BIN_DIR = $$[QT_HOST_BINS]/ -- CMAKE_BIN_DIR_IS_ABSOLUTE = True --} -+CMAKE_LIB_DIR = $$NIX_OUTPUT_OUT/lib/ -+CMAKE_LIB_DIR_IS_ABSOLUTE = True - --CMAKE_PLUGIN_DIR = $$cmakeRelativePath($$[QT_INSTALL_PLUGINS], $$[QT_INSTALL_PREFIX]) --contains(CMAKE_PLUGIN_DIR, "^\\.\\./.*") { -- CMAKE_PLUGIN_DIR = $$[QT_INSTALL_PLUGINS]/ -- CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True --} -- --win32:!static:!staticlib { -- CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX]) -- contains(CMAKE_DLL_DIR, "^\\.\\./.*") { -- CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/ -- CMAKE_DLL_DIR_IS_ABSOLUTE = True -- } --} else { -- CMAKE_DLL_DIR = $$CMAKE_LIB_DIR -- CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE --} -+CMAKE_PLUGIN_DIR = $$NIX_OUTPUT_PLUGIN/ -+CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True -+ -+CMAKE_DLL_DIR = $$NIX_OUTPUT_OUT/lib/ -+CMAKE_DLL_DIR_IS_ABSOLUTE = True - - static|staticlib:CMAKE_STATIC_TYPE = true - -@@ -169,7 +144,7 @@ - cmake_target_file - - cmake_qt5_plugin_file.files = $$cmake_target_file.output -- cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} -+ cmake_qt5_plugin_file.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} - INSTALLS += cmake_qt5_plugin_file - - return() -@@ -318,7 +293,7 @@ - cmake_qt5_module_files.files += $$cmake_macros_file.output - } - --cmake_qt5_module_files.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} -+cmake_qt5_module_files.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} - - # We are generating cmake files. Most developers of Qt are not aware of cmake, - # so we require automatic tests to be available. The only module which should -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in qtbase-everywhere-src-5.12.3-b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in 2019-07-10 09:35:08.917628566 -0500 -@@ -3,30 +3,6 @@ - message(FATAL_ERROR \"Qt 5 $${CMAKE_MODULE_NAME} module requires at least CMake version 3.1.0\") - endif() - --!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND) --!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) --set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") --!!ELSE --get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH) --# Use original install prefix when loaded through a --# cross-prefix symbolic link such as /lib -> /usr/lib. --get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH) --get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH) --if(_realCurr STREQUAL _realOrig) -- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE) --else() -- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) --endif() --unset(_realOrig) --unset(_realCurr) --unset(_IMPORT_PREFIX) --!!ENDIF --!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) --get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) --!!ELSE --set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") --!!ENDIF -- - !!IF !equals(TEMPLATE, aux) - # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead. - set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.VERSION)") -@@ -52,11 +28,7 @@ - macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION) - set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) - --!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") --!!ELSE - set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") --!!ENDIF - _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) - set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES - \"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" -@@ -69,11 +41,7 @@ - ) - - !!IF !isEmpty(CMAKE_WINDOWS_BUILD) --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") --!!ELSE - set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") --!!ENDIF - _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib}) - if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\") - set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES -@@ -89,24 +57,13 @@ - !!IF !no_module_headers - !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) - set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\" -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\" -+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\" -+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\" - ) - !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) - set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" -- ) --!!ELSE -- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") --!!ENDIF --!!ELSE --!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) -- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\") --!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) -- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\" -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\" -+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" -+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" - ) - !!ELSE - set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") -@@ -122,7 +79,6 @@ - set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") - !!ENDIF - !!ENDIF --!!ENDIF - !!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS) - include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL) - !!ENDIF -@@ -272,25 +228,13 @@ - !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) - !!IF isEmpty(CMAKE_DEBUG_TYPE) - !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) --!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE - if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) --!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE - _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" ) - !!ELSE // CMAKE_STATIC_WINDOWS_BUILD - if (EXISTS --!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" --!!ELSE - \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" --!!ENDIF - AND EXISTS --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) --!!ELSE - \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) --!!ENDIF - _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) - !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD - endif() -@@ -309,25 +253,13 @@ - !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) - !!IF isEmpty(CMAKE_RELEASE_TYPE) - !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE - if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE - _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" ) - !!ELSE // CMAKE_STATIC_WINDOWS_BUILD - if (EXISTS --!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" --!!ELSE - \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" --!!ENDIF - AND EXISTS --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ELSE - \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ENDIF - _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) - !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD - endif() -@@ -346,11 +278,7 @@ - macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) - set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) - --!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") --!!ELSE - set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") --!!ENDIF - _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) - set_target_properties(Qt5::${Plugin} PROPERTIES - \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/default_post.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/default_post.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/default_post.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/default_post.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -64,202 +64,6 @@ - } - } - --# Add the same default rpaths as Xcode does for new projects. --# This is especially important for iOS/tvOS/watchOS where no other option is possible. --!no_default_rpath { -- QMAKE_RPATHDIR += @executable_path/../Frameworks -- equals(TEMPLATE, lib):!plugin:lib_bundle: QMAKE_RPATHDIR += @loader_path/Frameworks --} -- --# Don't pass -headerpad_max_install_names when using Bitcode. --# In that case the linker emits a warning stating that the flag is ignored when --# used with bitcode, for reasons that cannot be determined (rdar://problem/20748962). --# Using this flag is also unnecessary in practice on UIKit platforms since they --# are sandboxed, and only UIKit platforms support bitcode to begin with. --!bitcode: QMAKE_LFLAGS += $$QMAKE_LFLAGS_HEADERPAD -- --app_extension_api_only { -- QMAKE_CFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION -- QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION -- QMAKE_CXXFLAGS_PRECOMPILE += $$QMAKE_CFLAGS_APPLICATION_EXTENSION -- QMAKE_LFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION --} -- --macx-xcode { -- qmake_pkginfo_typeinfo.name = QMAKE_PKGINFO_TYPEINFO -- !isEmpty(QMAKE_PKGINFO_TYPEINFO): \ -- qmake_pkginfo_typeinfo.value = $$QMAKE_PKGINFO_TYPEINFO -- else: \ -- qmake_pkginfo_typeinfo.value = "????" -- QMAKE_MAC_XCODE_SETTINGS += qmake_pkginfo_typeinfo -- -- !isEmpty(VERSION) { -- l = $$split(VERSION, '.') 0 0 # make sure there are at least three -- VER_MAJ = $$member(l, 0, 0) -- VER_MIN = $$member(l, 1, 1) -- VER_PAT = $$member(l, 2, 2) -- unset(l) -- -- qmake_full_version.name = QMAKE_FULL_VERSION -- qmake_full_version.value = $${VER_MAJ}.$${VER_MIN}.$${VER_PAT} -- QMAKE_MAC_XCODE_SETTINGS += qmake_full_version -- -- qmake_short_version.name = QMAKE_SHORT_VERSION -- qmake_short_version.value = $${VER_MAJ}.$${VER_MIN} -- QMAKE_MAC_XCODE_SETTINGS += qmake_short_version -- } -- -- !isEmpty(QMAKE_XCODE_DEBUG_INFORMATION_FORMAT) { -- debug_information_format.name = DEBUG_INFORMATION_FORMAT -- debug_information_format.value = $$QMAKE_XCODE_DEBUG_INFORMATION_FORMAT -- debug_information_format.build = debug -- QMAKE_MAC_XCODE_SETTINGS += debug_information_format -- } -- -- QMAKE_XCODE_ARCHS = -- -- arch_device.name = "ARCHS[sdk=$${device.sdk}*]" -- arch_device.value = $$QMAKE_APPLE_DEVICE_ARCHS -- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_DEVICE_ARCHS -- QMAKE_MAC_XCODE_SETTINGS += arch_device -- -- simulator { -- arch_simulator.name = "ARCHS[sdk=$${simulator.sdk}*]" -- arch_simulator.value = $$QMAKE_APPLE_SIMULATOR_ARCHS -- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_SIMULATOR_ARCHS -- QMAKE_MAC_XCODE_SETTINGS += arch_simulator -- } -- -- only_active_arch.name = ONLY_ACTIVE_ARCH -- only_active_arch.value = YES -- only_active_arch.build = debug -- QMAKE_MAC_XCODE_SETTINGS += only_active_arch --} else { -- device|!simulator: VALID_DEVICE_ARCHS = $$QMAKE_APPLE_DEVICE_ARCHS -- simulator: VALID_SIMULATOR_ARCHS = $$QMAKE_APPLE_SIMULATOR_ARCHS -- VALID_ARCHS = $$VALID_DEVICE_ARCHS $$VALID_SIMULATOR_ARCHS -- -- isEmpty(VALID_ARCHS): \ -- error("QMAKE_APPLE_DEVICE_ARCHS or QMAKE_APPLE_SIMULATOR_ARCHS must contain at least one architecture") -- -- single_arch: VALID_ARCHS = $$first(VALID_ARCHS) -- -- ACTIVE_ARCHS = $(filter $(EXPORT_VALID_ARCHS), $(ARCHS)) -- ARCH_ARGS = $(foreach arch, $(if $(EXPORT_ACTIVE_ARCHS), $(EXPORT_ACTIVE_ARCHS), $(EXPORT_VALID_ARCHS)), -arch $(arch)) -- -- QMAKE_EXTRA_VARIABLES += VALID_ARCHS ACTIVE_ARCHS ARCH_ARGS -- -- arch_flags = $(EXPORT_ARCH_ARGS) -- -- QMAKE_CFLAGS += $$arch_flags -- QMAKE_CXXFLAGS += $$arch_flags -- QMAKE_LFLAGS += $$arch_flags -- -- QMAKE_PCH_ARCHS = $$VALID_ARCHS -- -- macos: deployment_target = $$QMAKE_MACOSX_DEPLOYMENT_TARGET -- ios: deployment_target = $$QMAKE_IOS_DEPLOYMENT_TARGET -- tvos: deployment_target = $$QMAKE_TVOS_DEPLOYMENT_TARGET -- watchos: deployment_target = $$QMAKE_WATCHOS_DEPLOYMENT_TARGET -- -- # If we're doing a simulator and device build, device and simulator -- # architectures use different paths and flags for the sysroot and -- # deployment target switch, so we must multiplex them across multiple -- # architectures using -Xarch. Otherwise we fall back to the simple path. -- # This is not strictly necessary, but results in cleaner command lines -- # and makes it easier for people to override EXPORT_VALID_ARCHS to limit -- # individual rules to a different set of architecture(s) from the overall -- # build (such as machtest in QtCore). -- simulator:device { -- QMAKE_XARCH_CFLAGS = -- QMAKE_XARCH_LFLAGS = -- QMAKE_EXTRA_VARIABLES += QMAKE_XARCH_CFLAGS QMAKE_XARCH_LFLAGS -- -- for (arch, VALID_ARCHS) { -- contains(VALID_SIMULATOR_ARCHS, $$arch) { -- sdk = $$simulator.sdk -- version_identifier = $$simulator.deployment_identifier -- } else { -- sdk = $$device.sdk -- version_identifier = $$device.deployment_identifier -- } -- -- version_min_flags = \ -- -Xarch_$${arch} \ -- -m$${version_identifier}-version-min=$$deployment_target -- QMAKE_XARCH_CFLAGS_$${arch} = $$version_min_flags \ -- -Xarch_$${arch} \ -- -isysroot$$xcodeSDKInfo(Path, $$sdk) -- QMAKE_XARCH_LFLAGS_$${arch} = $$version_min_flags \ -- -Xarch_$${arch} \ -- -Wl,-syslibroot,$$xcodeSDKInfo(Path, $$sdk) -- -- QMAKE_XARCH_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS_$${arch}) -- QMAKE_XARCH_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS_$${arch}) -- -- QMAKE_EXTRA_VARIABLES += \ -- QMAKE_XARCH_CFLAGS_$${arch} \ -- QMAKE_XARCH_LFLAGS_$${arch} -- } -- -- QMAKE_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS) -- QMAKE_CXXFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS) -- QMAKE_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS) -- } else { -- simulator: \ -- version_identifier = $$simulator.deployment_identifier -- else: \ -- version_identifier = $$device.deployment_identifier -- version_min_flag = -m$${version_identifier}-version-min=$$deployment_target -- QMAKE_CFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag -- QMAKE_CXXFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag -- QMAKE_LFLAGS += -Wl,-syslibroot,$$QMAKE_MAC_SDK_PATH $$version_min_flag -- } -- -- # Enable precompiled headers for multiple architectures -- QMAKE_CFLAGS_USE_PRECOMPILE = -- for (arch, VALID_ARCHS) { -- icc_pch_style: \ -- use_flag = "-pch-use " -- else: \ -- use_flag = -include -- -- # Only use Xarch with multi-arch, as the option confuses ccache -- count(VALID_ARCHS, 1, greaterThan): \ -- QMAKE_CFLAGS_USE_PRECOMPILE += \ -- -Xarch_$${arch} -- -- QMAKE_CFLAGS_USE_PRECOMPILE += \ -- $${use_flag}${QMAKE_PCH_OUTPUT_$${arch}} -- } -- icc_pch_style { -- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -include ${QMAKE_PCH_INPUT} -- QMAKE_CFLAGS_USE_PRECOMPILE = -- } else { -- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -- QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -- QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -- } -- -- QMAKE_PCH_OUTPUT_EXT = _${QMAKE_PCH_ARCH}$${QMAKE_PCH_OUTPUT_EXT} --} -- --cache(QMAKE_XCODE_DEVELOPER_PATH, stash) --!isEmpty(QMAKE_XCODE_VERSION): \ -- cache(QMAKE_XCODE_VERSION, stash) -- --QMAKE_XCODE_LIBRARY_SUFFIX = $$qtPlatformTargetSuffix() -- --xcode_product_bundle_identifier_setting.name = PRODUCT_BUNDLE_IDENTIFIER --xcode_product_bundle_identifier_setting.value = $$QMAKE_TARGET_BUNDLE_PREFIX --isEmpty(xcode_product_bundle_identifier_setting.value): \ -- xcode_product_bundle_identifier_setting.value = "com.yourcompany" --xcode_product_bundle_target = $$QMAKE_BUNDLE --isEmpty(xcode_product_bundle_target): \ -- xcode_product_bundle_target = ${PRODUCT_NAME:rfc1034identifier} --xcode_product_bundle_identifier_setting.value = "$${xcode_product_bundle_identifier_setting.value}.$${xcode_product_bundle_target}" --QMAKE_MAC_XCODE_SETTINGS += xcode_product_bundle_identifier_setting -- - !macx-xcode { - generate_xcode_project.commands = @$(QMAKE) -spec macx-xcode $(EXPORT__PRO_FILE_) - generate_xcode_project.target = xcodeproj -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/default_pre.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/default_pre.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/default_pre.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/default_pre.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -1,60 +1,2 @@ - CONFIG = asset_catalogs rez $$CONFIG - load(default_pre) -- --isEmpty(QMAKE_XCODE_DEVELOPER_PATH) { -- # Get path of Xcode's Developer directory -- QMAKE_XCODE_DEVELOPER_PATH = $$system("/usr/bin/xcode-select --print-path 2>/dev/null") -- isEmpty(QMAKE_XCODE_DEVELOPER_PATH): \ -- error("Xcode path is not set. Please use xcode-select to choose Xcode installation path.") -- -- # Make sure Xcode path is valid -- !exists($$QMAKE_XCODE_DEVELOPER_PATH): \ -- error("Xcode is not installed in $${QMAKE_XCODE_DEVELOPER_PATH}. Please use xcode-select to choose Xcode installation path.") --} -- --isEmpty(QMAKE_XCODEBUILD_PATH): \ -- QMAKE_XCODEBUILD_PATH = $$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null") -- --!isEmpty(QMAKE_XCODEBUILD_PATH) { -- # Make sure Xcode is set up properly -- !system("/usr/bin/xcrun xcodebuild -license check 2>/dev/null"): \ -- error("Xcode not set up properly. You need to confirm the license agreement by running 'sudo xcrun xcodebuild -license accept'.") -- -- isEmpty(QMAKE_XCODE_VERSION) { -- # Extract Xcode version using xcodebuild -- xcode_version = $$system("/usr/bin/xcrun xcodebuild -version") -- QMAKE_XCODE_VERSION = $$member(xcode_version, 1) -- isEmpty(QMAKE_XCODE_VERSION): error("Could not resolve Xcode version.") -- unset(xcode_version) -- } --} -- --isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) { -- QMAKE_XCODE_PREFERENCES_FILE = $$(HOME)/Library/Preferences/com.apple.dt.Xcode.plist -- exists($$QMAKE_XCODE_PREFERENCES_FILE): \ -- QMAKE_TARGET_BUNDLE_PREFIX = $$system("/usr/libexec/PlistBuddy -c 'print IDETemplateOptions:bundleIdentifierPrefix' $$QMAKE_XCODE_PREFERENCES_FILE 2>/dev/null") -- -- !isEmpty(_QMAKE_CACHE_):!isEmpty(QMAKE_TARGET_BUNDLE_PREFIX): \ -- cache(QMAKE_TARGET_BUNDLE_PREFIX) --} -- --QMAKE_ASSET_CATALOGS_APP_ICON = AppIcon -- --# Make the default debug info format for static debug builds --# DWARF instead of DWARF with dSYM. This cuts down build times --# for application debug builds significantly, as Xcode doesn't --# have to pull out all the DWARF info from the Qt static libs --# and put it into a dSYM file. We don't need that dSYM file in --# the first place, since the information is available in the --# object files inside the archives (static libraries). --macx-xcode:qtConfig(static): \ -- QMAKE_XCODE_DEBUG_INFORMATION_FORMAT = dwarf -- --# This variable is used by the xcode_dynamic_library_suffix --# feature, which allows Xcode to choose the Qt libraries to link to --# at build time, depending on the current Xcode SDK and configuration. --QMAKE_XCODE_LIBRARY_SUFFIX_SETTING = QT_LIBRARY_SUFFIX -- --xcode_copy_phase_strip_setting.name = COPY_PHASE_STRIP --xcode_copy_phase_strip_setting.value = NO --QMAKE_MAC_XCODE_SETTINGS += xcode_copy_phase_strip_setting -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/sdk.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/sdk.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/sdk.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/sdk.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -1,54 +1 @@ - --isEmpty(QMAKE_MAC_SDK): \ -- error("QMAKE_MAC_SDK must be set when using CONFIG += sdk.") -- --contains(QMAKE_MAC_SDK, .*/.*): \ -- error("QMAKE_MAC_SDK can only contain short-form SDK names (eg. macosx, iphoneos)") -- --defineReplace(xcodeSDKInfo) { -- info = $$1 -- equals(info, "Path"): \ -- infoarg = --show-sdk-path -- equals(info, "PlatformPath"): \ -- infoarg = --show-sdk-platform-path -- equals(info, "SDKVersion"): \ -- infoarg = --show-sdk-version -- sdk = $$2 -- isEmpty(sdk): \ -- sdk = $$QMAKE_MAC_SDK -- -- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}) { -- QMAKE_MAC_SDK.$${sdk}.$${info} = $$system("/usr/bin/xcrun --sdk $$sdk $$infoarg 2>/dev/null") -- # --show-sdk-platform-path won't work for Command Line Tools; this is fine -- # only used by the XCTest backend to testlib -- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}):if(!isEmpty(QMAKE_XCODEBUILD_PATH)|!equals(infoarg, "--show-sdk-platform-path")): \ -- error("Could not resolve SDK $$info for \'$$sdk\' using $$infoarg") -- cache(QMAKE_MAC_SDK.$${sdk}.$${info}, set stash, QMAKE_MAC_SDK.$${sdk}.$${info}) -- } -- -- return($$eval(QMAKE_MAC_SDK.$${sdk}.$${info})) --} -- --QMAKE_MAC_SDK_PATH = $$xcodeSDKInfo(Path) --QMAKE_MAC_SDK_PLATFORM_PATH = $$xcodeSDKInfo(PlatformPath) --QMAKE_MAC_SDK_VERSION = $$xcodeSDKInfo(SDKVersion) -- --QMAKESPEC_NAME = $$basename(QMAKESPEC) -- --# Resolve SDK version of various tools --for(tool, $$list(QMAKE_CC QMAKE_CXX QMAKE_FIX_RPATH QMAKE_AR QMAKE_RANLIB QMAKE_LINK QMAKE_LINK_SHLIB QMAKE_ACTOOL QMAKE_LINK_C QMAKE_LINK_C_SHLIB)) { -- tool_variable = QMAKE_MAC_SDK.$${QMAKESPEC_NAME}.$${QMAKE_MAC_SDK}.$${tool} -- !isEmpty($$tool_variable) { -- $$tool = $$eval($$tool_variable) -- next() -- } -- -- value = $$eval($$tool) -- isEmpty(value): next() -- -- sysrooted = $$system("/usr/bin/xcrun -sdk $$QMAKE_MAC_SDK -find $$first(value) 2>/dev/null") -- isEmpty(sysrooted): next() -- -- $$tool = $$sysrooted $$member(value, 1, -1) -- cache($$tool_variable, set stash, $$tool) --} -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qml_module.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qml_module.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qml_module.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qml_module.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -54,7 +54,7 @@ - - qmldir.files = $$qmldir_file - install_qml_files: qmldir.files += $$fq_qml_files --qmldir.path = $$[QT_INSTALL_QML]/$$TARGETPATH -+qmldir.path = $$NIX_OUTPUT_QML/$$TARGETPATH - INSTALLS += qmldir - - qmlfiles.base = $$_PRO_FILE_PWD_ -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qml_plugin.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qml_plugin.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qml_plugin.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qml_plugin.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -50,7 +50,7 @@ - - DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH - --target.path = $$[QT_INSTALL_QML]/$$TARGETPATH -+target.path = $$NIX_OUTPUT_QML/$$TARGETPATH - INSTALLS += target - - # Some final setup -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_app.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_app.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_app.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_app.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -30,7 +30,7 @@ - target.path = $$[QT_HOST_BINS] - } else { - !build_pass:qtConfig(debug_and_release): CONFIG += release -- target.path = $$[QT_INSTALL_BINS] -+ target.path = $$NIX_OUTPUT_BIN/bin - CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable - } - INSTALLS += target -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_build_paths.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_build_paths.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_build_paths.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_build_paths.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -24,6 +24,6 @@ - !force_independent { - # If the module is not built independently, everything ends up in qtbase. - # This is the case in non-prefix builds, except for selected modules. -- MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX] -- MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX] -+ MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT -+ MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT - } -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_common.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_common.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_common.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_common.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -34,8 +34,8 @@ - qqt_libdir = \$\$\$\$[QT_HOST_LIBS] - qt_libdir = $$[QT_HOST_LIBS] - } else { -- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS] -- qt_libdir = $$[QT_INSTALL_LIBS] -+ qqt_libdir = \$\$\$\$NIX_OUTPUT_OUT/lib -+ qt_libdir = $$NIX_OUTPUT_OUT/lib - } - contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) { - lib_replace.match = "[^ ']*$$rplbase/lib" -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_docs.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_docs.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_docs.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_docs.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -45,7 +45,7 @@ - - QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR) - !build_online_docs: \ -- QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS]) -+ QDOC += -installdir $$shell_quote($$NIX_OUTPUT_DOC) - PREP_DOC_INDEXES = - DOC_INDEXES = - !isEmpty(QTREPOS) { -@@ -64,8 +64,8 @@ - DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc) - } else { - prepare_docs: \ -- PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) -- DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) -+ PREP_DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) -+ DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) - } - - qtattributionsscanner.target = qtattributionsscanner -@@ -88,12 +88,12 @@ - qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch) - - inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR -- inst_html_docs.path = $$[QT_INSTALL_DOCS] -+ inst_html_docs.path = $$NIX_OUTPUT_DOC - inst_html_docs.CONFIG += no_check_exist directory no_default_install no_build - INSTALLS += inst_html_docs - - inst_qch_docs.files = $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch -- inst_qch_docs.path = $$[QT_INSTALL_DOCS] -+ inst_qch_docs.path = $$NIX_OUTPUT_DOC - inst_qch_docs.CONFIG += no_check_exist no_default_install no_build - INSTALLS += inst_qch_docs - -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_example_installs.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_example_installs.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_example_installs.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_example_installs.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -88,7 +88,7 @@ - $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \ - $$DBUS_ADAPTORS $$DBUS_INTERFACES - addInstallFiles(sources.files, $$sourcefiles) --sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase -+sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase - INSTALLS += sources - - check_examples { -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_functions.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_functions.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_functions.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_functions.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -69,7 +69,7 @@ - defineTest(qtPrepareTool) { - cmd = $$eval(QT_TOOL.$${2}.binary) - isEmpty(cmd) { -- cmd = $$[QT_HOST_BINS]/$$2 -+ cmd = $$system("command -v $$2") - exists($${cmd}.pl) { - $${1}_EXE = $${cmd}.pl - cmd = perl -w $$system_path($${cmd}.pl) -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_installs.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_installs.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_installs.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_installs.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -12,16 +12,10 @@ - #library - !qt_no_install_library { - win32 { -- host_build: \ -- dlltarget.path = $$[QT_HOST_BINS] -- else: \ -- dlltarget.path = $$[QT_INSTALL_BINS] -+ dlltarget.path = $$NIX_OUTPUT_BIN/bin - INSTALLS += dlltarget - } -- host_build: \ -- target.path = $$[QT_HOST_LIBS] -- else: \ -- target.path = $$[QT_INSTALL_LIBS] -+ target.path = $$NIX_OUTPUT_OUT/lib - !static: target.CONFIG = no_dll - INSTALLS += target - } -@@ -29,35 +23,35 @@ - #headers - qt_install_headers { - gen_headers.files = $$SYNCQT.GENERATED_HEADER_FILES -- gen_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME -+ gen_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME - INSTALLS += gen_headers - - targ_headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.INJECTED_HEADER_FILES -- targ_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME -+ targ_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME - INSTALLS += targ_headers - - private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES $$SYNCQT.INJECTED_PRIVATE_HEADER_FILES -- private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private -+ private_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private - generated_privates: \ - private_headers.CONFIG += no_check_exist - INSTALLS += private_headers - - qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES -- qpa_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa -+ qpa_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa - INSTALLS += qpa_headers - } - - #module - qt_install_module { - !isEmpty(MODULE_PRI) { -- pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules -+ pritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules - pritarget.files = $$MODULE_PRI - INSTALLS += pritarget - } else: isEmpty(MODULE_PRIVATE_PRI) { - warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects.") - } - !isEmpty(MODULE_PRIVATE_PRI) { -- privpritarget.path = $$[QT_HOST_DATA]/mkspecs/modules -+ privpritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules - privpritarget.files = $$MODULE_PRIVATE_PRI - INSTALLS += privpritarget - } -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_plugin.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_plugin.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_plugin.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_plugin.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -88,7 +88,7 @@ - } - } - --target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE -+target.path = $$NIX_OUTPUT_PLUGIN/$$PLUGIN_TYPE - INSTALLS += target - - TARGET = $$qt5LibraryTarget($$TARGET) -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/kernel/qcoreapplication.cpp qtbase-everywhere-src-5.12.3-b/src/corelib/kernel/qcoreapplication.cpp ---- qtbase-everywhere-src-5.12.3-a/src/corelib/kernel/qcoreapplication.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/kernel/qcoreapplication.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -2668,6 +2668,15 @@ - QStringList *app_libpaths = new QStringList; - coreappdata()->app_libpaths.reset(app_libpaths); - -+ // Add library paths derived from PATH -+ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':'); -+ const QString plugindir = QStringLiteral("../" NIXPKGS_QT_PLUGIN_PREFIX); -+ for (const QString &path: paths) { -+ if (!path.isEmpty()) { -+ app_libpaths->append(QDir::cleanPath(path + QDir::separator() + plugindir)); -+ } -+ } -+ - QString libPathEnv = qEnvironmentVariable("QT_PLUGIN_PATH"); - if (!libPathEnv.isEmpty()) { - QStringList paths = libPathEnv.split(QDir::listSeparator(), QString::SkipEmptyParts); -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/kernel/qcore_mac_p.h qtbase-everywhere-src-5.12.3-b/src/corelib/kernel/qcore_mac_p.h ---- qtbase-everywhere-src-5.12.3-a/src/corelib/kernel/qcore_mac_p.h 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/kernel/qcore_mac_p.h 2019-07-10 09:35:08.920628655 -0500 -@@ -212,7 +212,7 @@ - - // -------------------------------------------------------------------------- - --#if !defined(QT_BOOTSTRAPPED) -+#if 0 - - QT_END_NAMESPACE - #include -@@ -290,7 +290,19 @@ - - #define QT_APPLE_SCOPED_LOG_ACTIVITY(...) QAppleLogActivity scopedLogActivity = QT_APPLE_LOG_ACTIVITY(__VA_ARGS__).enter(); - --#endif // !defined(QT_BOOTSTRAPPED) -+#else // !defined(QT_BOOTSTRAPPED) -+ -+#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT3(...) -+#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT2(...) -+#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT(...) -+ -+#define QT_APPLE_LOG_ACTIVITY2(...) -+#define QT_APPLE_LOG_ACTIVITY1(...) -+#define QT_APPLE_LOG_ACTIVITY(...) -+ -+#define QT_APPLE_SCOPED_LOG_ACTIVITY(...) -+ -+#endif - - // ------------------------------------------------------------------------- - -Only in qtbase-everywhere-src-5.12.3-b/src/corelib/kernel: qcore_mac_p.h.orig -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtras.cmake.in qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtras.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtras.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtras.cmake.in 2019-07-10 09:35:08.918628595 -0500 -@@ -3,7 +3,7 @@ - add_executable(Qt5::qmake IMPORTED) - - !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") - !!ELSE - set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") - !!ENDIF -@@ -18,7 +18,7 @@ - add_executable(Qt5::moc IMPORTED) - - !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") - !!ELSE - set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") - !!ENDIF -@@ -35,7 +35,7 @@ - add_executable(Qt5::rcc IMPORTED) - - !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") - !!ELSE - set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") - !!ENDIF -@@ -116,7 +116,7 @@ - !!IF !isEmpty(CMAKE_RELEASE_TYPE) - set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) - !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") - !!ELSE - set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") - !!ENDIF -@@ -130,7 +130,7 @@ - set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) - - !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") - !!ELSE - set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") - !!ENDIF -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in 2019-07-10 09:35:08.918628595 -0500 -@@ -1,6 +1,6 @@ - - !!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE) --set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") -+set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") - !!ELSE - set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\") - !!ENDIF -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in 2019-07-10 09:35:08.918628595 -0500 -@@ -1,6 +1,6 @@ - - !!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE) --set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") -+set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") - !!ELSE - set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\") - !!ENDIF -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/tools/qtimezoneprivate_tz.cpp qtbase-everywhere-src-5.12.3-b/src/corelib/tools/qtimezoneprivate_tz.cpp ---- qtbase-everywhere-src-5.12.3-a/src/corelib/tools/qtimezoneprivate_tz.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/tools/qtimezoneprivate_tz.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -70,7 +70,11 @@ - // Parse zone.tab table, assume lists all installed zones, if not will need to read directories - static QTzTimeZoneHash loadTzTimeZones() - { -- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); -+ // Try TZDIR first, in case we're running on NixOS. -+ QString path = QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/zone.tab"); -+ // Fallback to traditional paths in case we are not on NixOS. -+ if (!QFile::exists(path)) -+ path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); - if (!QFile::exists(path)) - path = QStringLiteral("/usr/lib/zoneinfo/zone.tab"); - -@@ -644,12 +648,16 @@ - if (!tzif.open(QIODevice::ReadOnly)) - return; - } else { -- // Open named tz, try modern path first, if fails try legacy path -- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); -+ // Try TZDIR first, in case we're running on NixOS -+ tzif.setFileName(QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/") + QString::fromLocal8Bit(ianaId)); - if (!tzif.open(QIODevice::ReadOnly)) { -- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); -- if (!tzif.open(QIODevice::ReadOnly)) -- return; -+ // Open named tz, try modern path first, if fails try legacy path -+ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); -+ if (!tzif.open(QIODevice::ReadOnly)) { -+ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); -+ if (!tzif.open(QIODevice::ReadOnly)) -+ return; -+ } - } - } - -diff -aur qtbase-everywhere-src-5.12.3-a/src/dbus/Qt5DBusConfigExtras.cmake.in qtbase-everywhere-src-5.12.3-b/src/dbus/Qt5DBusConfigExtras.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/dbus/Qt5DBusConfigExtras.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/dbus/Qt5DBusConfigExtras.cmake.in 2019-07-10 09:35:08.919628625 -0500 -@@ -2,11 +2,7 @@ - if (NOT TARGET Qt5::qdbuscpp2xml) - add_executable(Qt5::qdbuscpp2xml IMPORTED) - --!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") --!!ELSE -- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") --!!ENDIF -+ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") - _qt5_DBus_check_file_exists(${imported_location}) - - set_target_properties(Qt5::qdbuscpp2xml PROPERTIES -@@ -17,11 +13,7 @@ - if (NOT TARGET Qt5::qdbusxml2cpp) - add_executable(Qt5::qdbusxml2cpp IMPORTED) - --!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") --!!ELSE -- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") --!!ENDIF -+ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") - _qt5_DBus_check_file_exists(${imported_location}) - - set_target_properties(Qt5::qdbusxml2cpp PROPERTIES -diff -aur qtbase-everywhere-src-5.12.3-a/src/gui/Qt5GuiConfigExtras.cmake.in qtbase-everywhere-src-5.12.3-b/src/gui/Qt5GuiConfigExtras.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/gui/Qt5GuiConfigExtras.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/gui/Qt5GuiConfigExtras.cmake.in 2019-07-10 09:35:08.919628625 -0500 -@@ -2,7 +2,7 @@ - !!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE) - - !!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) --set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\") -+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$NIX_OUTPUT_DEV/$$CMAKE_INCLUDE_DIR/QtANGLE\") - !!ELSE - set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\") - !!ENDIF -@@ -17,13 +17,13 @@ - set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) - - !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") -+ set(imported_location \"$$NIX_OUTPUT_OUT/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") - !!ELSE - set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") - !!ENDIF - - !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") -+ set(imported_implib \"$$NIX_OUTPUT_OUT/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") - !!ELSE - set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") - !!ENDIF -diff -aur qtbase-everywhere-src-5.12.3-a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp qtbase-everywhere-src-5.12.3-b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp ---- qtbase-everywhere-src-5.12.3-a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -265,12 +265,9 @@ - m_possibleLocations.reserve(7); - if (qEnvironmentVariableIsSet("QTCOMPOSE")) - m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE"))); -- m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale")); -- m_possibleLocations.append(QStringLiteral("/usr/local/share/X11/locale")); -- m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale")); -- m_possibleLocations.append(QStringLiteral("/usr/local/lib/X11/locale")); - m_possibleLocations.append(QStringLiteral(X11_PREFIX "/share/X11/locale")); - m_possibleLocations.append(QStringLiteral(X11_PREFIX "/lib/X11/locale")); -+ m_possibleLocations.append(QLatin1String(NIXPKGS_QTCOMPOSE)); - } - - QString TableGenerator::findComposeFile() -diff -aur qtbase-everywhere-src-5.12.3-a/src/plugins/platforms/xcb/qxcbcursor.cpp qtbase-everywhere-src-5.12.3-b/src/plugins/platforms/xcb/qxcbcursor.cpp ---- qtbase-everywhere-src-5.12.3-a/src/plugins/platforms/xcb/qxcbcursor.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/plugins/platforms/xcb/qxcbcursor.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -317,10 +317,10 @@ - #if QT_CONFIG(xcb_xlib) && QT_CONFIG(library) - static bool function_ptrs_not_initialized = true; - if (function_ptrs_not_initialized) { -- QLibrary xcursorLib(QLatin1String("Xcursor"), 1); -+ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1); - bool xcursorFound = xcursorLib.load(); - if (!xcursorFound) { // try without the version number -- xcursorLib.setFileName(QLatin1String("Xcursor")); -+ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR)); - xcursorFound = xcursorLib.load(); - } - if (xcursorFound) { -Only in qtbase-everywhere-src-5.12.3-b/src/plugins/platforms/xcb: qxcbcursor.cpp.orig -diff -aur qtbase-everywhere-src-5.12.3-a/src/plugins/platformthemes/gtk3/main.cpp qtbase-everywhere-src-5.12.3-b/src/plugins/platformthemes/gtk3/main.cpp ---- qtbase-everywhere-src-5.12.3-a/src/plugins/platformthemes/gtk3/main.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/plugins/platformthemes/gtk3/main.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -39,6 +39,7 @@ - - #include - #include "qgtk3theme.h" -+#include - - QT_BEGIN_NAMESPACE - -@@ -54,8 +55,22 @@ - QPlatformTheme *QGtk3ThemePlugin::create(const QString &key, const QStringList ¶ms) - { - Q_UNUSED(params); -- if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) -+ if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) { -+ -+#ifdef NIXPKGS_QGTK3_XDG_DATA_DIRS -+ QStringList XDG_DATA_DIRS = QFile::decodeName(qgetenv("XDG_DATA_DIRS")).split(':'); -+ XDG_DATA_DIRS << QLatin1String(NIXPKGS_QGTK3_XDG_DATA_DIRS); -+ qputenv("XDG_DATA_DIRS", QFile::encodeName(XDG_DATA_DIRS.join(':'))); -+#endif -+ -+#ifdef NIXPKGS_QGTK3_GIO_EXTRA_MODULES -+ QStringList GIO_EXTRA_MODULES = QFile::decodeName(qgetenv("GIO_EXTRA_MODULES")).split(':'); -+ GIO_EXTRA_MODULES << QLatin1String(NIXPKGS_QGTK3_GIO_EXTRA_MODULES); -+ qputenv("GIO_EXTRA_MODULES", QFile::encodeName(GIO_EXTRA_MODULES.join(':'))); -+#endif -+ - return new QGtk3Theme; -+ } - - return 0; - } -diff -aur qtbase-everywhere-src-5.12.3-a/src/testlib/qappletestlogger.cpp qtbase-everywhere-src-5.12.3-b/src/testlib/qappletestlogger.cpp ---- qtbase-everywhere-src-5.12.3-a/src/testlib/qappletestlogger.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/testlib/qappletestlogger.cpp 2019-07-10 09:35:08.920628655 -0500 -@@ -43,7 +43,7 @@ - - QT_BEGIN_NAMESPACE - --#if defined(QT_USE_APPLE_UNIFIED_LOGGING) -+#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 - - using namespace QTestPrivate; - -diff -aur qtbase-everywhere-src-5.12.3-a/src/testlib/qtestassert.h qtbase-everywhere-src-5.12.3-b/src/testlib/qtestassert.h ---- qtbase-everywhere-src-5.12.3-a/src/testlib/qtestassert.h 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/testlib/qtestassert.h 2019-07-10 09:35:08.919628625 -0500 -@@ -44,10 +44,13 @@ - - QT_BEGIN_NAMESPACE - -- -+#if defined(QT_NO_DEBUG) && !defined(QT_FORCE_ASSERTS) -+#define QTEST_ASSERT(cond) do { } while ((false) && (cond)) -+#define QTEST_ASSERT_X(cond, where, what) do { } while ((false) && (cond)) -+#else - #define QTEST_ASSERT(cond) do { if (!(cond)) qt_assert(#cond,__FILE__,__LINE__); } while (false) -- - #define QTEST_ASSERT_X(cond, where, what) do { if (!(cond)) qt_assert_x(where, what,__FILE__,__LINE__); } while (false) -+#endif - - QT_END_NAMESPACE - -diff -aur qtbase-everywhere-src-5.12.3-a/src/widgets/Qt5WidgetsConfigExtras.cmake.in qtbase-everywhere-src-5.12.3-b/src/widgets/Qt5WidgetsConfigExtras.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/widgets/Qt5WidgetsConfigExtras.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/widgets/Qt5WidgetsConfigExtras.cmake.in 2019-07-10 09:35:08.919628625 -0500 -@@ -3,7 +3,7 @@ - add_executable(Qt5::uic IMPORTED) - - !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") - !!ELSE - set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") - !!ENDIF -diff --git a/mkspecs/features/mac/sdk.mk b/mkspecs/features/mac/sdk.mk -index c40f58c987..e69de29bb2 100644 ---- a/mkspecs/features/mac/sdk.mk -+++ b/mkspecs/features/mac/sdk.mk -@@ -1,25 +0,0 @@ -- --ifeq ($(QT_MAC_SDK_NO_VERSION_CHECK),) -- CHECK_SDK_COMMAND = /usr/bin/xcrun --sdk $(EXPORT_QMAKE_MAC_SDK) -show-sdk-version 2>&1 -- CURRENT_MAC_SDK_VERSION := $(shell DEVELOPER_DIR=$(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) $(CHECK_SDK_COMMAND)) -- ifneq ($(CURRENT_MAC_SDK_VERSION),$(EXPORT_QMAKE_MAC_SDK_VERSION)) -- # We don't want to complain about out of date SDK unless the target needs to be remade. -- # This covers use-cases such as running 'make check' after moving the build to a -- # computer without Xcode or with a different Xcode version. -- TARGET_UP_TO_DATE := $(shell QT_MAC_SDK_NO_VERSION_CHECK=1 $(MAKE) --question $(QMAKE_TARGET) && echo 1 || echo 0) -- ifeq ($(TARGET_UP_TO_DATE),0) -- ifneq ($(findstring missing DEVELOPER_DIR path,$(CURRENT_MAC_SDK_VERSION)),) -- $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) is no longer valid.) -- else ifneq ($(findstring SDK "$(EXPORT_QMAKE_MAC_SDK)" cannot be located,$(CURRENT_MAC_SDK_VERSION)),) -- $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) no longer contains the $(EXPORT_QMAKE_MAC_SDK_VERSION) platform SDK.) -- else ifneq ($(CURRENT_MAC_SDK_VERSION),) -- $(info The platform SDK has been changed from version $(EXPORT_QMAKE_MAC_SDK_VERSION) to version $(CURRENT_MAC_SDK_VERSION).) -- else -- $(info Unknown error resolving current platform SDK version.) -- endif -- $(info This requires a fresh build. Please wipe the build directory completely,) -- $(info including any .qmake.stash and .qmake.cache files generated by qmake.) -- $(error ^) -- endif -- endif --endif diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch new file mode 100644 index 00000000000..70216a3c636 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch @@ -0,0 +1,397 @@ +From 58d98b66da5d748d610f053053bd12e42c97d9e6 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:34:00 -0500 +Subject: [PATCH 01/10] qtbase-mkspecs-mac + +--- + mkspecs/common/mac.conf | 2 +- + mkspecs/features/mac/default_post.prf | 196 -------------------------- + mkspecs/features/mac/default_pre.prf | 58 -------- + mkspecs/features/mac/sdk.mk | 25 ---- + mkspecs/features/mac/sdk.prf | 61 -------- + 5 files changed, 1 insertion(+), 341 deletions(-) + +diff --git a/mkspecs/common/mac.conf b/mkspecs/common/mac.conf +index b77494ec..470c38e7 100644 +--- a/mkspecs/common/mac.conf ++++ b/mkspecs/common/mac.conf +@@ -24,7 +24,7 @@ QMAKE_INCDIR_OPENGL = \ + + QMAKE_FIX_RPATH = install_name_tool -id + +-QMAKE_LFLAGS_RPATH = -Wl,-rpath, ++QMAKE_LFLAGS_RPATH = + QMAKE_LFLAGS_GCSECTIONS = -Wl,-dead_strip + + QMAKE_LFLAGS_REL_RPATH = +diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf +index c46222de..18dcfbce 100644 +--- a/mkspecs/features/mac/default_post.prf ++++ b/mkspecs/features/mac/default_post.prf +@@ -64,202 +64,6 @@ qt { + } + } + +-# Add the same default rpaths as Xcode does for new projects. +-# This is especially important for iOS/tvOS/watchOS where no other option is possible. +-!no_default_rpath { +- QMAKE_RPATHDIR += @executable_path/../Frameworks +- equals(TEMPLATE, lib):!plugin:lib_bundle: QMAKE_RPATHDIR += @loader_path/Frameworks +-} +- +-# Don't pass -headerpad_max_install_names when using Bitcode. +-# In that case the linker emits a warning stating that the flag is ignored when +-# used with bitcode, for reasons that cannot be determined (rdar://problem/20748962). +-# Using this flag is also unnecessary in practice on UIKit platforms since they +-# are sandboxed, and only UIKit platforms support bitcode to begin with. +-!bitcode: QMAKE_LFLAGS += $$QMAKE_LFLAGS_HEADERPAD +- +-app_extension_api_only { +- QMAKE_CFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION +- QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION +- QMAKE_CXXFLAGS_PRECOMPILE += $$QMAKE_CFLAGS_APPLICATION_EXTENSION +- QMAKE_LFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION +-} +- +-macx-xcode { +- qmake_pkginfo_typeinfo.name = QMAKE_PKGINFO_TYPEINFO +- !isEmpty(QMAKE_PKGINFO_TYPEINFO): \ +- qmake_pkginfo_typeinfo.value = $$QMAKE_PKGINFO_TYPEINFO +- else: \ +- qmake_pkginfo_typeinfo.value = "????" +- QMAKE_MAC_XCODE_SETTINGS += qmake_pkginfo_typeinfo +- +- !isEmpty(VERSION) { +- l = $$split(VERSION, '.') 0 0 # make sure there are at least three +- VER_MAJ = $$member(l, 0, 0) +- VER_MIN = $$member(l, 1, 1) +- VER_PAT = $$member(l, 2, 2) +- unset(l) +- +- qmake_full_version.name = QMAKE_FULL_VERSION +- qmake_full_version.value = $${VER_MAJ}.$${VER_MIN}.$${VER_PAT} +- QMAKE_MAC_XCODE_SETTINGS += qmake_full_version +- +- qmake_short_version.name = QMAKE_SHORT_VERSION +- qmake_short_version.value = $${VER_MAJ}.$${VER_MIN} +- QMAKE_MAC_XCODE_SETTINGS += qmake_short_version +- } +- +- !isEmpty(QMAKE_XCODE_DEBUG_INFORMATION_FORMAT) { +- debug_information_format.name = DEBUG_INFORMATION_FORMAT +- debug_information_format.value = $$QMAKE_XCODE_DEBUG_INFORMATION_FORMAT +- debug_information_format.build = debug +- QMAKE_MAC_XCODE_SETTINGS += debug_information_format +- } +- +- QMAKE_XCODE_ARCHS = +- +- arch_device.name = "ARCHS[sdk=$${device.sdk}*]" +- arch_device.value = $$QMAKE_APPLE_DEVICE_ARCHS +- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_DEVICE_ARCHS +- QMAKE_MAC_XCODE_SETTINGS += arch_device +- +- simulator { +- arch_simulator.name = "ARCHS[sdk=$${simulator.sdk}*]" +- arch_simulator.value = $$QMAKE_APPLE_SIMULATOR_ARCHS +- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_SIMULATOR_ARCHS +- QMAKE_MAC_XCODE_SETTINGS += arch_simulator +- } +- +- only_active_arch.name = ONLY_ACTIVE_ARCH +- only_active_arch.value = YES +- only_active_arch.build = debug +- QMAKE_MAC_XCODE_SETTINGS += only_active_arch +-} else { +- device|!simulator: VALID_DEVICE_ARCHS = $$QMAKE_APPLE_DEVICE_ARCHS +- simulator: VALID_SIMULATOR_ARCHS = $$QMAKE_APPLE_SIMULATOR_ARCHS +- VALID_ARCHS = $$VALID_DEVICE_ARCHS $$VALID_SIMULATOR_ARCHS +- +- isEmpty(VALID_ARCHS): \ +- error("QMAKE_APPLE_DEVICE_ARCHS or QMAKE_APPLE_SIMULATOR_ARCHS must contain at least one architecture") +- +- single_arch: VALID_ARCHS = $$first(VALID_ARCHS) +- +- ACTIVE_ARCHS = $(filter $(EXPORT_VALID_ARCHS), $(ARCHS)) +- ARCH_ARGS = $(foreach arch, $(if $(EXPORT_ACTIVE_ARCHS), $(EXPORT_ACTIVE_ARCHS), $(EXPORT_VALID_ARCHS)), -arch $(arch)) +- +- QMAKE_EXTRA_VARIABLES += VALID_ARCHS ACTIVE_ARCHS ARCH_ARGS +- +- arch_flags = $(EXPORT_ARCH_ARGS) +- +- QMAKE_CFLAGS += $$arch_flags +- QMAKE_CXXFLAGS += $$arch_flags +- QMAKE_LFLAGS += $$arch_flags +- +- QMAKE_PCH_ARCHS = $$VALID_ARCHS +- +- macos: deployment_target = $$QMAKE_MACOSX_DEPLOYMENT_TARGET +- ios: deployment_target = $$QMAKE_IOS_DEPLOYMENT_TARGET +- tvos: deployment_target = $$QMAKE_TVOS_DEPLOYMENT_TARGET +- watchos: deployment_target = $$QMAKE_WATCHOS_DEPLOYMENT_TARGET +- +- # If we're doing a simulator and device build, device and simulator +- # architectures use different paths and flags for the sysroot and +- # deployment target switch, so we must multiplex them across multiple +- # architectures using -Xarch. Otherwise we fall back to the simple path. +- # This is not strictly necessary, but results in cleaner command lines +- # and makes it easier for people to override EXPORT_VALID_ARCHS to limit +- # individual rules to a different set of architecture(s) from the overall +- # build (such as machtest in QtCore). +- simulator:device { +- QMAKE_XARCH_CFLAGS = +- QMAKE_XARCH_LFLAGS = +- QMAKE_EXTRA_VARIABLES += QMAKE_XARCH_CFLAGS QMAKE_XARCH_LFLAGS +- +- for (arch, VALID_ARCHS) { +- contains(VALID_SIMULATOR_ARCHS, $$arch) { +- sdk = $$simulator.sdk +- version_identifier = $$simulator.deployment_identifier +- } else { +- sdk = $$device.sdk +- version_identifier = $$device.deployment_identifier +- } +- +- version_min_flags = \ +- -Xarch_$${arch} \ +- -m$${version_identifier}-version-min=$$deployment_target +- QMAKE_XARCH_CFLAGS_$${arch} = $$version_min_flags \ +- -Xarch_$${arch} \ +- -isysroot$$xcodeSDKInfo(Path, $$sdk) +- QMAKE_XARCH_LFLAGS_$${arch} = $$version_min_flags \ +- -Xarch_$${arch} \ +- -Wl,-syslibroot,$$xcodeSDKInfo(Path, $$sdk) +- +- QMAKE_XARCH_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS_$${arch}) +- QMAKE_XARCH_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS_$${arch}) +- +- QMAKE_EXTRA_VARIABLES += \ +- QMAKE_XARCH_CFLAGS_$${arch} \ +- QMAKE_XARCH_LFLAGS_$${arch} +- } +- +- QMAKE_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS) +- QMAKE_CXXFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS) +- QMAKE_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS) +- } else { +- simulator: \ +- version_identifier = $$simulator.deployment_identifier +- else: \ +- version_identifier = $$device.deployment_identifier +- version_min_flag = -m$${version_identifier}-version-min=$$deployment_target +- QMAKE_CFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag +- QMAKE_CXXFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag +- QMAKE_LFLAGS += -Wl,-syslibroot,$$QMAKE_MAC_SDK_PATH $$version_min_flag +- } +- +- # Enable precompiled headers for multiple architectures +- QMAKE_CFLAGS_USE_PRECOMPILE = +- for (arch, VALID_ARCHS) { +- icc_pch_style: \ +- use_flag = "-pch-use " +- else: \ +- use_flag = -include +- +- # Only use Xarch with multi-arch, as the option confuses ccache +- count(VALID_ARCHS, 1, greaterThan): \ +- QMAKE_CFLAGS_USE_PRECOMPILE += \ +- -Xarch_$${arch} +- +- QMAKE_CFLAGS_USE_PRECOMPILE += \ +- $${use_flag}${QMAKE_PCH_OUTPUT_$${arch}} +- } +- icc_pch_style { +- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -include ${QMAKE_PCH_INPUT} +- QMAKE_CFLAGS_USE_PRECOMPILE = +- } else { +- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE +- QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE +- QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE +- } +- +- QMAKE_PCH_OUTPUT_EXT = _${QMAKE_PCH_ARCH}$${QMAKE_PCH_OUTPUT_EXT} +-} +- +-cache(QMAKE_XCODE_DEVELOPER_PATH, stash) +-!isEmpty(QMAKE_XCODE_VERSION): \ +- cache(QMAKE_XCODE_VERSION, stash) +- +-QMAKE_XCODE_LIBRARY_SUFFIX = $$qtPlatformTargetSuffix() +- +-xcode_product_bundle_identifier_setting.name = PRODUCT_BUNDLE_IDENTIFIER +-xcode_product_bundle_identifier_setting.value = $$QMAKE_TARGET_BUNDLE_PREFIX +-isEmpty(xcode_product_bundle_identifier_setting.value): \ +- xcode_product_bundle_identifier_setting.value = "com.yourcompany" +-xcode_product_bundle_target = $$QMAKE_BUNDLE +-isEmpty(xcode_product_bundle_target): \ +- xcode_product_bundle_target = ${PRODUCT_NAME:rfc1034identifier} +-xcode_product_bundle_identifier_setting.value = "$${xcode_product_bundle_identifier_setting.value}.$${xcode_product_bundle_target}" +-QMAKE_MAC_XCODE_SETTINGS += xcode_product_bundle_identifier_setting +- + !macx-xcode { + generate_xcode_project.commands = @$(QMAKE) -spec macx-xcode $(EXPORT__PRO_FILE_) + generate_xcode_project.target = xcodeproj +diff --git a/mkspecs/features/mac/default_pre.prf b/mkspecs/features/mac/default_pre.prf +index e3534561..3b01424e 100644 +--- a/mkspecs/features/mac/default_pre.prf ++++ b/mkspecs/features/mac/default_pre.prf +@@ -1,60 +1,2 @@ + CONFIG = asset_catalogs rez $$CONFIG + load(default_pre) +- +-isEmpty(QMAKE_XCODE_DEVELOPER_PATH) { +- # Get path of Xcode's Developer directory +- QMAKE_XCODE_DEVELOPER_PATH = $$system("/usr/bin/xcode-select --print-path 2>/dev/null") +- isEmpty(QMAKE_XCODE_DEVELOPER_PATH): \ +- error("Xcode path is not set. Please use xcode-select to choose Xcode installation path.") +- +- # Make sure Xcode path is valid +- !exists($$QMAKE_XCODE_DEVELOPER_PATH): \ +- error("Xcode is not installed in $${QMAKE_XCODE_DEVELOPER_PATH}. Please use xcode-select to choose Xcode installation path.") +-} +- +-isEmpty(QMAKE_XCODEBUILD_PATH): \ +- QMAKE_XCODEBUILD_PATH = $$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null") +- +-!isEmpty(QMAKE_XCODEBUILD_PATH) { +- # Make sure Xcode is set up properly +- !system("/usr/bin/xcrun xcodebuild -license check 2>/dev/null"): \ +- error("Xcode not set up properly. You need to confirm the license agreement by running 'sudo xcrun xcodebuild -license accept'.") +- +- isEmpty(QMAKE_XCODE_VERSION) { +- # Extract Xcode version using xcodebuild +- xcode_version = $$system("/usr/bin/xcrun xcodebuild -version") +- QMAKE_XCODE_VERSION = $$member(xcode_version, 1) +- isEmpty(QMAKE_XCODE_VERSION): error("Could not resolve Xcode version.") +- unset(xcode_version) +- } +-} +- +-isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) { +- QMAKE_XCODE_PREFERENCES_FILE = $$(HOME)/Library/Preferences/com.apple.dt.Xcode.plist +- exists($$QMAKE_XCODE_PREFERENCES_FILE): \ +- QMAKE_TARGET_BUNDLE_PREFIX = $$system("/usr/libexec/PlistBuddy -c 'print IDETemplateOptions:bundleIdentifierPrefix' $$QMAKE_XCODE_PREFERENCES_FILE 2>/dev/null") +- +- !isEmpty(_QMAKE_CACHE_):!isEmpty(QMAKE_TARGET_BUNDLE_PREFIX): \ +- cache(QMAKE_TARGET_BUNDLE_PREFIX) +-} +- +-QMAKE_ASSET_CATALOGS_APP_ICON = AppIcon +- +-# Make the default debug info format for static debug builds +-# DWARF instead of DWARF with dSYM. This cuts down build times +-# for application debug builds significantly, as Xcode doesn't +-# have to pull out all the DWARF info from the Qt static libs +-# and put it into a dSYM file. We don't need that dSYM file in +-# the first place, since the information is available in the +-# object files inside the archives (static libraries). +-macx-xcode:qtConfig(static): \ +- QMAKE_XCODE_DEBUG_INFORMATION_FORMAT = dwarf +- +-# This variable is used by the xcode_dynamic_library_suffix +-# feature, which allows Xcode to choose the Qt libraries to link to +-# at build time, depending on the current Xcode SDK and configuration. +-QMAKE_XCODE_LIBRARY_SUFFIX_SETTING = QT_LIBRARY_SUFFIX +- +-xcode_copy_phase_strip_setting.name = COPY_PHASE_STRIP +-xcode_copy_phase_strip_setting.value = NO +-QMAKE_MAC_XCODE_SETTINGS += xcode_copy_phase_strip_setting +diff --git a/mkspecs/features/mac/sdk.mk b/mkspecs/features/mac/sdk.mk +index c40f58c9..e69de29b 100644 +--- a/mkspecs/features/mac/sdk.mk ++++ b/mkspecs/features/mac/sdk.mk +@@ -1,25 +0,0 @@ +- +-ifeq ($(QT_MAC_SDK_NO_VERSION_CHECK),) +- CHECK_SDK_COMMAND = /usr/bin/xcrun --sdk $(EXPORT_QMAKE_MAC_SDK) -show-sdk-version 2>&1 +- CURRENT_MAC_SDK_VERSION := $(shell DEVELOPER_DIR=$(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) $(CHECK_SDK_COMMAND)) +- ifneq ($(CURRENT_MAC_SDK_VERSION),$(EXPORT_QMAKE_MAC_SDK_VERSION)) +- # We don't want to complain about out of date SDK unless the target needs to be remade. +- # This covers use-cases such as running 'make check' after moving the build to a +- # computer without Xcode or with a different Xcode version. +- TARGET_UP_TO_DATE := $(shell QT_MAC_SDK_NO_VERSION_CHECK=1 $(MAKE) --question $(QMAKE_TARGET) && echo 1 || echo 0) +- ifeq ($(TARGET_UP_TO_DATE),0) +- ifneq ($(findstring missing DEVELOPER_DIR path,$(CURRENT_MAC_SDK_VERSION)),) +- $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) is no longer valid.) +- else ifneq ($(findstring SDK "$(EXPORT_QMAKE_MAC_SDK)" cannot be located,$(CURRENT_MAC_SDK_VERSION)),) +- $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) no longer contains the $(EXPORT_QMAKE_MAC_SDK_VERSION) platform SDK.) +- else ifneq ($(CURRENT_MAC_SDK_VERSION),) +- $(info The platform SDK has been changed from version $(EXPORT_QMAKE_MAC_SDK_VERSION) to version $(CURRENT_MAC_SDK_VERSION).) +- else +- $(info Unknown error resolving current platform SDK version.) +- endif +- $(info This requires a fresh build. Please wipe the build directory completely,) +- $(info including any .qmake.stash and .qmake.cache files generated by qmake.) +- $(error ^) +- endif +- endif +-endif +diff --git a/mkspecs/features/mac/sdk.prf b/mkspecs/features/mac/sdk.prf +index 3a9c2778..e69de29b 100644 +--- a/mkspecs/features/mac/sdk.prf ++++ b/mkspecs/features/mac/sdk.prf +@@ -1,61 +0,0 @@ +- +-isEmpty(QMAKE_MAC_SDK): \ +- error("QMAKE_MAC_SDK must be set when using CONFIG += sdk.") +- +-contains(QMAKE_MAC_SDK, .*/.*): \ +- error("QMAKE_MAC_SDK can only contain short-form SDK names (eg. macosx, iphoneos)") +- +-defineReplace(xcodeSDKInfo) { +- info = $$1 +- equals(info, "Path"): \ +- infoarg = --show-sdk-path +- equals(info, "PlatformPath"): \ +- infoarg = --show-sdk-platform-path +- equals(info, "SDKVersion"): \ +- infoarg = --show-sdk-version +- sdk = $$2 +- isEmpty(sdk): \ +- sdk = $$QMAKE_MAC_SDK +- +- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}) { +- QMAKE_MAC_SDK.$${sdk}.$${info} = $$system("/usr/bin/xcrun --sdk $$sdk $$infoarg 2>/dev/null") +- # --show-sdk-platform-path won't work for Command Line Tools; this is fine +- # only used by the XCTest backend to testlib +- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}):if(!isEmpty(QMAKE_XCODEBUILD_PATH)|!equals(infoarg, "--show-sdk-platform-path")): \ +- error("Could not resolve SDK $$info for \'$$sdk\' using $$infoarg") +- cache(QMAKE_MAC_SDK.$${sdk}.$${info}, set stash, QMAKE_MAC_SDK.$${sdk}.$${info}) +- } +- +- return($$eval(QMAKE_MAC_SDK.$${sdk}.$${info})) +-} +- +-QMAKE_MAC_SDK_PATH = $$xcodeSDKInfo(Path) +-QMAKE_MAC_SDK_PLATFORM_PATH = $$xcodeSDKInfo(PlatformPath) +-QMAKE_MAC_SDK_VERSION = $$xcodeSDKInfo(SDKVersion) +- +-isEmpty(QMAKE_EXPORT_INCDIR_OPENGL) { +- QMAKE_EXPORT_INCDIR_OPENGL = $$QMAKE_INCDIR_OPENGL +- sysrootified = +- for(val, QMAKE_INCDIR_OPENGL): sysrootified += $${QMAKE_MAC_SDK_PATH}$$val +- QMAKE_INCDIR_OPENGL = $$sysrootified +-} +- +-QMAKESPEC_NAME = $$basename(QMAKESPEC) +- +-# Resolve SDK version of various tools +-for(tool, $$list(QMAKE_CC QMAKE_CXX QMAKE_FIX_RPATH QMAKE_AR QMAKE_RANLIB QMAKE_LINK QMAKE_LINK_SHLIB QMAKE_ACTOOL QMAKE_LINK_C QMAKE_LINK_C_SHLIB)) { +- tool_variable = QMAKE_MAC_SDK.$${QMAKESPEC_NAME}.$${QMAKE_MAC_SDK}.$${tool} +- !isEmpty($$tool_variable) { +- $$tool = $$eval($$tool_variable) +- next() +- } +- +- value = $$eval($$tool) +- isEmpty(value): next() +- +- sysrooted = $$system("/usr/bin/xcrun -sdk $$QMAKE_MAC_SDK -find $$first(value) 2>/dev/null") +- isEmpty(sysrooted): next() +- +- $$tool = $$sysrooted $$member(value, 1, -1) +- cache($$tool_variable, set stash, $$tool) +-} +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch new file mode 100644 index 00000000000..b780e38fc83 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch @@ -0,0 +1,60 @@ +From 1dbf4dd6dc4cc30a3e705a12117f1764201a8402 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:37:15 -0500 +Subject: [PATCH 02/10] qtbase-mac + +--- + src/corelib/kernel/qcore_mac_p.h | 16 ++++++++++++++-- + src/testlib/qappletestlogger.cpp | 2 +- + 2 files changed, 15 insertions(+), 3 deletions(-) + +diff --git a/src/corelib/kernel/qcore_mac_p.h b/src/corelib/kernel/qcore_mac_p.h +index f96e7358..650946b7 100644 +--- a/src/corelib/kernel/qcore_mac_p.h ++++ b/src/corelib/kernel/qcore_mac_p.h +@@ -212,7 +212,7 @@ private: + + // -------------------------------------------------------------------------- + +-#if !defined(QT_BOOTSTRAPPED) ++#if 0 + + QT_END_NAMESPACE + #include +@@ -290,7 +290,19 @@ QT_MAC_WEAK_IMPORT(_os_activity_current); + + #define QT_APPLE_SCOPED_LOG_ACTIVITY(...) QAppleLogActivity scopedLogActivity = QT_APPLE_LOG_ACTIVITY(__VA_ARGS__).enter(); + +-#endif // !defined(QT_BOOTSTRAPPED) ++#else // !defined(QT_BOOTSTRAPPED) ++ ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT3(...) ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT2(...) ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT(...) ++ ++#define QT_APPLE_LOG_ACTIVITY2(...) ++#define QT_APPLE_LOG_ACTIVITY1(...) ++#define QT_APPLE_LOG_ACTIVITY(...) ++ ++#define QT_APPLE_SCOPED_LOG_ACTIVITY(...) ++ ++#endif + + // ------------------------------------------------------------------------- + +diff --git a/src/testlib/qappletestlogger.cpp b/src/testlib/qappletestlogger.cpp +index dfeadebd..2a74330c 100644 +--- a/src/testlib/qappletestlogger.cpp ++++ b/src/testlib/qappletestlogger.cpp +@@ -43,7 +43,7 @@ + + QT_BEGIN_NAMESPACE + +-#if defined(QT_USE_APPLE_UNIFIED_LOGGING) ++#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 + + using namespace QTestPrivate; + +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch new file mode 100644 index 00000000000..41cf801c9c7 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch @@ -0,0 +1,508 @@ +From cfcd1f6e1ac53bfbd7d35f0e1aefbdbaa1726f4d Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:32:35 -0500 +Subject: [PATCH 03/10] qtbase-mkspecs + +--- + mkspecs/features/create_cmake.prf | 53 ++++-------- + .../data/cmake/Qt5BasicConfig.cmake.in | 80 +------------------ + mkspecs/features/qml_module.prf | 2 +- + mkspecs/features/qml_plugin.prf | 2 +- + mkspecs/features/qt_app.prf | 2 +- + mkspecs/features/qt_build_paths.prf | 4 +- + mkspecs/features/qt_common.prf | 31 ------- + mkspecs/features/qt_docs.prf | 10 +-- + mkspecs/features/qt_example_installs.prf | 2 +- + mkspecs/features/qt_functions.prf | 2 +- + mkspecs/features/qt_installs.prf | 22 ++--- + mkspecs/features/qt_plugin.prf | 2 +- + 12 files changed, 39 insertions(+), 173 deletions(-) + +diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf +index c9910dda..e9bc8076 100644 +--- a/mkspecs/features/create_cmake.prf ++++ b/mkspecs/features/create_cmake.prf +@@ -21,7 +21,7 @@ load(cmake_functions) + # at cmake time whether package has been found via a symlink, and correct + # that to an absolute path. This is only done for installations to + # the /usr or / prefix. +-CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$[QT_INSTALL_LIBS]) ++CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$NIX_OUTPUT_OUT/lib/) + contains(CMAKE_INSTALL_LIBS_DIR, ^(/usr)?/lib(64)?.*): CMAKE_USR_MOVE_WORKAROUND = $$CMAKE_INSTALL_LIBS_DIR + + CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake +@@ -60,45 +60,20 @@ split_incpath { + $$cmake_extra_source_includes.output + } + +-CMAKE_INCLUDE_DIR = $$cmakeRelativePath($$[QT_INSTALL_HEADERS], $$[QT_INSTALL_PREFIX]) +-contains(CMAKE_INCLUDE_DIR, "^\\.\\./.*") { +- CMAKE_INCLUDE_DIR = $$[QT_INSTALL_HEADERS]/ +- CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True +-} ++CMAKE_INCLUDE_DIR = $$NIX_OUTPUT_DEV/include/ ++CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True + +-CMAKE_LIB_DIR = $$cmakeRelativePath($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX]) +-contains(CMAKE_LIB_DIR,"^\\.\\./.*") { +- CMAKE_LIB_DIR = $$[QT_INSTALL_LIBS]/ +- CMAKE_LIB_DIR_IS_ABSOLUTE = True +-} else { +- CMAKE_RELATIVE_INSTALL_LIBS_DIR = $$cmakeRelativePath($$[QT_INSTALL_PREFIX], $$[QT_INSTALL_LIBS]) +- # We need to go up another two levels because the CMake files are +- # installed in $${CMAKE_LIB_DIR}/cmake/Qt5$${CMAKE_MODULE_NAME} +- CMAKE_RELATIVE_INSTALL_DIR = "$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}../../" +-} ++CMAKE_BIN_DIR = $$NIX_OUTPUT_BIN/bin/ ++CMAKE_BIN_DIR_IS_ABSOLUTE = True + +-CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX]) +-contains(CMAKE_BIN_DIR, "^\\.\\./.*") { +- CMAKE_BIN_DIR = $$[QT_HOST_BINS]/ +- CMAKE_BIN_DIR_IS_ABSOLUTE = True +-} ++CMAKE_LIB_DIR = $$NIX_OUTPUT_OUT/lib/ ++CMAKE_LIB_DIR_IS_ABSOLUTE = True + +-CMAKE_PLUGIN_DIR = $$cmakeRelativePath($$[QT_INSTALL_PLUGINS], $$[QT_INSTALL_PREFIX]) +-contains(CMAKE_PLUGIN_DIR, "^\\.\\./.*") { +- CMAKE_PLUGIN_DIR = $$[QT_INSTALL_PLUGINS]/ +- CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True +-} +- +-win32:!static:!staticlib { +- CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX]) +- contains(CMAKE_DLL_DIR, "^\\.\\./.*") { +- CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/ +- CMAKE_DLL_DIR_IS_ABSOLUTE = True +- } +-} else { +- CMAKE_DLL_DIR = $$CMAKE_LIB_DIR +- CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE +-} ++CMAKE_PLUGIN_DIR = $$NIX_OUTPUT_PLUGIN/ ++CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True ++ ++CMAKE_DLL_DIR = $$NIX_OUTPUT_OUT/lib/ ++CMAKE_DLL_DIR_IS_ABSOLUTE = True + + static|staticlib:CMAKE_STATIC_TYPE = true + +@@ -178,7 +153,7 @@ contains(CONFIG, plugin) { + cmake_target_file + + cmake_qt5_plugin_file.files = $$cmake_target_file.output +- cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} ++ cmake_qt5_plugin_file.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} + INSTALLS += cmake_qt5_plugin_file + + return() +@@ -323,7 +298,7 @@ exists($$cmake_macros_file.input) { + cmake_qt5_module_files.files += $$cmake_macros_file.output + } + +-cmake_qt5_module_files.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} ++cmake_qt5_module_files.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} + + # We are generating cmake files. Most developers of Qt are not aware of cmake, + # so we require automatic tests to be available. The only module which should +diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +index c7298928..c60ef16e 100644 +--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in ++++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +@@ -3,30 +3,6 @@ if (CMAKE_VERSION VERSION_LESS 3.1.0) + message(FATAL_ERROR \"Qt 5 $${CMAKE_MODULE_NAME} module requires at least CMake version 3.1.0\") + endif() + +-!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND) +-!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") +-!!ELSE +-get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH) +-# Use original install prefix when loaded through a +-# cross-prefix symbolic link such as /lib -> /usr/lib. +-get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH) +-get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH) +-if(_realCurr STREQUAL _realOrig) +- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE) +-else() +- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) +-endif() +-unset(_realOrig) +-unset(_realCurr) +-unset(_IMPORT_PREFIX) +-!!ENDIF +-!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +-get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) +-!!ELSE +-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") +-!!ENDIF +- + !!IF !equals(TEMPLATE, aux) + # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead. + set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.VERSION)") +@@ -52,11 +28,7 @@ endmacro() + macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION) + set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) + +-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") +-!!ELSE + set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") +-!!ENDIF + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) + set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES + \"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" +@@ -69,11 +41,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATI + ) + + !!IF !isEmpty(CMAKE_WINDOWS_BUILD) +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") +-!!ELSE + set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") +-!!ENDIF + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib}) + if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\") + set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES +@@ -89,24 +57,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!IF !no_module_headers + !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) + set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework\" +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Headers\" ++ \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework\" ++ \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Headers\" + ) + !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) + set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" +- ) +-!!ELSE +- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") +-!!ENDIF +-!!ELSE +-!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) +- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\") +-!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) +- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\" +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\" ++ \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" ++ \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" + ) + !!ELSE + set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") +@@ -122,7 +79,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") + !!ENDIF + !!ENDIF +-!!ENDIF + !!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS) + include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL) + !!ENDIF +@@ -272,25 +228,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) + !!IF isEmpty(CMAKE_DEBUG_TYPE) + !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) +-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE + if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) +-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE + _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" ) + !!ELSE // CMAKE_STATIC_WINDOWS_BUILD + if (EXISTS +-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" +-!!ELSE + \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" +-!!ENDIF + AND EXISTS +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) +-!!ELSE + \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) +-!!ENDIF + _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) + !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD + endif() +@@ -309,25 +253,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) + !!IF isEmpty(CMAKE_RELEASE_TYPE) + !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE + if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE + _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" ) + !!ELSE // CMAKE_STATIC_WINDOWS_BUILD + if (EXISTS +-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" +-!!ELSE + \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" +-!!ENDIF + AND EXISTS +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ELSE + \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ENDIF + _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) + !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD + endif() +@@ -346,11 +278,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) + set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) + +-!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") +-!!ELSE + set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") +-!!ENDIF + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) + set_target_properties(Qt5::${Plugin} PROPERTIES + \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} +diff --git a/mkspecs/features/qml_module.prf b/mkspecs/features/qml_module.prf +index 57cfec78..5cbd7c52 100644 +--- a/mkspecs/features/qml_module.prf ++++ b/mkspecs/features/qml_module.prf +@@ -51,7 +51,7 @@ builtin_resources { + # Install rules + qmldir.base = $$qmldir_path + qmldir.files = $$qmldir_file +-qmldir.path = $$[QT_INSTALL_QML]/$$TARGETPATH ++qmldir.path = $$NIX_OUTPUT_QML/$$TARGETPATH + INSTALLS += qmldir + + qmlfiles.base = $$_PRO_FILE_PWD_ +diff --git a/mkspecs/features/qml_plugin.prf b/mkspecs/features/qml_plugin.prf +index ad8ecdf5..804634b2 100644 +--- a/mkspecs/features/qml_plugin.prf ++++ b/mkspecs/features/qml_plugin.prf +@@ -50,7 +50,7 @@ load(qt_build_paths) + + DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH + +-target.path = $$[QT_INSTALL_QML]/$$TARGETPATH ++target.path = $$NIX_OUTPUT_QML/$$TARGETPATH + INSTALLS += target + + # Some final setup +diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf +index 8354f30e..62028fef 100644 +--- a/mkspecs/features/qt_app.prf ++++ b/mkspecs/features/qt_app.prf +@@ -30,7 +30,7 @@ host_build:force_bootstrap { + target.path = $$[QT_HOST_BINS] + } else { + !build_pass:qtConfig(debug_and_release): CONFIG += release +- target.path = $$[QT_INSTALL_BINS] ++ target.path = $$NIX_OUTPUT_BIN/bin + CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable + } + INSTALLS += target +diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf +index 3bb3823a..655b7b7d 100644 +--- a/mkspecs/features/qt_build_paths.prf ++++ b/mkspecs/features/qt_build_paths.prf +@@ -24,6 +24,6 @@ exists($$MODULE_BASE_INDIR/.git): \ + !force_independent { + # If the module is not built independently, everything ends up in qtbase. + # This is the case in non-prefix builds, except for selected modules. +- MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX] +- MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX] ++ MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT ++ MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT + } +diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf +index caecb68a..dc5c2178 100644 +--- a/mkspecs/features/qt_common.prf ++++ b/mkspecs/features/qt_common.prf +@@ -25,37 +25,6 @@ contains(TEMPLATE, .*lib) { + if(!host_build|!cross_compile):qtConfig(reduce_exports): CONFIG += hide_symbols + unix:qtConfig(reduce_relocations): CONFIG += bsymbolic_functions + qtConfig(separate_debug_info): CONFIG += separate_debug_info +- +- !isEmpty(_QMAKE_SUPER_CACHE_): \ +- rplbase = $$dirname(_QMAKE_SUPER_CACHE_)/[^/][^/]* +- else: \ +- rplbase = $$MODULE_BASE_OUTDIR +- host_build { +- qqt_libdir = \$\$\$\$[QT_HOST_LIBS] +- qt_libdir = $$[QT_HOST_LIBS] +- } else { +- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS] +- qt_libdir = $$[QT_INSTALL_LIBS] +- } +- contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) { +- lib_replace0.match = $$rplbase/lib/ +- lib_replace0.replace = $$qqt_libdir/ +- lib_replace0.CONFIG = path +- QMAKE_PRL_INSTALL_REPLACE += lib_replace0 +- lib_replace.match = "[^ ']*$$rplbase/lib" +- lib_replace.replace = +- } else { +- lib_replace.match = $$rplbase/lib +- lib_replace.replace = $$qqt_libdir +- } +- lib_replace.CONFIG = path +- QMAKE_PRL_INSTALL_REPLACE += lib_replace +- !equals(qt_libdir, $$rplbase/lib) { +- qtlibdir_replace.match = $$qt_libdir +- qtlibdir_replace.replace = $$qqt_libdir +- qtlibdir_replace.CONFIG = path +- QMAKE_PRL_INSTALL_REPLACE += qtlibdir_replace +- } + } + + # The remainder of this file must not apply to host tools/libraries, +diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf +index 3b74cd4d..6bfbbe6e 100644 +--- a/mkspecs/features/qt_docs.prf ++++ b/mkspecs/features/qt_docs.prf +@@ -45,7 +45,7 @@ QMAKE_DOCS_OUTPUTDIR = $$QMAKE_DOCS_BASE_OUTDIR/$$QMAKE_DOCS_TARGETDIR + + QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR) + !build_online_docs: \ +- QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS]) ++ QDOC += -installdir $$shell_quote($$NIX_OUTPUT_DOC) + PREP_DOC_INDEXES = + DOC_INDEXES = + !isEmpty(QTREPOS) { +@@ -64,8 +64,8 @@ DOC_INDEXES = + DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc) + } else { + prepare_docs: \ +- PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) +- DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) ++ PREP_DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) ++ DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) + } + + qtattributionsscanner.target = qtattributionsscanner +@@ -88,12 +88,12 @@ prepare_docs { + qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch) + + inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR +- inst_html_docs.path = $$[QT_INSTALL_DOCS] ++ inst_html_docs.path = $$NIX_OUTPUT_DOC + inst_html_docs.CONFIG += no_check_exist directory no_default_install no_build + INSTALLS += inst_html_docs + + inst_qch_docs.files = $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch +- inst_qch_docs.path = $$[QT_INSTALL_DOCS] ++ inst_qch_docs.path = $$NIX_OUTPUT_DOC + inst_qch_docs.CONFIG += no_check_exist no_default_install no_build + INSTALLS += inst_qch_docs + +diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf +index 43b58817..e635b8f6 100644 +--- a/mkspecs/features/qt_example_installs.prf ++++ b/mkspecs/features/qt_example_installs.prf +@@ -88,7 +88,7 @@ sourcefiles += \ + $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \ + $$DBUS_ADAPTORS $$DBUS_INTERFACES + addInstallFiles(sources.files, $$sourcefiles) +-sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase ++sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase + INSTALLS += sources + + check_examples { +diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf +index 1903e509..ae7b5859 100644 +--- a/mkspecs/features/qt_functions.prf ++++ b/mkspecs/features/qt_functions.prf +@@ -69,7 +69,7 @@ defineTest(qtHaveModule) { + defineTest(qtPrepareTool) { + cmd = $$eval(QT_TOOL.$${2}.binary) + isEmpty(cmd) { +- cmd = $$[QT_HOST_BINS]/$$2 ++ cmd = $$system("command -v $$2") + exists($${cmd}.pl) { + $${1}_EXE = $${cmd}.pl + cmd = perl -w $$system_path($${cmd}.pl) +diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf +index 1ebca173..b784441d 100644 +--- a/mkspecs/features/qt_installs.prf ++++ b/mkspecs/features/qt_installs.prf +@@ -12,16 +12,10 @@ + #library + !qt_no_install_library { + win32 { +- host_build: \ +- dlltarget.path = $$[QT_HOST_BINS] +- else: \ +- dlltarget.path = $$[QT_INSTALL_BINS] ++ dlltarget.path = $$NIX_OUTPUT_BIN/bin + INSTALLS += dlltarget + } +- host_build: \ +- target.path = $$[QT_HOST_LIBS] +- else: \ +- target.path = $$[QT_INSTALL_LIBS] ++ target.path = $$NIX_OUTPUT_OUT/lib + !static: target.CONFIG = no_dll + INSTALLS += target + } +@@ -29,35 +23,35 @@ + #headers + qt_install_headers { + gen_headers.files = $$SYNCQT.GENERATED_HEADER_FILES +- gen_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME ++ gen_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME + INSTALLS += gen_headers + + targ_headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.INJECTED_HEADER_FILES +- targ_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME ++ targ_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME + INSTALLS += targ_headers + + private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES $$SYNCQT.INJECTED_PRIVATE_HEADER_FILES +- private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private ++ private_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private + generated_privates: \ + private_headers.CONFIG += no_check_exist + INSTALLS += private_headers + + qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES +- qpa_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa ++ qpa_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa + INSTALLS += qpa_headers + } + + #module + qt_install_module { + !isEmpty(MODULE_PRI) { +- pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules ++ pritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules + pritarget.files = $$MODULE_PRI + INSTALLS += pritarget + } else: isEmpty(MODULE_PRIVATE_PRI) { + warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects.") + } + !isEmpty(MODULE_PRIVATE_PRI) { +- privpritarget.path = $$[QT_HOST_DATA]/mkspecs/modules ++ privpritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules + privpritarget.files = $$MODULE_PRIVATE_PRI + INSTALLS += privpritarget + } +diff --git a/mkspecs/features/qt_plugin.prf b/mkspecs/features/qt_plugin.prf +index 40528a65..903f7952 100644 +--- a/mkspecs/features/qt_plugin.prf ++++ b/mkspecs/features/qt_plugin.prf +@@ -88,7 +88,7 @@ CONFIG(static, static|shared)|prefix_build { + } + } + +-target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE ++target.path = $$NIX_OUTPUT_PLUGIN/$$PLUGIN_TYPE + INSTALLS += target + + TARGET = $$qt5LibraryTarget($$TARGET) +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-cmake.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-cmake.patch new file mode 100644 index 00000000000..73459af1649 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-cmake.patch @@ -0,0 +1,194 @@ +From 689670949eac83e1ba76425a1fc17efeb920eff1 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:34:28 -0500 +Subject: [PATCH 04/10] qtbase-cmake + +--- + mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 2 +- + mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in | 4 ++-- + src/corelib/Qt5CoreConfigExtras.cmake.in | 10 +++++----- + src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in | 2 +- + .../Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in | 2 +- + src/dbus/Qt5DBusConfigExtras.cmake.in | 12 ++---------- + src/gui/Qt5GuiConfigExtras.cmake.in | 6 +++--- + src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- + 8 files changed, 16 insertions(+), 24 deletions(-) + +diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +index c60ef16e..e354ab91 100644 +--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in ++++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +@@ -278,7 +278,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) + set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) + +- set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") ++ set(imported_location \"${PLUGIN_LOCATION}\") + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) + set_target_properties(Qt5::${Plugin} PROPERTIES + \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} +diff --git a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in +index 5baf0fdb..3583745a 100644 +--- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in ++++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in +@@ -2,10 +2,10 @@ + add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED) + + !!IF !isEmpty(CMAKE_RELEASE_TYPE) +-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\") ++_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_RELEASE}\") + !!ENDIF + !!IF !isEmpty(CMAKE_DEBUG_TYPE) +-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\") ++_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_DEBUG}\") + !!ENDIF + + list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME) +diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in +index e0652fdc..450b2a2d 100644 +--- a/src/corelib/Qt5CoreConfigExtras.cmake.in ++++ b/src/corelib/Qt5CoreConfigExtras.cmake.in +@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qmake) + add_executable(Qt5::qmake IMPORTED) + + !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") + !!ELSE + set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") + !!ENDIF +@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::moc) + add_executable(Qt5::moc IMPORTED) + + !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") + !!ELSE + set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") + !!ENDIF +@@ -35,7 +35,7 @@ if (NOT TARGET Qt5::rcc) + add_executable(Qt5::rcc IMPORTED) + + !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") + !!ELSE + set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") + !!ENDIF +@@ -116,7 +116,7 @@ if (NOT TARGET Qt5::WinMain) + !!IF !isEmpty(CMAKE_RELEASE_TYPE) + set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") + !!ELSE + set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") + !!ENDIF +@@ -130,7 +130,7 @@ if (NOT TARGET Qt5::WinMain) + set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) + + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") + !!ELSE + set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") + !!ENDIF +diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in +index c357237d..6f0c75de 100644 +--- a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in ++++ b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in +@@ -1,6 +1,6 @@ + + !!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE) +-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") ++set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") + !!ELSE + set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\") + !!ENDIF +diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in +index 706304cf..546420f6 100644 +--- a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in ++++ b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in +@@ -1,6 +1,6 @@ + + !!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE) +-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") ++set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") + !!ELSE + set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\") + !!ENDIF +diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in +index 1d947159..b36865fc 100644 +--- a/src/dbus/Qt5DBusConfigExtras.cmake.in ++++ b/src/dbus/Qt5DBusConfigExtras.cmake.in +@@ -2,11 +2,7 @@ + if (NOT TARGET Qt5::qdbuscpp2xml) + add_executable(Qt5::qdbuscpp2xml IMPORTED) + +-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") +-!!ELSE +- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") +-!!ENDIF ++ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") + _qt5_DBus_check_file_exists(${imported_location}) + + set_target_properties(Qt5::qdbuscpp2xml PROPERTIES +@@ -17,11 +13,7 @@ endif() + if (NOT TARGET Qt5::qdbusxml2cpp) + add_executable(Qt5::qdbusxml2cpp IMPORTED) + +-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") +-!!ELSE +- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") +-!!ENDIF ++ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") + _qt5_DBus_check_file_exists(${imported_location}) + + set_target_properties(Qt5::qdbusxml2cpp PROPERTIES +diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in +index 84dbbfeb..8ad0720c 100644 +--- a/src/gui/Qt5GuiConfigExtras.cmake.in ++++ b/src/gui/Qt5GuiConfigExtras.cmake.in +@@ -2,7 +2,7 @@ + !!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE) + + !!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) +-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\") ++set(Qt5Gui_EGL_INCLUDE_DIRS \"$$NIX_OUTPUT_DEV/$$CMAKE_INCLUDE_DIR/QtANGLE\") + !!ELSE + set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\") + !!ENDIF +@@ -17,13 +17,13 @@ macro(_populate_qt5gui_gl_target_properties TargetName Configuration LIB_LOCATIO + set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) + + !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") ++ set(imported_location \"$$NIX_OUTPUT_OUT/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") + !!ELSE + set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") + !!ENDIF + + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") ++ set(imported_implib \"$$NIX_OUTPUT_OUT/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") + !!ELSE + set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") + !!ENDIF +diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in +index 99d87e2e..a4eab2aa 100644 +--- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in ++++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in +@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::uic) + add_executable(Qt5::uic IMPORTED) + + !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") + !!ELSE + set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") + !!ENDIF +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-gtk3.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-gtk3.patch new file mode 100644 index 00000000000..9e82a2eeef9 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-gtk3.patch @@ -0,0 +1,48 @@ +From b4542d244adc118e8a84ee4ae1d737b5205da1e3 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:35:33 -0500 +Subject: [PATCH 05/10] qtbase-gtk3 + +--- + src/plugins/platformthemes/gtk3/main.cpp | 17 ++++++++++++++++- + 1 file changed, 16 insertions(+), 1 deletion(-) + +diff --git a/src/plugins/platformthemes/gtk3/main.cpp b/src/plugins/platformthemes/gtk3/main.cpp +index fb1c425d..bb8bab97 100644 +--- a/src/plugins/platformthemes/gtk3/main.cpp ++++ b/src/plugins/platformthemes/gtk3/main.cpp +@@ -39,6 +39,7 @@ + + #include + #include "qgtk3theme.h" ++#include + + QT_BEGIN_NAMESPACE + +@@ -54,8 +55,22 @@ public: + QPlatformTheme *QGtk3ThemePlugin::create(const QString &key, const QStringList ¶ms) + { + Q_UNUSED(params); +- if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) ++ if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) { ++ ++#ifdef NIXPKGS_QGTK3_XDG_DATA_DIRS ++ QStringList XDG_DATA_DIRS = QFile::decodeName(qgetenv("XDG_DATA_DIRS")).split(':'); ++ XDG_DATA_DIRS << QLatin1String(NIXPKGS_QGTK3_XDG_DATA_DIRS); ++ qputenv("XDG_DATA_DIRS", QFile::encodeName(XDG_DATA_DIRS.join(':'))); ++#endif ++ ++#ifdef NIXPKGS_QGTK3_GIO_EXTRA_MODULES ++ QStringList GIO_EXTRA_MODULES = QFile::decodeName(qgetenv("GIO_EXTRA_MODULES")).split(':'); ++ GIO_EXTRA_MODULES << QLatin1String(NIXPKGS_QGTK3_GIO_EXTRA_MODULES); ++ qputenv("GIO_EXTRA_MODULES", QFile::encodeName(GIO_EXTRA_MODULES.join(':'))); ++#endif ++ + return new QGtk3Theme; ++ } + + return 0; + } +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-xcursor.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-xcursor.patch new file mode 100644 index 00000000000..21bb2408a3e --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-xcursor.patch @@ -0,0 +1,29 @@ +From 6dfdf2044bc8a0212b14414c4b9d9c1bfa5c1e6b Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:35:58 -0500 +Subject: [PATCH 06/10] qtbase-xcursor + +--- + src/plugins/platforms/xcb/qxcbcursor.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp +index fbadab4d..c83ce0af 100644 +--- a/src/plugins/platforms/xcb/qxcbcursor.cpp ++++ b/src/plugins/platforms/xcb/qxcbcursor.cpp +@@ -317,10 +317,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen) + #if QT_CONFIG(xcb_xlib) && QT_CONFIG(library) + static bool function_ptrs_not_initialized = true; + if (function_ptrs_not_initialized) { +- QLibrary xcursorLib(QLatin1String("Xcursor"), 1); ++ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1); + bool xcursorFound = xcursorLib.load(); + if (!xcursorFound) { // try without the version number +- xcursorLib.setFileName(QLatin1String("Xcursor")); ++ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR)); + xcursorFound = xcursorLib.load(); + } + if (xcursorFound) { +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcompose.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcompose.patch new file mode 100644 index 00000000000..83d11494a01 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcompose.patch @@ -0,0 +1,30 @@ +From 7211024a1d54232f9a6f91f7aac467e0e8893691 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:36:10 -0500 +Subject: [PATCH 07/10] qtbase-xcompose + +--- + .../compose/generator/qtablegenerator.cpp | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp +index b5a0a5bb..6c20305f 100644 +--- a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp ++++ b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp +@@ -265,12 +265,9 @@ void TableGenerator::initPossibleLocations() + m_possibleLocations.reserve(7); + if (qEnvironmentVariableIsSet("QTCOMPOSE")) + m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE"))); +- m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale")); +- m_possibleLocations.append(QStringLiteral("/usr/local/share/X11/locale")); +- m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale")); +- m_possibleLocations.append(QStringLiteral("/usr/local/lib/X11/locale")); + m_possibleLocations.append(QStringLiteral(X11_PREFIX "/share/X11/locale")); + m_possibleLocations.append(QStringLiteral(X11_PREFIX "/lib/X11/locale")); ++ m_possibleLocations.append(QLatin1String(NIXPKGS_QTCOMPOSE)); + } + + QString TableGenerator::findComposeFile() +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-tzdir.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-tzdir.patch new file mode 100644 index 00000000000..5050ffea90d --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-tzdir.patch @@ -0,0 +1,51 @@ +From f24621e540d5511802013aa8e8972c9e060c953a Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:36:25 -0500 +Subject: [PATCH 08/10] qtbase-tzdir + +--- + src/corelib/tools/qtimezoneprivate_tz.cpp | 20 ++++++++++++++------ + 1 file changed, 14 insertions(+), 6 deletions(-) + +diff --git a/src/corelib/tools/qtimezoneprivate_tz.cpp b/src/corelib/tools/qtimezoneprivate_tz.cpp +index 7d85bc07..c13d99b8 100644 +--- a/src/corelib/tools/qtimezoneprivate_tz.cpp ++++ b/src/corelib/tools/qtimezoneprivate_tz.cpp +@@ -71,7 +71,11 @@ typedef QHash QTzTimeZoneHash; + // Parse zone.tab table, assume lists all installed zones, if not will need to read directories + static QTzTimeZoneHash loadTzTimeZones() + { +- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); ++ // Try TZDIR first, in case we're running on NixOS. ++ QString path = QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/zone.tab"); ++ // Fallback to traditional paths in case we are not on NixOS. ++ if (!QFile::exists(path)) ++ path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); + if (!QFile::exists(path)) + path = QStringLiteral("/usr/lib/zoneinfo/zone.tab"); + +@@ -650,12 +654,16 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId) + if (!tzif.open(QIODevice::ReadOnly)) + return; + } else { +- // Open named tz, try modern path first, if fails try legacy path +- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ // Try TZDIR first, in case we're running on NixOS ++ tzif.setFileName(QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/") + QString::fromLocal8Bit(ianaId)); + if (!tzif.open(QIODevice::ReadOnly)) { +- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); +- if (!tzif.open(QIODevice::ReadOnly)) +- return; ++ // Open named tz, try modern path first, if fails try legacy path ++ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ if (!tzif.open(QIODevice::ReadOnly)) { ++ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ if (!tzif.open(QIODevice::ReadOnly)) ++ return; ++ } + } + } + +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-qtpluginpath.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-qtpluginpath.patch new file mode 100644 index 00000000000..7226617872f --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-qtpluginpath.patch @@ -0,0 +1,32 @@ +From 40616bf4afacadca360083d7d365914f8f8573e5 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:36:41 -0500 +Subject: [PATCH 09/10] qtbase-qtpluginpath + +--- + src/corelib/kernel/qcoreapplication.cpp | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp +index 8652c456..74562272 100644 +--- a/src/corelib/kernel/qcoreapplication.cpp ++++ b/src/corelib/kernel/qcoreapplication.cpp +@@ -2690,6 +2690,15 @@ QStringList QCoreApplication::libraryPaths() + QStringList *app_libpaths = new QStringList; + coreappdata()->app_libpaths.reset(app_libpaths); + ++ // Add library paths derived from PATH ++ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':'); ++ const QString plugindir = QStringLiteral("../" NIXPKGS_QT_PLUGIN_PREFIX); ++ for (const QString &path: paths) { ++ if (!path.isEmpty()) { ++ app_libpaths->append(QDir::cleanPath(path + QDir::separator() + plugindir)); ++ } ++ } ++ + QString libPathEnv = qEnvironmentVariable("QT_PLUGIN_PATH"); + if (!libPathEnv.isEmpty()) { + QStringList paths = libPathEnv.split(QDir::listSeparator(), QString::SkipEmptyParts); +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-assert.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-assert.patch new file mode 100644 index 00000000000..943667b26e0 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-assert.patch @@ -0,0 +1,32 @@ +From 60a2d764708234a06828c76d91db77565e08d872 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:37:04 -0500 +Subject: [PATCH 10/10] qtbase-assert + +--- + src/testlib/qtestassert.h | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/testlib/qtestassert.h b/src/testlib/qtestassert.h +index 6498ea84..d821ced7 100644 +--- a/src/testlib/qtestassert.h ++++ b/src/testlib/qtestassert.h +@@ -44,10 +44,13 @@ + + QT_BEGIN_NAMESPACE + +- ++#if defined(QT_NO_DEBUG) && !defined(QT_FORCE_ASSERTS) ++#define QTEST_ASSERT(cond) do { } while ((false) && (cond)) ++#define QTEST_ASSERT_X(cond, where, what) do { } while ((false) && (cond)) ++#else + #define QTEST_ASSERT(cond) do { if (!(cond)) qt_assert(#cond,__FILE__,__LINE__); } while (false) +- + #define QTEST_ASSERT_X(cond, where, what) do { if (!(cond)) qt_assert_x(where, what,__FILE__,__LINE__); } while (false) ++#endif + + QT_END_NAMESPACE + +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtwayland-fix-webengine-freezeups-1.patch b/pkgs/development/libraries/qt-5/5.12/qtwayland-fix-webengine-freezeups-1.patch deleted file mode 100644 index 2e5a890be05..00000000000 --- a/pkgs/development/libraries/qt-5/5.12/qtwayland-fix-webengine-freezeups-1.patch +++ /dev/null @@ -1,139 +0,0 @@ -From 9aced4f9571e74cc57b853598aa4b3f38d66363d Mon Sep 17 00:00:00 2001 -From: Johan Klokkhammer Helsing -Date: Thu, 1 Nov 2018 13:48:52 +0100 -Subject: [PATCH 1/2] Client: Don't be exposed if we want to create a sub or - shell surface - -Because some shells don't allow attaching buffers before configure, we need to -not be exposed until we know that we don't want a shell surface. - -Change-Id: Ida7101a99f953d02cf6401e4ea8d28cfabd6e102 -Reviewed-by: Giulio Camuffo -Reviewed-by: David Edmundson ---- - src/client/qwaylanddisplay.cpp | 13 ++++++------- - src/client/qwaylanddisplay_p.h | 6 +++--- - src/client/qwaylandwindow.cpp | 18 +++++++++++++++--- - 3 files changed, 24 insertions(+), 13 deletions(-) - -diff --git a/src/client/qwaylanddisplay.cpp b/src/client/qwaylanddisplay.cpp -index a2957e0d..f2bd3160 100644 ---- a/src/client/qwaylanddisplay.cpp -+++ b/src/client/qwaylanddisplay.cpp -@@ -88,13 +88,6 @@ struct wl_surface *QWaylandDisplay::createSurface(void *handle) - return surface; - } - --QWaylandShellSurface *QWaylandDisplay::createShellSurface(QWaylandWindow *window) --{ -- if (!mWaylandIntegration->shellIntegration()) -- return nullptr; -- return mWaylandIntegration->shellIntegration()->createShellSurface(window); --} -- - struct ::wl_region *QWaylandDisplay::createRegion(const QRegion &qregion) - { - struct ::wl_region *region = mCompositor.create_region(); -@@ -108,12 +101,18 @@ struct ::wl_region *QWaylandDisplay::createRegion(const QRegion &qregion) - ::wl_subsurface *QWaylandDisplay::createSubSurface(QWaylandWindow *window, QWaylandWindow *parent) - { - if (!mSubCompositor) { -+ qCWarning(lcQpaWayland) << "Can't create subsurface, not supported by the compositor."; - return nullptr; - } - - return mSubCompositor->get_subsurface(window->object(), parent->object()); - } - -+QWaylandShellIntegration *QWaylandDisplay::shellIntegration() const -+{ -+ return mWaylandIntegration->shellIntegration(); -+} -+ - QWaylandClientBufferIntegration * QWaylandDisplay::clientBufferIntegration() const - { - return mWaylandIntegration->clientBufferIntegration(); -diff --git a/src/client/qwaylanddisplay_p.h b/src/client/qwaylanddisplay_p.h -index 0dd8d7af..cc6a0a72 100644 ---- a/src/client/qwaylanddisplay_p.h -+++ b/src/client/qwaylanddisplay_p.h -@@ -94,7 +94,7 @@ class QWaylandQtKeyExtension; - class QWaylandWindow; - class QWaylandIntegration; - class QWaylandHardwareIntegration; --class QWaylandShellSurface; -+class QWaylandShellIntegration; - class QWaylandCursorTheme; - - typedef void (*RegistryListener)(void *data, -@@ -115,13 +115,13 @@ public: - QWaylandScreen *screenForOutput(struct wl_output *output) const; - - struct wl_surface *createSurface(void *handle); -- QWaylandShellSurface *createShellSurface(QWaylandWindow *window); - struct ::wl_region *createRegion(const QRegion &qregion); - struct ::wl_subsurface *createSubSurface(QWaylandWindow *window, QWaylandWindow *parent); - -+ QWaylandShellIntegration *shellIntegration() const; - QWaylandClientBufferIntegration *clientBufferIntegration() const; -- - QWaylandWindowManagerIntegration *windowManagerIntegration() const; -+ - #if QT_CONFIG(cursor) - void setCursor(struct wl_buffer *buffer, struct wl_cursor_image *image, qreal dpr); - void setCursor(const QSharedPointer &buffer, const QPoint &hotSpot, qreal dpr); -diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp -index 4ac2ca51..600ea1df 100644 ---- a/src/client/qwaylandwindow.cpp -+++ b/src/client/qwaylandwindow.cpp -@@ -50,6 +50,7 @@ - #include "qwaylandnativeinterface_p.h" - #include "qwaylanddecorationfactory_p.h" - #include "qwaylandshmbackingstore_p.h" -+#include "qwaylandshellintegration_p.h" - - #if QT_CONFIG(wayland_datadevice) - #include "qwaylanddatadevice_p.h" -@@ -138,8 +139,9 @@ void QWaylandWindow::initWindow() - } - } else if (shouldCreateShellSurface()) { - Q_ASSERT(!mShellSurface); -+ Q_ASSERT(mDisplay->shellIntegration()); - -- mShellSurface = mDisplay->createShellSurface(this); -+ mShellSurface = mDisplay->shellIntegration()->createShellSurface(this); - if (mShellSurface) { - // Set initial surface title - setWindowTitle(window()->title()); -@@ -211,6 +213,9 @@ void QWaylandWindow::initializeWlSurface() - - bool QWaylandWindow::shouldCreateShellSurface() const - { -+ if (!mDisplay->shellIntegration()) -+ return false; -+ - if (shouldCreateSubSurface()) - return false; - -@@ -963,9 +968,16 @@ void QWaylandWindow::unfocus() - - bool QWaylandWindow::isExposed() const - { -+ if (!window()->isVisible()) -+ return false; -+ - if (mShellSurface) -- return window()->isVisible() && mShellSurface->isExposed(); -- return QPlatformWindow::isExposed(); -+ return mShellSurface->isExposed(); -+ -+ if (mSubSurfaceWindow) -+ return mSubSurfaceWindow->parent()->isExposed(); -+ -+ return !(shouldCreateShellSurface() || shouldCreateSubSurface()); - } - - bool QWaylandWindow::isActive() const --- -2.22.0 - diff --git a/pkgs/development/libraries/qt-5/5.12/qtwayland-fix-webengine-freezeups-2.patch b/pkgs/development/libraries/qt-5/5.12/qtwayland-fix-webengine-freezeups-2.patch deleted file mode 100644 index b1a8d6c9ae0..00000000000 --- a/pkgs/development/libraries/qt-5/5.12/qtwayland-fix-webengine-freezeups-2.patch +++ /dev/null @@ -1,493 +0,0 @@ -From d85beeb65820d6e5733f88af63b15f77d03aa6ba Mon Sep 17 00:00:00 2001 -From: Johan Klokkhammer Helsing -Date: Mon, 28 Jan 2019 09:48:26 +0100 -Subject: [PATCH 2/2] Client: Full implementation for frame callbacks (second - try) - -The Wayland plugin now takes full control over delivering update request and -implement frame callbacks for both egl and shm. - -[ChangeLog][QPA plugin] The non-blocking version of eglSwapBuffers is now used, if -supported. This fixed a bug where minimized windows would block the event loop. - -[ChangeLog][QPA plugin] Windows that don't get frame callbacks from the -compositor within 100 ms are now set as not exposed. This should stop most -clients from rendering unnecessary frames to minimized or hidden windows. - -Also, when we relied on the QPA version of requestUpdate, we would sometimes -deliver one update request while we were waiting for a frame callback. When we -implement the fallback timer ourselves we can make sure we only deliver the -fallback if there are no pending frame callbacks. - -QtQuick and other applications often depend on blocking swapBuffers to throttle -animations. If the context's surface format has a non-zero swapInterval, try to -emulate a blocking swap. - -Fixes: QTBUG-69077 -Change-Id: I3c6964f31a16e9aff70b8ec3c5340e640a30fef2 -Reviewed-by: Paul Olav Tvete ---- - src/client/qwaylanddisplay.cpp | 38 +++- - src/client/qwaylanddisplay_p.h | 3 + - src/client/qwaylandwindow.cpp | 180 +++++++++++++++--- - src/client/qwaylandwindow_p.h | 17 +- - .../client/wayland-egl/qwaylandglcontext.cpp | 25 ++- - .../qwaylandxcompositeeglcontext.cpp | 2 +- - .../qwaylandxcompositeglxcontext.cpp | 2 +- - 7 files changed, 218 insertions(+), 49 deletions(-) - -diff --git a/src/client/qwaylanddisplay.cpp b/src/client/qwaylanddisplay.cpp -index f2bd3160..82003a30 100644 ---- a/src/client/qwaylanddisplay.cpp -+++ b/src/client/qwaylanddisplay.cpp -@@ -68,6 +68,8 @@ - - #include - -+#include -+ - #include - #include - -@@ -190,7 +192,6 @@ void QWaylandDisplay::flushRequests() - wl_display_flush(mDisplay); - } - -- - void QWaylandDisplay::blockingReadEvents() - { - if (wl_display_dispatch(mDisplay) < 0) { -@@ -204,6 +205,41 @@ void QWaylandDisplay::exitWithError() - ::exit(1); - } - -+wl_event_queue *QWaylandDisplay::createEventQueue() -+{ -+ return wl_display_create_queue(mDisplay); -+} -+ -+void QWaylandDisplay::dispatchQueueWhile(wl_event_queue *queue, std::function condition, int timeout) -+{ -+ if (!condition()) -+ return; -+ -+ QElapsedTimer timer; -+ timer.start(); -+ struct pollfd pFd = qt_make_pollfd(wl_display_get_fd(mDisplay), POLLIN); -+ while (timeout == -1 || timer.elapsed() < timeout) { -+ while (wl_display_prepare_read_queue(mDisplay, queue) != 0) -+ wl_display_dispatch_queue_pending(mDisplay, queue); -+ -+ wl_display_flush(mDisplay); -+ -+ const int remaining = qMax(timeout - timer.elapsed(), 0ll); -+ const int pollTimeout = timeout == -1 ? -1 : remaining; -+ if (qt_poll_msecs(&pFd, 1, pollTimeout) > 0) -+ wl_display_read_events(mDisplay); -+ else -+ wl_display_cancel_read(mDisplay); -+ -+ if (wl_display_dispatch_queue_pending(mDisplay, queue) < 0) { -+ checkError(); -+ exitWithError(); -+ } -+ if (!condition()) -+ break; -+ } -+} -+ - QWaylandScreen *QWaylandDisplay::screenForOutput(struct wl_output *output) const - { - for (int i = 0; i < mScreens.size(); ++i) { -diff --git a/src/client/qwaylanddisplay_p.h b/src/client/qwaylanddisplay_p.h -index cc6a0a72..fa8b4c3f 100644 ---- a/src/client/qwaylanddisplay_p.h -+++ b/src/client/qwaylanddisplay_p.h -@@ -182,6 +182,9 @@ public: - void handleKeyboardFocusChanged(QWaylandInputDevice *inputDevice); - void handleWindowDestroyed(QWaylandWindow *window); - -+ wl_event_queue *createEventQueue(); -+ void dispatchQueueWhile(wl_event_queue *queue, std::function condition, int timeout = -1); -+ - public slots: - void blockingReadEvents(); - void flushRequests(); -diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp -index 600ea1df..4d399f8f 100644 ---- a/src/client/qwaylandwindow.cpp -+++ b/src/client/qwaylandwindow.cpp -@@ -67,6 +67,7 @@ - #include - - #include -+#include - - #include - -@@ -81,6 +82,7 @@ QWaylandWindow *QWaylandWindow::mMouseGrab = nullptr; - QWaylandWindow::QWaylandWindow(QWindow *window) - : QPlatformWindow(window) - , mDisplay(waylandScreen()->display()) -+ , mFrameQueue(mDisplay->createEventQueue()) - , mResizeAfterSwap(qEnvironmentVariableIsSet("QT_WAYLAND_RESIZE_AFTER_SWAP")) - { - static WId id = 1; -@@ -363,6 +365,8 @@ void QWaylandWindow::sendExposeEvent(const QRect &rect) - { - if (!(mShellSurface && mShellSurface->handleExpose(rect))) - QWindowSystemInterface::handleExposeEvent(window(), rect); -+ else -+ qCDebug(lcQpaWayland) << "sendExposeEvent: intercepted by shell extension, not sending"; - mLastExposeGeometry = rect; - } - -@@ -547,18 +551,11 @@ void QWaylandWindow::handleScreenRemoved(QScreen *qScreen) - void QWaylandWindow::attach(QWaylandBuffer *buffer, int x, int y) - { - Q_ASSERT(!buffer->committed()); -- if (mFrameCallback) { -- wl_callback_destroy(mFrameCallback); -- mFrameCallback = nullptr; -- } -- - if (buffer) { -- mFrameCallback = frame(); -- wl_callback_add_listener(mFrameCallback, &QWaylandWindow::callbackListener, this); -- mWaitingForFrameSync = true; -+ handleUpdate(); - buffer->setBusy(); - -- attach(buffer->buffer(), x, y); -+ QtWayland::wl_surface::attach(buffer->buffer(), x, y); - } else { - QtWayland::wl_surface::attach(nullptr, 0, 0); - } -@@ -614,32 +611,61 @@ void QWaylandWindow::commit(QWaylandBuffer *buffer, const QRegion &damage) - } - - const wl_callback_listener QWaylandWindow::callbackListener = { -- QWaylandWindow::frameCallback -+ [](void *data, wl_callback *callback, uint32_t time) { -+ Q_UNUSED(callback); -+ Q_UNUSED(time); -+ auto *window = static_cast(data); -+ if (window->thread() != QThread::currentThread()) -+ QMetaObject::invokeMethod(window, [=] { window->handleFrameCallback(); }, Qt::QueuedConnection); -+ else -+ window->handleFrameCallback(); -+ } - }; - --void QWaylandWindow::frameCallback(void *data, struct wl_callback *callback, uint32_t time) -+void QWaylandWindow::handleFrameCallback() - { -- Q_UNUSED(time); -- Q_UNUSED(callback); -- QWaylandWindow *self = static_cast(data); -+ bool wasExposed = isExposed(); - -- self->mWaitingForFrameSync = false; -- if (self->mUpdateRequested) { -- self->mUpdateRequested = false; -- self->deliverUpdateRequest(); -+ if (mFrameCallbackTimerId != -1) { -+ killTimer(mFrameCallbackTimerId); -+ mFrameCallbackTimerId = -1; - } -+ -+ mWaitingForFrameCallback = false; -+ mFrameCallbackTimedOut = false; -+ -+ if (!wasExposed && isExposed()) -+ sendExposeEvent(QRect(QPoint(), geometry().size())); -+ if (wasExposed && hasPendingUpdateRequest()) -+ deliverUpdateRequest(); - } - - QMutex QWaylandWindow::mFrameSyncMutex; - --void QWaylandWindow::waitForFrameSync() -+bool QWaylandWindow::waitForFrameSync(int timeout) - { - QMutexLocker locker(&mFrameSyncMutex); -- if (!mWaitingForFrameSync) -- return; -- mDisplay->flushRequests(); -- while (mWaitingForFrameSync) -- mDisplay->blockingReadEvents(); -+ if (!mWaitingForFrameCallback) -+ return true; -+ -+ wl_proxy_set_queue(reinterpret_cast(mFrameCallback), mFrameQueue); -+ mDisplay->dispatchQueueWhile(mFrameQueue, [&]() { return mWaitingForFrameCallback; }, timeout); -+ -+ if (mWaitingForFrameCallback) { -+ qCDebug(lcWaylandBackingstore) << "Didn't receive frame callback in time, window should now be inexposed"; -+ mFrameCallbackTimedOut = true; -+ mWaitingForUpdate = false; -+ sendExposeEvent(QRect()); -+ } -+ -+ // Stop current frame timer if any, can't use killTimer directly, because we might be on a diffent thread -+ if (mFrameCallbackTimerId != -1) { -+ int id = mFrameCallbackTimerId; -+ mFrameCallbackTimerId = -1; -+ QMetaObject::invokeMethod(this, [=] { killTimer(id); }, Qt::QueuedConnection); -+ } -+ -+ return !mWaitingForFrameCallback; - } - - QMargins QWaylandWindow::frameMargins() const -@@ -971,6 +997,9 @@ bool QWaylandWindow::isExposed() const - if (!window()->isVisible()) - return false; - -+ if (mFrameCallbackTimedOut) -+ return false; -+ - if (mShellSurface) - return mShellSurface->isExposed(); - -@@ -1046,12 +1075,107 @@ QVariant QWaylandWindow::property(const QString &name, const QVariant &defaultVa - return m_properties.value(name, defaultValue); - } - -+void QWaylandWindow::timerEvent(QTimerEvent *event) -+{ -+ if (event->timerId() == mFallbackUpdateTimerId) { -+ killTimer(mFallbackUpdateTimerId); -+ mFallbackUpdateTimerId = -1; -+ qCDebug(lcWaylandBackingstore) << "mFallbackUpdateTimer timed out"; -+ -+ if (!isExposed()) { -+ qCDebug(lcWaylandBackingstore) << "Fallback update timer: Window not exposed," -+ << "not delivering update request."; -+ return; -+ } -+ -+ if (mWaitingForUpdate && hasPendingUpdateRequest() && !mWaitingForFrameCallback) { -+ qCWarning(lcWaylandBackingstore) << "Delivering update request through fallback timer," -+ << "may not be in sync with display"; -+ deliverUpdateRequest(); -+ } -+ } -+ -+ if (event->timerId() == mFrameCallbackTimerId) { -+ killTimer(mFrameCallbackTimerId); -+ mFrameCallbackTimerId = -1; -+ qCDebug(lcWaylandBackingstore) << "Didn't receive frame callback in time, window should now be inexposed"; -+ mFrameCallbackTimedOut = true; -+ mWaitingForUpdate = false; -+ sendExposeEvent(QRect()); -+ } -+} -+ - void QWaylandWindow::requestUpdate() - { -- if (!mWaitingForFrameSync) -- QPlatformWindow::requestUpdate(); -- else -- mUpdateRequested = true; -+ Q_ASSERT(hasPendingUpdateRequest()); // should be set by QPA -+ -+ // If we have a frame callback all is good and will be taken care of there -+ if (mWaitingForFrameCallback) -+ return; -+ -+ // If we've already called deliverUpdateRequest(), but haven't seen any attach+commit/swap yet -+ if (mWaitingForUpdate) { -+ // Ideally, we should just have returned here, but we're not guaranteed that the client -+ // will actually update, so start this timer to deliver another request update after a while -+ // *IF* the client doesn't update. -+ int fallbackTimeout = 100; -+ mFallbackUpdateTimerId = startTimer(fallbackTimeout); -+ return; -+ } -+ -+ // Some applications (such as Qt Quick) depend on updates being delivered asynchronously, -+ // so use invokeMethod to delay the delivery a bit. -+ QMetaObject::invokeMethod(this, [this] { -+ // Things might have changed in the meantime -+ if (hasPendingUpdateRequest() && !mWaitingForUpdate && !mWaitingForFrameCallback) -+ deliverUpdateRequest(); -+ }, Qt::QueuedConnection); -+} -+ -+// Should be called whenever we commit a buffer (directly through wl_surface.commit or indirectly -+// with eglSwapBuffers) to know when it's time to commit the next one. -+// Can be called from the render thread (without locking anything) so make sure to not make races in this method. -+void QWaylandWindow::handleUpdate() -+{ -+ // TODO: Should sync subsurfaces avoid requesting frame callbacks? -+ -+ if (mFrameCallback) { -+ wl_callback_destroy(mFrameCallback); -+ mFrameCallback = nullptr; -+ } -+ -+ if (mFallbackUpdateTimerId != -1) { -+ // Ideally, we would stop the fallback timer here, but since we're on another thread, -+ // it's not allowed. Instead we set mFallbackUpdateTimer to -1 here, so we'll just -+ // ignore it if it times out before it's cleaned up by the invokeMethod call. -+ int id = mFallbackUpdateTimerId; -+ mFallbackUpdateTimerId = -1; -+ QMetaObject::invokeMethod(this, [=] { killTimer(id); }, Qt::QueuedConnection); -+ } -+ -+ mFrameCallback = frame(); -+ wl_callback_add_listener(mFrameCallback, &QWaylandWindow::callbackListener, this); -+ mWaitingForFrameCallback = true; -+ mWaitingForUpdate = false; -+ -+ // Stop current frame timer if any, can't use killTimer directly, see comment above. -+ if (mFrameCallbackTimerId != -1) { -+ int id = mFrameCallbackTimerId; -+ mFrameCallbackTimerId = -1; -+ QMetaObject::invokeMethod(this, [=] { killTimer(id); }, Qt::QueuedConnection); -+ } -+ -+ // Start a timer for handling the case when the compositor stops sending frame callbacks. -+ QMetaObject::invokeMethod(this, [=] { // Again; can't do it directly -+ if (mWaitingForFrameCallback) -+ mFrameCallbackTimerId = startTimer(100); -+ }, Qt::QueuedConnection); -+} -+ -+void QWaylandWindow::deliverUpdateRequest() -+{ -+ mWaitingForUpdate = true; -+ QPlatformWindow::deliverUpdateRequest(); - } - - void QWaylandWindow::addAttachOffset(const QPoint point) -diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h -index 56ebd3cc..c47123dc 100644 ---- a/src/client/qwaylandwindow_p.h -+++ b/src/client/qwaylandwindow_p.h -@@ -120,7 +120,7 @@ public: - void handleExpose(const QRegion ®ion); - void commit(QWaylandBuffer *buffer, const QRegion &damage); - -- void waitForFrameSync(); -+ bool waitForFrameSync(int timeout); - - QMargins frameMargins() const override; - -@@ -191,7 +191,10 @@ public: - - bool startSystemMove(const QPoint &pos) override; - -+ void timerEvent(QTimerEvent *event) override; - void requestUpdate() override; -+ void handleUpdate(); -+ void deliverUpdateRequest() override; - - public slots: - void applyConfigure(); -@@ -211,10 +214,17 @@ protected: - Qt::MouseButtons mMousePressedInContentArea = Qt::NoButton; - - WId mWindowId; -- bool mWaitingForFrameSync = false; -+ bool mWaitingForFrameCallback = false; -+ bool mFrameCallbackTimedOut = false; // Whether the frame callback has timed out -+ int mFrameCallbackTimerId = -1; // Started on commit, reset on frame callback - struct ::wl_callback *mFrameCallback = nullptr; -+ struct ::wl_event_queue *mFrameQueue = nullptr; - QWaitCondition mFrameSyncWait; - -+ // True when we have called deliverRequestUpdate, but the client has not yet attached a new buffer -+ bool mWaitingForUpdate = false; -+ int mFallbackUpdateTimerId = -1; // Started when waiting for app to commit -+ - QMutex mResizeLock; - bool mWaitingToApplyConfigure = false; - bool mCanResize = true; -@@ -253,11 +263,10 @@ private: - void handleMouseEventWithDecoration(QWaylandInputDevice *inputDevice, const QWaylandPointerEvent &e); - void handleScreenChanged(); - -- bool mUpdateRequested = false; - QRect mLastExposeGeometry; - - static const wl_callback_listener callbackListener; -- static void frameCallback(void *data, struct wl_callback *wl_callback, uint32_t time); -+ void handleFrameCallback(); - - static QMutex mFrameSyncMutex; - static QWaylandWindow *mMouseGrab; -diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp -index e58403ad..30dab408 100644 ---- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp -+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp -@@ -315,7 +315,9 @@ QWaylandGLContext::QWaylandGLContext(EGLDisplay eglDisplay, QWaylandDisplay *dis - mSupportNonBlockingSwap = false; - } - if (!mSupportNonBlockingSwap) { -- qWarning() << "Non-blocking swap buffers not supported. Subsurface rendering can be affected."; -+ qWarning(lcQpaWayland) << "Non-blocking swap buffers not supported." -+ << "Subsurface rendering can be affected." -+ << "It may also cause the event loop to freeze in some situations"; - } - - updateGLFormat(); -@@ -550,20 +552,15 @@ void QWaylandGLContext::swapBuffers(QPlatformSurface *surface) - m_blitter->blit(window); - } - -- -- QWaylandSubSurface *sub = window->subSurfaceWindow(); -- if (sub) { -- QMutexLocker l(sub->syncMutex()); -- -- int si = (sub->isSync() && mSupportNonBlockingSwap) ? 0 : m_format.swapInterval(); -- -- eglSwapInterval(m_eglDisplay, si); -- eglSwapBuffers(m_eglDisplay, eglSurface); -- } else { -- eglSwapInterval(m_eglDisplay, m_format.swapInterval()); -- eglSwapBuffers(m_eglDisplay, eglSurface); -+ int swapInterval = mSupportNonBlockingSwap ? 0 : m_format.swapInterval(); -+ eglSwapInterval(m_eglDisplay, swapInterval); -+ if (swapInterval == 0 && m_format.swapInterval() > 0) { -+ // Emulating a blocking swap -+ glFlush(); // Flush before waiting so we can swap more quickly when the frame event arrives -+ window->waitForFrameSync(100); - } -- -+ window->handleUpdate(); -+ eglSwapBuffers(m_eglDisplay, eglSurface); - - window->setCanResize(true); - } -diff --git a/src/hardwareintegration/client/xcomposite-egl/qwaylandxcompositeeglcontext.cpp b/src/hardwareintegration/client/xcomposite-egl/qwaylandxcompositeeglcontext.cpp -index c07ad534..a6fead95 100644 ---- a/src/hardwareintegration/client/xcomposite-egl/qwaylandxcompositeeglcontext.cpp -+++ b/src/hardwareintegration/client/xcomposite-egl/qwaylandxcompositeeglcontext.cpp -@@ -65,7 +65,7 @@ void QWaylandXCompositeEGLContext::swapBuffers(QPlatformSurface *surface) - QSize size = w->geometry().size(); - - w->commit(w->buffer(), QRegion(0, 0, size.width(), size.height())); -- w->waitForFrameSync(); -+ w->waitForFrameSync(100); - } - - EGLSurface QWaylandXCompositeEGLContext::eglSurfaceForPlatformSurface(QPlatformSurface *surface) -diff --git a/src/hardwareintegration/client/xcomposite-glx/qwaylandxcompositeglxcontext.cpp b/src/hardwareintegration/client/xcomposite-glx/qwaylandxcompositeglxcontext.cpp -index 33ae2e03..35188741 100644 ---- a/src/hardwareintegration/client/xcomposite-glx/qwaylandxcompositeglxcontext.cpp -+++ b/src/hardwareintegration/client/xcomposite-glx/qwaylandxcompositeglxcontext.cpp -@@ -93,7 +93,7 @@ void QWaylandXCompositeGLXContext::swapBuffers(QPlatformSurface *surface) - glXSwapBuffers(m_display, w->xWindow()); - - w->commit(w->buffer(), QRegion(0, 0, size.width(), size.height())); -- w->waitForFrameSync(); -+ w->waitForFrameSync(100); - } - - QFunctionPointer QWaylandXCompositeGLXContext::getProcAddress(const char *procName) --- -2.22.0 - From 7962f8c78b5793f07c456af5e8c742e34098707e Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Wed, 18 Sep 2019 05:40:37 -0500 Subject: [PATCH 3/9] qt512.qtbase: Replace libdir unconditionally --- .../libraries/qt-5/5.12/default.nix | 15 ++-- .../0001-qtbase-mkspecs-mac.patch | 2 +- .../5.12/qtbase.patch.d/0002-qtbase-mac.patch | 2 +- .../qtbase.patch.d/0003-qtbase-mkspecs.patch | 51 ++------------ .../0004-qtbase-replace-libdir.patch | 68 +++++++++++++++++++ ...se-cmake.patch => 0005-qtbase-cmake.patch} | 4 +- ...base-gtk3.patch => 0006-qtbase-gtk3.patch} | 4 +- ...cursor.patch => 0007-qtbase-xcursor.patch} | 4 +- ...mpose.patch => 0008-qtbase-xcompose.patch} | 4 +- ...se-tzdir.patch => 0009-qtbase-tzdir.patch} | 4 +- ...h.patch => 0010-qtbase-qtpluginpath.patch} | 4 +- ...-assert.patch => 0011-qtbase-assert.patch} | 4 +- 12 files changed, 96 insertions(+), 70 deletions(-) create mode 100644 pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch rename pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/{0004-qtbase-cmake.patch => 0005-qtbase-cmake.patch} (98%) rename pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/{0005-qtbase-gtk3.patch => 0006-qtbase-gtk3.patch} (93%) rename pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/{0006-qtbase-xcursor.patch => 0007-qtbase-xcursor.patch} (91%) rename pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/{0007-qtbase-xcompose.patch => 0008-qtbase-xcompose.patch} (93%) rename pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/{0008-qtbase-tzdir.patch => 0009-qtbase-tzdir.patch} (95%) rename pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/{0009-qtbase-qtpluginpath.patch => 0010-qtbase-qtpluginpath.patch} (91%) rename pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/{0010-qtbase-assert.patch => 0011-qtbase-assert.patch} (89%) diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix index e7cb7c37121..47a3589c2f9 100644 --- a/pkgs/development/libraries/qt-5/5.12/default.nix +++ b/pkgs/development/libraries/qt-5/5.12/default.nix @@ -57,13 +57,14 @@ let ] ++ [ ./qtbase.patch.d/0003-qtbase-mkspecs.patch - ./qtbase.patch.d/0004-qtbase-cmake.patch - ./qtbase.patch.d/0005-qtbase-gtk3.patch - ./qtbase.patch.d/0006-qtbase-xcursor.patch - ./qtbase.patch.d/0007-qtbase-xcompose.patch - ./qtbase.patch.d/0008-qtbase-tzdir.patch - ./qtbase.patch.d/0009-qtbase-qtpluginpath.patch - ./qtbase.patch.d/0010-qtbase-assert.patch + ./qtbase.patch.d/0004-qtbase-replace-libdir.patch + ./qtbase.patch.d/0005-qtbase-cmake.patch + ./qtbase.patch.d/0006-qtbase-gtk3.patch + ./qtbase.patch.d/0007-qtbase-xcursor.patch + ./qtbase.patch.d/0008-qtbase-xcompose.patch + ./qtbase.patch.d/0009-qtbase-tzdir.patch + ./qtbase.patch.d/0010-qtbase-qtpluginpath.patch + ./qtbase.patch.d/0011-qtbase-assert.patch ]; qtdeclarative = [ ./qtdeclarative.patch ]; qtscript = [ ./qtscript.patch ]; diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch index 70216a3c636..de3d68357c7 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch @@ -1,7 +1,7 @@ From 58d98b66da5d748d610f053053bd12e42c97d9e6 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:34:00 -0500 -Subject: [PATCH 01/10] qtbase-mkspecs-mac +Subject: [PATCH 01/11] qtbase-mkspecs-mac --- mkspecs/common/mac.conf | 2 +- diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch index b780e38fc83..60696d68813 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch @@ -1,7 +1,7 @@ From 1dbf4dd6dc4cc30a3e705a12117f1764201a8402 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:37:15 -0500 -Subject: [PATCH 02/10] qtbase-mac +Subject: [PATCH 02/11] qtbase-mac --- src/corelib/kernel/qcore_mac_p.h | 16 ++++++++++++++-- diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch index 41cf801c9c7..569cea0a3d5 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch @@ -1,7 +1,7 @@ -From cfcd1f6e1ac53bfbd7d35f0e1aefbdbaa1726f4d Mon Sep 17 00:00:00 2001 +From f02c0371160b5d90df4030fc55921c6acb0e6914 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel -Date: Tue, 17 Sep 2019 05:32:35 -0500 -Subject: [PATCH 03/10] qtbase-mkspecs +Date: Wed, 18 Sep 2019 05:39:39 -0500 +Subject: [PATCH 03/11] qtbase-mkspecs --- mkspecs/features/create_cmake.prf | 53 ++++-------- @@ -10,13 +10,12 @@ Subject: [PATCH 03/10] qtbase-mkspecs mkspecs/features/qml_plugin.prf | 2 +- mkspecs/features/qt_app.prf | 2 +- mkspecs/features/qt_build_paths.prf | 4 +- - mkspecs/features/qt_common.prf | 31 ------- mkspecs/features/qt_docs.prf | 10 +-- mkspecs/features/qt_example_installs.prf | 2 +- mkspecs/features/qt_functions.prf | 2 +- mkspecs/features/qt_installs.prf | 22 ++--- mkspecs/features/qt_plugin.prf | 2 +- - 12 files changed, 39 insertions(+), 173 deletions(-) + 11 files changed, 39 insertions(+), 142 deletions(-) diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf index c9910dda..e9bc8076 100644 @@ -318,48 +317,6 @@ index 3bb3823a..655b7b7d 100644 + MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT + MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT } -diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf -index caecb68a..dc5c2178 100644 ---- a/mkspecs/features/qt_common.prf -+++ b/mkspecs/features/qt_common.prf -@@ -25,37 +25,6 @@ contains(TEMPLATE, .*lib) { - if(!host_build|!cross_compile):qtConfig(reduce_exports): CONFIG += hide_symbols - unix:qtConfig(reduce_relocations): CONFIG += bsymbolic_functions - qtConfig(separate_debug_info): CONFIG += separate_debug_info -- -- !isEmpty(_QMAKE_SUPER_CACHE_): \ -- rplbase = $$dirname(_QMAKE_SUPER_CACHE_)/[^/][^/]* -- else: \ -- rplbase = $$MODULE_BASE_OUTDIR -- host_build { -- qqt_libdir = \$\$\$\$[QT_HOST_LIBS] -- qt_libdir = $$[QT_HOST_LIBS] -- } else { -- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS] -- qt_libdir = $$[QT_INSTALL_LIBS] -- } -- contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) { -- lib_replace0.match = $$rplbase/lib/ -- lib_replace0.replace = $$qqt_libdir/ -- lib_replace0.CONFIG = path -- QMAKE_PRL_INSTALL_REPLACE += lib_replace0 -- lib_replace.match = "[^ ']*$$rplbase/lib" -- lib_replace.replace = -- } else { -- lib_replace.match = $$rplbase/lib -- lib_replace.replace = $$qqt_libdir -- } -- lib_replace.CONFIG = path -- QMAKE_PRL_INSTALL_REPLACE += lib_replace -- !equals(qt_libdir, $$rplbase/lib) { -- qtlibdir_replace.match = $$qt_libdir -- qtlibdir_replace.replace = $$qqt_libdir -- qtlibdir_replace.CONFIG = path -- QMAKE_PRL_INSTALL_REPLACE += qtlibdir_replace -- } - } - - # The remainder of this file must not apply to host tools/libraries, diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf index 3b74cd4d..6bfbbe6e 100644 --- a/mkspecs/features/qt_docs.prf diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch new file mode 100644 index 00000000000..0968c7adb20 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch @@ -0,0 +1,68 @@ +From ae6ea1bbc7ce46d0764ef7bc4109a8489102374b Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Wed, 18 Sep 2019 05:39:50 -0500 +Subject: [PATCH 04/11] qtbase-replace-libdir + +--- + mkspecs/features/qt_common.prf | 20 ++------------------ + mkspecs/features/qt_module.prf | 5 +---- + 2 files changed, 3 insertions(+), 22 deletions(-) + +diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf +index caecb68a..d3aa3ba5 100644 +--- a/mkspecs/features/qt_common.prf ++++ b/mkspecs/features/qt_common.prf +@@ -30,32 +30,16 @@ contains(TEMPLATE, .*lib) { + rplbase = $$dirname(_QMAKE_SUPER_CACHE_)/[^/][^/]* + else: \ + rplbase = $$MODULE_BASE_OUTDIR +- host_build { +- qqt_libdir = \$\$\$\$[QT_HOST_LIBS] +- qt_libdir = $$[QT_HOST_LIBS] +- } else { +- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS] +- qt_libdir = $$[QT_INSTALL_LIBS] +- } ++ qt_libdir = $$NIX_OUTPUT_OUT/lib + contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) { +- lib_replace0.match = $$rplbase/lib/ +- lib_replace0.replace = $$qqt_libdir/ +- lib_replace0.CONFIG = path +- QMAKE_PRL_INSTALL_REPLACE += lib_replace0 + lib_replace.match = "[^ ']*$$rplbase/lib" + lib_replace.replace = + } else { + lib_replace.match = $$rplbase/lib +- lib_replace.replace = $$qqt_libdir ++ lib_replace.replace = $$qt_libdir + } + lib_replace.CONFIG = path + QMAKE_PRL_INSTALL_REPLACE += lib_replace +- !equals(qt_libdir, $$rplbase/lib) { +- qtlibdir_replace.match = $$qt_libdir +- qtlibdir_replace.replace = $$qqt_libdir +- qtlibdir_replace.CONFIG = path +- QMAKE_PRL_INSTALL_REPLACE += qtlibdir_replace +- } + } + + # The remainder of this file must not apply to host tools/libraries, +diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf +index 51b5bde6..82e2907c 100644 +--- a/mkspecs/features/qt_module.prf ++++ b/mkspecs/features/qt_module.prf +@@ -292,10 +292,7 @@ load(qt_targets) + } + !lib_bundle:unix { + CONFIG += create_libtool +- host_build: \ +- QMAKE_LIBTOOL_LIBDIR = $$[QT_HOST_LIBS] +- else: \ +- QMAKE_LIBTOOL_LIBDIR = "=$$[QT_INSTALL_LIBS/raw]" ++ QMAKE_LIBTOOL_LIBDIR = $$NIX_OUTPUT_OUT/lib + ltlib_replace.match = $$lib_replace.match + !isEmpty(lib_replace.replace): \ + ltlib_replace.replace = $$QMAKE_LIBTOOL_LIBDIR +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-cmake.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch similarity index 98% rename from pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-cmake.patch rename to pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch index 73459af1649..0f6195cdb3b 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-cmake.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch @@ -1,7 +1,7 @@ -From 689670949eac83e1ba76425a1fc17efeb920eff1 Mon Sep 17 00:00:00 2001 +From d41d33acb53d54aee01c61e61a569687eadd78f8 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:34:28 -0500 -Subject: [PATCH 04/10] qtbase-cmake +Subject: [PATCH 05/11] qtbase-cmake --- mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 2 +- diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-gtk3.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch similarity index 93% rename from pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-gtk3.patch rename to pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch index 9e82a2eeef9..3137179a0ec 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-gtk3.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch @@ -1,7 +1,7 @@ -From b4542d244adc118e8a84ee4ae1d737b5205da1e3 Mon Sep 17 00:00:00 2001 +From c3bb0602745fafade007d7d8cf1f3d5065e4ce11 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:35:33 -0500 -Subject: [PATCH 05/10] qtbase-gtk3 +Subject: [PATCH 06/11] qtbase-gtk3 --- src/plugins/platformthemes/gtk3/main.cpp | 17 ++++++++++++++++- diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-xcursor.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch similarity index 91% rename from pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-xcursor.patch rename to pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch index 21bb2408a3e..9f9ed9880af 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-xcursor.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch @@ -1,7 +1,7 @@ -From 6dfdf2044bc8a0212b14414c4b9d9c1bfa5c1e6b Mon Sep 17 00:00:00 2001 +From b8581b324f47f1e8e5b994ab138f2850583a9f6c Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:35:58 -0500 -Subject: [PATCH 06/10] qtbase-xcursor +Subject: [PATCH 07/11] qtbase-xcursor --- src/plugins/platforms/xcb/qxcbcursor.cpp | 4 ++-- diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcompose.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch similarity index 93% rename from pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcompose.patch rename to pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch index 83d11494a01..e239cfff187 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcompose.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch @@ -1,7 +1,7 @@ -From 7211024a1d54232f9a6f91f7aac467e0e8893691 Mon Sep 17 00:00:00 2001 +From e94cdbb790beb51babaa61e373f64bac96fcaee2 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:36:10 -0500 -Subject: [PATCH 07/10] qtbase-xcompose +Subject: [PATCH 08/11] qtbase-xcompose --- .../compose/generator/qtablegenerator.cpp | 5 +---- diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-tzdir.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch similarity index 95% rename from pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-tzdir.patch rename to pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch index 5050ffea90d..95aefd9df7b 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-tzdir.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch @@ -1,7 +1,7 @@ -From f24621e540d5511802013aa8e8972c9e060c953a Mon Sep 17 00:00:00 2001 +From 18e87f3de05ffbed6f5d9b4f9a3fc20373f4c06b Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:36:25 -0500 -Subject: [PATCH 08/10] qtbase-tzdir +Subject: [PATCH 09/11] qtbase-tzdir --- src/corelib/tools/qtimezoneprivate_tz.cpp | 20 ++++++++++++++------ diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-qtpluginpath.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch similarity index 91% rename from pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-qtpluginpath.patch rename to pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch index 7226617872f..286daa01027 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-qtpluginpath.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch @@ -1,7 +1,7 @@ -From 40616bf4afacadca360083d7d365914f8f8573e5 Mon Sep 17 00:00:00 2001 +From 48617800cd7e27402126602d9aa90803a5b07dd2 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:36:41 -0500 -Subject: [PATCH 09/10] qtbase-qtpluginpath +Subject: [PATCH 10/11] qtbase-qtpluginpath --- src/corelib/kernel/qcoreapplication.cpp | 9 +++++++++ diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-assert.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch similarity index 89% rename from pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-assert.patch rename to pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch index 943667b26e0..ddffbad8742 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-assert.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch @@ -1,7 +1,7 @@ -From 60a2d764708234a06828c76d91db77565e08d872 Mon Sep 17 00:00:00 2001 +From 4464f24a507b05ff7280f1161f33bbf3b645d17d Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:37:04 -0500 -Subject: [PATCH 10/10] qtbase-assert +Subject: [PATCH 11/11] qtbase-assert --- src/testlib/qtestassert.h | 7 +++++-- From 36a8cfc874aa09323abc4a55983e77b5e1061b1f Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Mon, 16 Sep 2019 05:44:56 -0500 Subject: [PATCH 4/9] qtbase: Update qmake cache name for Qt >= 5.12.4 --- .../libraries/qt-5/modules/qtbase.nix | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix index 8119513618b..362058736b0 100644 --- a/pkgs/development/libraries/qt-5/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix @@ -31,6 +31,8 @@ assert withGtk3 -> gtk3 != null; let compareVersion = v: builtins.compareVersions version v; + qmakeCacheName = + if compareVersion "5.12.4" >= 0 then ".qmake.stash" else ".qmake.cache"; in stdenv.mkDerivation { @@ -171,8 +173,15 @@ stdenv.mkDerivation { -qmldir $out/$qtQmlPrefix \ -docdir $out/$qtDocPrefix" - createQmakeCache() { - cat >>"$1" <>"$cache" < Date: Mon, 16 Sep 2019 05:58:28 -0500 Subject: [PATCH 5/9] qtbase: Create .qmake.stash if missing --- pkgs/development/libraries/qt-5/modules/qtbase.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix index 362058736b0..b09ceaf056c 100644 --- a/pkgs/development/libraries/qt-5/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix @@ -32,7 +32,7 @@ assert withGtk3 -> gtk3 != null; let compareVersion = v: builtins.compareVersions version v; qmakeCacheName = - if compareVersion "5.12.4" >= 0 then ".qmake.stash" else ".qmake.cache"; + if compareVersion "5.12.4" < 0 then ".qmake.cache" else ".qmake.stash"; in stdenv.mkDerivation { @@ -49,7 +49,7 @@ stdenv.mkDerivation { # Image formats libjpeg libpng libtiff - (if compareVersion "5.9.0" >= 0 then pcre2 else pcre16) + (if compareVersion "5.9.0" < 0 then pcre16 else pcre2) ] ++ ( if stdenv.isDarwin @@ -179,8 +179,10 @@ stdenv.mkDerivation { postConfigure = '' qmakeCacheInjectNixOutputs() { local cache="$1/${qmakeCacheName}" - if ! [ -f "$cache" ]; then return; fi echo "qmakeCacheInjectNixOutputs: $cache" + if ! [ -f "$cache" ]; then + echo >&2 "qmakeCacheInjectNixOutputs: WARNING: $cache does not exist" + fi cat >>"$cache" < Date: Tue, 17 Sep 2019 18:45:13 -0500 Subject: [PATCH 6/9] qmake-hook.sh: qmakeFlags is an array --- .../libraries/qt-5/hooks/qmake-hook.sh | 27 +++++++++++++------ .../qt-5/hooks/qttools-setup-hook.sh | 2 +- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh index eef2c7d24df..f6d332f29ba 100644 --- a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh +++ b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh @@ -1,14 +1,25 @@ +qmakeFlags=( $qmakeFlags ) + +qmakePrePhase() { + qmakeFlags=( \ + "PREFIX=$out" \ + "NIX_OUTPUT_OUT=$out" \ + "NIX_OUTPUT_DEV=${!outputDev}" \ + "NIX_OUTPUT_BIN=${!outputBin}" \ + "NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?}" \ + "NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?}" \ + "NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?}" \ + "${qmakeFlags[@]}" \ + ) +} +prePhases+=" qmakePrePhase" + qmakeConfigurePhase() { runHook preConfigure - qmake PREFIX=$out \ - NIX_OUTPUT_OUT=$out \ - NIX_OUTPUT_DEV=${!outputDev} \ - NIX_OUTPUT_BIN=${!outputBin} \ - NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?} \ - NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?} \ - NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?} \ - $qmakeFlags + echo "QMAKEPATH=$QMAKEPATH" + echo qmake "${qmakeFlags[@]}" + qmake "${qmakeFlags[@]}" if ! [[ -v enableParallelBuilding ]]; then enableParallelBuilding=1 diff --git a/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh b/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh index b09cf5f46c9..c320a797447 100644 --- a/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh +++ b/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh @@ -1 +1 @@ -qmakeFlags="$qmakeFlags${qmakeFlags:+ }QMAKE_LRELEASE=@dev@/bin/lrelease" +qmakeFlags+=( "QMAKE_LRELEASE=@dev@/bin/lrelease" ) From dd599e20cfa8c01b3a1137e5b98bf1e0a4480012 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Wed, 18 Sep 2019 10:22:08 -0500 Subject: [PATCH 7/9] qtbase: Fix formatting --- pkgs/development/libraries/qt-5/modules/qtbase.nix | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix index b09ceaf056c..520f30cad0f 100644 --- a/pkgs/development/libraries/qt-5/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix @@ -398,13 +398,11 @@ stdenv.mkDerivation { moveToOutput bin "$dev" '' - + ( - # fixup .pc file (where to find 'moc' etc.) - '' - sed -i "$dev/lib/pkgconfig/Qt5Core.pc" \ - -e "/^host_bins=/ c host_bins=$dev/bin" - '' - ); + # fixup .pc file (where to find 'moc' etc.) + + '' + sed -i "$dev/lib/pkgconfig/Qt5Core.pc" \ + -e "/^host_bins=/ c host_bins=$dev/bin" + ''; setupHook = ../hooks/qtbase-setup-hook.sh; From 756b46a44976eba54cf83d763d5614137fbda477 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Wed, 18 Sep 2019 15:19:31 -0500 Subject: [PATCH 8/9] fix-qmake-libtool.sh --- pkgs/development/libraries/qt-5/5.12/default.nix | 4 +--- pkgs/development/libraries/qt-5/5.9/default.nix | 4 +--- .../libraries/qt-5/hooks/fix-qmake-libtool.sh | 14 ++++++++++++++ .../development/libraries/qt-5/hooks/qmake-hook.sh | 2 ++ pkgs/development/libraries/qt-5/modules/qtbase.nix | 1 + 5 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 pkgs/development/libraries/qt-5/hooks/fix-qmake-libtool.sh diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix index 47a3589c2f9..e8fad6e8381 100644 --- a/pkgs/development/libraries/qt-5/5.12/default.nix +++ b/pkgs/development/libraries/qt-5/5.12/default.nix @@ -160,9 +160,7 @@ let qmake = makeSetupHook { deps = [ self.qtbase.dev ]; substitutions = { - inherit (stdenv) isDarwin; - qtbase_dev = self.qtbase.dev; - fix_qt_builtin_paths = ../hooks/fix-qt-builtin-paths.sh; + fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh; }; } ../hooks/qmake-hook.sh; diff --git a/pkgs/development/libraries/qt-5/5.9/default.nix b/pkgs/development/libraries/qt-5/5.9/default.nix index a872f212ff7..721c1b40d59 100644 --- a/pkgs/development/libraries/qt-5/5.9/default.nix +++ b/pkgs/development/libraries/qt-5/5.9/default.nix @@ -154,9 +154,7 @@ let qmake = makeSetupHook { deps = [ self.qtbase.dev ]; substitutions = { - inherit (stdenv) isDarwin; - qtbase_dev = self.qtbase.dev; - fix_qt_builtin_paths = ../hooks/fix-qt-builtin-paths.sh; + fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh; }; } ../hooks/qmake-hook.sh; diff --git a/pkgs/development/libraries/qt-5/hooks/fix-qmake-libtool.sh b/pkgs/development/libraries/qt-5/hooks/fix-qmake-libtool.sh new file mode 100644 index 00000000000..5acaeb82446 --- /dev/null +++ b/pkgs/development/libraries/qt-5/hooks/fix-qmake-libtool.sh @@ -0,0 +1,14 @@ +# Fix libtool libraries generated by qmake. +# qmake started inserting filenames of shared objects instead of the appropriate +# linker flags. fixQmakeLibtool searches for broken libtool libraries and +# replaces the filenames with the linker flags that should have been there. +fixQmakeLibtool() { + if [ -d "$1" ]; then + find "$1" -name '*.la' | while read la; do + sed -i "$la" \ + -e '/^dependency_libs/ s,\(/[^ ]\+\)/lib\([^/ ]\+\)\.so,-L\1 -l\2,g' + done + fi +} + +fixupOutputHooks+=('fixQmakeLibtool $prefix') diff --git a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh index f6d332f29ba..c3373983e32 100644 --- a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh +++ b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh @@ -1,3 +1,5 @@ +. @fix_qmake_libtool@ + qmakeFlags=( $qmakeFlags ) qmakePrePhase() { diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix index 520f30cad0f..3a0c9085f54 100644 --- a/pkgs/development/libraries/qt-5/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix @@ -100,6 +100,7 @@ stdenv.mkDerivation { . "$fix_qt_builtin_paths" . "$fix_qt_module_paths" . ${../hooks/move-qt-dev-tools.sh} + . ${../hooks/fix-qmake-libtool.sh} ''; postPatch = From 333ef0d821610d40dc6bc257db79fa40956d8249 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Thu, 19 Sep 2019 10:46:07 -0500 Subject: [PATCH 9/9] qtbase-mac.patch: Re-enable QAppleTestLogger --- .../5.12/qtbase.patch.d/0002-qtbase-mac.patch | 18 ++---------------- .../qtbase.patch.d/0003-qtbase-mkspecs.patch | 2 +- .../0004-qtbase-replace-libdir.patch | 2 +- .../qtbase.patch.d/0005-qtbase-cmake.patch | 2 +- .../5.12/qtbase.patch.d/0006-qtbase-gtk3.patch | 2 +- .../qtbase.patch.d/0007-qtbase-xcursor.patch | 2 +- .../qtbase.patch.d/0008-qtbase-xcompose.patch | 2 +- .../qtbase.patch.d/0009-qtbase-tzdir.patch | 2 +- .../0010-qtbase-qtpluginpath.patch | 2 +- .../qtbase.patch.d/0011-qtbase-assert.patch | 2 +- 10 files changed, 11 insertions(+), 25 deletions(-) diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch index 60696d68813..80e1d771f2e 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch @@ -1,12 +1,11 @@ -From 1dbf4dd6dc4cc30a3e705a12117f1764201a8402 Mon Sep 17 00:00:00 2001 +From e32f2e184bf2adce216351b2a1e7390e8d9c31b9 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:37:15 -0500 Subject: [PATCH 02/11] qtbase-mac --- src/corelib/kernel/qcore_mac_p.h | 16 ++++++++++++++-- - src/testlib/qappletestlogger.cpp | 2 +- - 2 files changed, 15 insertions(+), 3 deletions(-) + 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/corelib/kernel/qcore_mac_p.h b/src/corelib/kernel/qcore_mac_p.h index f96e7358..650946b7 100644 @@ -42,19 +41,6 @@ index f96e7358..650946b7 100644 // ------------------------------------------------------------------------- -diff --git a/src/testlib/qappletestlogger.cpp b/src/testlib/qappletestlogger.cpp -index dfeadebd..2a74330c 100644 ---- a/src/testlib/qappletestlogger.cpp -+++ b/src/testlib/qappletestlogger.cpp -@@ -43,7 +43,7 @@ - - QT_BEGIN_NAMESPACE - --#if defined(QT_USE_APPLE_UNIFIED_LOGGING) -+#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 - - using namespace QTestPrivate; - -- 2.22.1 diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch index 569cea0a3d5..3fabe071836 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch @@ -1,4 +1,4 @@ -From f02c0371160b5d90df4030fc55921c6acb0e6914 Mon Sep 17 00:00:00 2001 +From 5ff996d9028c0f54939ca7c54d358cd7503ab1ae Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Wed, 18 Sep 2019 05:39:39 -0500 Subject: [PATCH 03/11] qtbase-mkspecs diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch index 0968c7adb20..93c4748f6fd 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch @@ -1,4 +1,4 @@ -From ae6ea1bbc7ce46d0764ef7bc4109a8489102374b Mon Sep 17 00:00:00 2001 +From d126db8f5c2c1f6d6738de1a53040c93fdf6ff73 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Wed, 18 Sep 2019 05:39:50 -0500 Subject: [PATCH 04/11] qtbase-replace-libdir diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch index 0f6195cdb3b..b93b8f8c832 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch @@ -1,4 +1,4 @@ -From d41d33acb53d54aee01c61e61a569687eadd78f8 Mon Sep 17 00:00:00 2001 +From 0ea804da2eb1d0cfbbfc15fbc33a3d7dd5de36ed Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:34:28 -0500 Subject: [PATCH 05/11] qtbase-cmake diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch index 3137179a0ec..80f4a4091e6 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch @@ -1,4 +1,4 @@ -From c3bb0602745fafade007d7d8cf1f3d5065e4ce11 Mon Sep 17 00:00:00 2001 +From 8fa184fb70a62cbe9ee160bceddaf5d7c21cb85c Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:35:33 -0500 Subject: [PATCH 06/11] qtbase-gtk3 diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch index 9f9ed9880af..33122773598 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch @@ -1,4 +1,4 @@ -From b8581b324f47f1e8e5b994ab138f2850583a9f6c Mon Sep 17 00:00:00 2001 +From b4fe78eb31f30ef499970b2ca7e7947c025588af Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:35:58 -0500 Subject: [PATCH 07/11] qtbase-xcursor diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch index e239cfff187..f54ba7f9002 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch @@ -1,4 +1,4 @@ -From e94cdbb790beb51babaa61e373f64bac96fcaee2 Mon Sep 17 00:00:00 2001 +From 47b2bed58224bda2267480604707a580dc17dd1f Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:36:10 -0500 Subject: [PATCH 08/11] qtbase-xcompose diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch index 95aefd9df7b..e8a4533cc2d 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch @@ -1,4 +1,4 @@ -From 18e87f3de05ffbed6f5d9b4f9a3fc20373f4c06b Mon Sep 17 00:00:00 2001 +From 354713a61005b9a4743b9db0d76c72514c4579f8 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:36:25 -0500 Subject: [PATCH 09/11] qtbase-tzdir diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch index 286daa01027..b53544e0d4e 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch @@ -1,4 +1,4 @@ -From 48617800cd7e27402126602d9aa90803a5b07dd2 Mon Sep 17 00:00:00 2001 +From 571060c0e1dca29554cc97cfb33087c9b41114a5 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:36:41 -0500 Subject: [PATCH 10/11] qtbase-qtpluginpath diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch index ddffbad8742..0fd93759c3a 100644 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch @@ -1,4 +1,4 @@ -From 4464f24a507b05ff7280f1161f33bbf3b645d17d Mon Sep 17 00:00:00 2001 +From 545e696e270a3879dd59f71d145e31a7d93ab8f4 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 17 Sep 2019 05:37:04 -0500 Subject: [PATCH 11/11] qtbase-assert