diff options
Diffstat (limited to 'app-emulation')
-rw-r--r-- | app-emulation/Manifest.gz | bin | 15503 -> 15492 bytes | |||
-rw-r--r-- | app-emulation/dxvk/Manifest | 8 | ||||
-rw-r--r-- | app-emulation/dxvk/dxvk-2.3.1-r1.ebuild | 6 | ||||
-rw-r--r-- | app-emulation/dxvk/dxvk-2.4.1.ebuild | 6 | ||||
-rw-r--r-- | app-emulation/dxvk/dxvk-2.5.3.ebuild | 6 | ||||
-rw-r--r-- | app-emulation/dxvk/dxvk-9999.ebuild | 4 | ||||
-rw-r--r-- | app-emulation/faudio/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/faudio/faudio-25.03.ebuild | 1 | ||||
-rw-r--r-- | app-emulation/vkd3d-proton/Manifest | 10 | ||||
-rw-r--r-- | app-emulation/vkd3d-proton/vkd3d-proton-2.12.ebuild | 6 | ||||
-rw-r--r-- | app-emulation/vkd3d-proton/vkd3d-proton-2.13.ebuild | 6 | ||||
-rw-r--r-- | app-emulation/vkd3d-proton/vkd3d-proton-2.14.1.ebuild | 6 | ||||
-rw-r--r-- | app-emulation/vkd3d-proton/vkd3d-proton-2.6-r1.ebuild | 8 | ||||
-rw-r--r-- | app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild | 6 | ||||
-rw-r--r-- | app-emulation/wine-staging/Manifest | 3 | ||||
-rw-r--r-- | app-emulation/wine-staging/wine-staging-10.3.ebuild | 467 |
16 files changed, 502 insertions, 43 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz Binary files differindex 49bc4e6ba6e5..02e937bb1e5f 100644 --- a/app-emulation/Manifest.gz +++ b/app-emulation/Manifest.gz diff --git a/app-emulation/dxvk/Manifest b/app-emulation/dxvk/Manifest index eeef05782c18..f92cecb93a98 100644 --- a/app-emulation/dxvk/Manifest +++ b/app-emulation/dxvk/Manifest @@ -8,8 +8,8 @@ DIST libdisplay-info-275e6459c7ab1ddd4b125f28d0440716e4888078.tar.bz2 81172 BLAK DIST setup_dxvk.sh 4631 BLAKE2B 25270e1f6dfd446b1d124eac3bd19da8bc770527d02d987949fc3ae0bead07866dafa25f77a90b9a408413a724354a29a4a156ff5c9dc75e26b66e079824ec86 SHA512 257fd84e29a7037f04a1a2a506502c71d527af58f8c84d8c3dfb64597ebdc41c3dca362eaf20ab4bc1982b76428c1f843815d56a6e1369d072e0009e270cb121 DIST spirv-headers-8b246ff75c6615ba4532fe4fde20f1be090c3764.tar.gz 472513 BLAKE2B f1ad7e11c306c62509655eb41d74efc5fb88688780d006c6944844e964b339baa000f70e115c4df2947e882c9ac33186e301b31138c38fe5f997f7af7260f521 SHA512 fe1d9d70b217b194c92dd397bca386ce8452bc5ec3967d64a257b3a531386fe6a6ecb5e9ed8ab5bc5a2707c5378f02f05809d6d197dcfb3f87cd33304c3b1959 DIST vulkan-headers-46dc0f6e514f5730784bb2cac2a7c731636839e8.tar.gz 2255426 BLAKE2B efaf09df3274586c4df2bdd0b1dd9dd43b3b6125e0033ae87af999aea64709e9758bc7b675398b480ae063e28273732d768062d97f6cd61d63ccc798ca7410a5 SHA512 7ea993f7c8ff72dc6bedbfdaced29782ab372228e9111f747d931955e832a7920114f5d1953ecd34d220634a53449ca2ed4c0ed28d3165e258c4d9fafd0aa4be -EBUILD dxvk-2.3.1-r1.ebuild 6617 BLAKE2B 47f91edb7dd06c3c66922fc3c4f2069d89adecc61a629f0307070651e74cae9cbaaf081524f12c2c95827633f98996a1955adf82b3c888fd6f6f2c5297dfdfa0 SHA512 af2e1915d711b7aa37d281903dc05621c20962eb7d34e40d2ba2233fc8371657f62ef3616410db091caf1cab41500e6bbc7c8ed1a523bfacbfd6c90a9b804dbb -EBUILD dxvk-2.4.1.ebuild 6056 BLAKE2B 988a2cb5a59389949e28af242d42af8f72b4cc60773205dd311eb50e3157908bd6d74fa83d14d983fd4a1a1c2623ebe1b2ba5659002aa335d5b99d57906b6f8d SHA512 016104a49fda4fe4a3bbc946f53917e532a8ab7eb9206502b30bb474183cd2b8015b7f2afc0f9bbb93e206aee19c52f56f0b16b6446276c3623c13a0fd1375f5 -EBUILD dxvk-2.5.3.ebuild 6017 BLAKE2B 86e20a255fe28aec6c3381fb1bfad4aa2fabf4b4727ac96bdc8ec861194b97ac4a5cda8a586b06cd377c5be09fe67daabfb878aaab451400a148cd8fce786a99 SHA512 7ef56bc5856134e57c920c49513efb5dd7cebe760a8f7cebf671e89af2eb227babf2c50c849bb1e5b84d2f619a2ab68db22d4b93cbc3aae9a8ace65a22b4e3fe -EBUILD dxvk-9999.ebuild 5627 BLAKE2B b389cce248d282f570ad07d85ea59e6f09805e3f3bb1982b7d0e29c867025b6c56130d62c60f3f6e399e763f4c953ee14e7528d3ec77e7e0612eb79af869f1cd SHA512 01436e1d5781948298b8ec3d2ff585e68c16d29b251a12a2e3c9a7e35703fbe3f525ef9d60b13419df7405d6bb6441e4a888853d4b8211050c4c87df3c72ab86 +EBUILD dxvk-2.3.1-r1.ebuild 6488 BLAKE2B 2278cfc65c5660e6f84a62596286c0697dd46313901c2dccbb4f7cfa935466d44a953fd79d88c3a8f5feb870ca3711bebca84e87dbe915a205b101e2b310ffe3 SHA512 1f7d64d29268881885778b61b4f51b17d6bbace0c4090df766b594f0a4c1ce7950844b6e310b996b9c316335b11eab012f6c9c8d756123712808b156991126cd +EBUILD dxvk-2.4.1.ebuild 5927 BLAKE2B 6191560ce91c21d16b6376d2414b270ef361168dcae45bb7f10be862f22e6b5736d1db5775c6cd3871dbb2980f35aae6a1dcf0f9d53a8565cd471e4a8fc35f2d SHA512 2d8788903bbb549e95434e78ef74c00096b9a1ae62e4be3330a6b67ea6b63621a063996a12af54aadd82d0e7e09721cc702190a11ad8d66558d33834fb8030fc +EBUILD dxvk-2.5.3.ebuild 5888 BLAKE2B 555b3d035f2f22865e65139b32c1d41581b7ac1869ce8cc997e759f00dd91165f8d920af96a9d9a866da6e04bc54a2d1fdab60e7aed7ddba358d98d38a05dd88 SHA512 8c31de7ac960060198217ab341fc8876c314f89436f77b2c50d5c233ad0aba244d4297dacbb98b0d952be5f7c4976f91cddc60e0a14c82308595ce1d185cbe4e +EBUILD dxvk-9999.ebuild 5770 BLAKE2B 175a20e55893182579689dd6fb6d08d68a4a19e14864f8d357b0f91cfa48047cc31541e4e28e0a9a67c61629fe50193909b83f95271f3af683f3a256fffbce41 SHA512 9c0eb71c36e46e5e4f69823daa1a010ff10aa173508f6306e465a80aca9ce4a3e55425a10e35a1f993803a35158203b85cc22147511923e83c6835ed1bfd6f24 MISC metadata.xml 944 BLAKE2B 804e365c1a6f88001f88c96e0e7cd67d444bee147d764b6c2dff0fb37d836754a2c21a1ea8b505b11c9de93dbc2533e10d0e15dea72b0c05db9d5ada2123a90e SHA512 c7f045fed2ef25fed4094551d0a420fe218d541a678cce4a18fce3d8c090e64dfacbdcce67fcfa202d4c3aeed8911a83b2bf5077e7e13a75aa0e5902d33e4716 diff --git a/app-emulation/dxvk/dxvk-2.3.1-r1.ebuild b/app-emulation/dxvk/dxvk-2.3.1-r1.ebuild index 6302477d338f..0b565acd52b6 100644 --- a/app-emulation/dxvk/dxvk-2.3.1-r1.ebuild +++ b/app-emulation/dxvk/dxvk-2.3.1-r1.ebuild @@ -101,10 +101,8 @@ src_configure() { # performance, GPU does the actual work) filter-lto - # -mavx with mingw-gcc has a history of obscure issues and - # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg` - # crashes with -march=skylake >=wine-8.10, similar issues with - # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273 + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 append-flags -mno-avx if [[ ${CHOST} != *-mingw* ]]; then diff --git a/app-emulation/dxvk/dxvk-2.4.1.ebuild b/app-emulation/dxvk/dxvk-2.4.1.ebuild index dcd2da53321e..2d14c7a796ec 100644 --- a/app-emulation/dxvk/dxvk-2.4.1.ebuild +++ b/app-emulation/dxvk/dxvk-2.4.1.ebuild @@ -103,10 +103,8 @@ src_configure() { # performance, GPU does the actual work) filter-lto - # -mavx with mingw-gcc has a history of obscure issues and - # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg` - # crashes with -march=skylake >=wine-8.10, similar issues with - # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273 + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 append-flags -mno-avx if [[ ${CHOST} != *-mingw* ]]; then diff --git a/app-emulation/dxvk/dxvk-2.5.3.ebuild b/app-emulation/dxvk/dxvk-2.5.3.ebuild index 2e4e20063b47..8e460eb71ff8 100644 --- a/app-emulation/dxvk/dxvk-2.5.3.ebuild +++ b/app-emulation/dxvk/dxvk-2.5.3.ebuild @@ -102,10 +102,8 @@ src_configure() { # performance, GPU does the actual work) filter-lto - # -mavx with mingw-gcc has a history of obscure issues and - # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg` - # crashes with -march=skylake >=wine-8.10, similar issues with - # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273 + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 append-flags -mno-avx if [[ ${CHOST} != *-mingw* ]]; then diff --git a/app-emulation/dxvk/dxvk-9999.ebuild b/app-emulation/dxvk/dxvk-9999.ebuild index b24fcd5ba6ba..a308fd6fa048 100644 --- a/app-emulation/dxvk/dxvk-9999.ebuild +++ b/app-emulation/dxvk/dxvk-9999.ebuild @@ -102,6 +102,10 @@ src_configure() { # performance, GPU does the actual work) filter-lto + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 + append-flags -mno-avx + if [[ ${CHOST} != *-mingw* ]]; then if [[ ! -v MINGW_BYPASS ]]; then unset AR CC CXX RC STRIP diff --git a/app-emulation/faudio/Manifest b/app-emulation/faudio/Manifest index b11a47dce4aa..d09b0ee831cb 100644 --- a/app-emulation/faudio/Manifest +++ b/app-emulation/faudio/Manifest @@ -1,5 +1,5 @@ DIST faudio-25.02.tar.gz 1127116 BLAKE2B 9df60de8a9448d5425c1e4b5d88bed12b4b7f40971c04120795f4c799e2b7bf8eb45a8e649c0cec8e4445e64d9a602e78769ca69bc998ddae66e5b9fc74e22a6 SHA512 1d93b0d167e23ea2f012ec10ca1227e05ff1b81aa9568ab35bb6335622a62bacb5ed33b788ef6e953050a3bfa7d15e6a9579821cf5e36c239998a0e1271c9c1e DIST faudio-25.03.tar.gz 1126597 BLAKE2B bd95c8455adf072186309697040aea677b46afa25ccdc8ad45477d7f78237153908955fc8e772bfc7d460b9cd4dbad31a170a25b0352df052546b402a3f99023 SHA512 ec1f37a73aa5ad57841e297d8ee730b8b161144bc0624e29e9ba7b86c6f2d8657b2b20169603616701db04d99a9522dd1463c043e2c0e64eb7d980f4909327c7 EBUILD faudio-25.02.ebuild 920 BLAKE2B 216eef9051a14d0a43f55d752374dbef54711ebcf8d6373b924fd13e6411f9bb9317273253904bc79fe8a40b8d2c4465842ae96240ef3edd0e4c2e575b4bfcc4 SHA512 e7c2ce97836d40610b40c088c4a4d919eef5e4594c19a4d284f6a227b67f31033d7e99040e792f6f076c248793431ed57edcd518fbf56e096ed60ae6ff27d36e -EBUILD faudio-25.03.ebuild 922 BLAKE2B f13eb428d032efcc2fd857021ef9d6c1370764c5fab2363ce043f027dc790dec1eed01089959866ae2bb21d2f163f69018f6c488e8fcf715c2aa24c98ac09fd2 SHA512 c2dc7389c9f43bfaa6df031e5a120aef05d2a9c91016970ec6cb54f66ab16086de6b9218b963378e500ebb32086fea1015235588d4d2026220bad6932f8b67e5 +EBUILD faudio-25.03.ebuild 943 BLAKE2B ac0e1c9289272a0a433dc15857cd117bf6da4c5ae544eccbfc98cdbd3fea51f2e61560c38ffaae36819ac6e64b5e7a122ee50a031914fcb1ce2a6b1ff7294b93 SHA512 d527e3391cf38d91c81b4fb31a00c536319040d1c1033b7f6bc0405962833308845e11f54f123790891bc5286cb27d1bbef297134fd6285c834b24bb53f620e3 MISC metadata.xml 719 BLAKE2B b71b3829f3c1a2a546621b460f3ccc41f79db0acf913f409bc55ad2b8632a8361a7b45952b8aab2f9564391b14f3735f17c10a0e5f46da55fc49b730a743a5e6 SHA512 f52da50d3b16eb8dda8d2af6d7db6ae1e457d48c9a79977cb5288e379446ea4a5e420bd2dc17067d3bcba5cee7838ce10401f319e556d671b0483def94c3f2d7 diff --git a/app-emulation/faudio/faudio-25.03.ebuild b/app-emulation/faudio/faudio-25.03.ebuild index dfce1c40eb5b..0410edca26b4 100644 --- a/app-emulation/faudio/faudio-25.03.ebuild +++ b/app-emulation/faudio/faudio-25.03.ebuild @@ -24,6 +24,7 @@ src_configure() { use debug || append-cppflags -DFAUDIO_DISABLE_DEBUGCONFIGURATION local mycmakeargs=( + -DBUILD_SDL3="OFF" -DBUILD_TESTS=$(usex test) -DDUMP_VOICES=$(usex dumpvoices) ) diff --git a/app-emulation/vkd3d-proton/Manifest b/app-emulation/vkd3d-proton/Manifest index ccd914964af2..50fc78129f80 100644 --- a/app-emulation/vkd3d-proton/Manifest +++ b/app-emulation/vkd3d-proton/Manifest @@ -15,9 +15,9 @@ DIST vkd3d-proton-vulkan-headers-83e1a9ed8c.tar.gz 1299014 BLAKE2B 0b1e635aaa6ee DIST vulkan-headers-29f979ee5aa58b7b005f805ea8df7a855c39ff37.tar.gz 2359246 BLAKE2B 4208b0837789cb26bcb5309d8f1f56aa58dca2f06f61557b6624aa9e63566e62b1e544da33050a48489e58c3e71022ff58dd10ebca00008105c8a909cc07a44c SHA512 15618de42ee2bc019053f00e51afdf37dbdedc1ce6ec18e806e169ba002ac7720c8b3c75e57adb01e56d2c0f5888ddf6418f688bcb666859549befdfa3beb8b5 DIST vulkan-headers-5677bafb820e476441e9e1f745371b72133407d3.tar.gz 2281652 BLAKE2B 03c55bf485214631d2e669165d3ed2dc068a3bc7bdffe59c5173a15885281cef4e57c5327b22de857ab9604f8e52bbcd6de0d9f5ff7cb3eee407845de722621d SHA512 d5d8eccae8f577d712ada89e42d88e0602f6eb499bf2e08f93505e5ffd554b0df8de74751fbe321184a0cfdaf60ce475273e9becca7a8f837afe6c5597b19671 DIST vulkan-headers-f030d9dd8ca297b84b10330cee87f72acc3b0aab.tar.gz 2255357 BLAKE2B 07cfa8ccdd26966116e7c35e0d350be94936469f2b9af77c84b8c61495b6ba76813047b5d26bba1fabd44a8f35396b32b6ad32c3b93b0b1a818ce9ed45f93db2 SHA512 6adf81d16d07710322b7c92a0e0436ee33be94d55116e3c460eabb4196a180f8c7b481c19a84a8bbea4e98dda6cf63ff2876f196348921a0c1d9c8c1005cd521 -EBUILD vkd3d-proton-2.12.ebuild 7709 BLAKE2B a0f3ef9f754ffdc20de5940144b31998500b03899a1f7c88f4f127b01e5c22e324f313aa5a4c6c63d8b270b1364af000c1e115521bfe41b6fa1a56baa180fc1a SHA512 8cc5d3f094e1c13b3f5943dd1f902dd52983447a124e3164b28bddfd7d41a7565249152158cf04f5f197f656965bb7e4ad337e7b2dee082c41a89364f2374a05 -EBUILD vkd3d-proton-2.13.ebuild 7709 BLAKE2B e33feff723d60a282c68b9e95f4cee5313533ae6699738f86ae28412094a1b9ea159c634549af59ba7ee1bc12a25760a1e51b927e83c773f5f4ecf1e35789cbd SHA512 6450ab901288fbe813af09730b0fb5b58ff05d4ab8adb2aa85308acfbd98dae3ec9c4b63a541bfa584c714c57fb8453a2d190debcf0ad0fe329e214266162c66 -EBUILD vkd3d-proton-2.14.1.ebuild 7709 BLAKE2B 52f317a2005ee5678d2dd0ace5786e5ed1a0e140c920e295243cd3ee1e9c3c43adf87dfd34daf41dca8128c343c97c9f323f0d22937272b2c3bde44c6347cc14 SHA512 eb798e41efaf241aecad069abedf0cfb945ea888d1f365bfcea2734b8eeb6da6c2697638977c01a3df960ce28993f5e4a870d3f3c3a44a8de6baf1b305dee3ea -EBUILD vkd3d-proton-2.6-r1.ebuild 6898 BLAKE2B d65133bfa465040c0f8a2c5d148d907ebe063589f5ef3916c39d9441a409d759127561ee006454b75d8eecb36c6a083eefbc0739a2fee06b63f9c0bf7a2a34d8 SHA512 92f849054d2f4e26a5533b8db9417e7baebaaad99fd4393915503b2edc6c25caa7ed99720bf6bc17bd9bc3b065cca8fb61fbb0c77bd2f2036fbd1a4d0ddb19c3 -EBUILD vkd3d-proton-9999.ebuild 7511 BLAKE2B e283143902ac7c52d559ee68d47bcf875bb64da0d4185e26edd48f76aaebd9985b7a6434e02162dadace8356d4ce8530ecff87355254fce5b9c02223ce904cff SHA512 6805ccb07811e7e4524c7dde3ca7c24aa543efa2d2de2f569d944120c1df454f8fad394a65fe69557ddad1b1d6f45656271215edb28ddda5875f46ae0ef83275 +EBUILD vkd3d-proton-2.12.ebuild 7580 BLAKE2B 4a76dd36c928df9ac1f29afe42cf209e69a74ea60048597f52ee5322ccd1119b357a45462970e07f00b5538ec5752b025cb4f05805d7555023eb696c1b640e35 SHA512 f003d793a3a7946449a903e2138700c4b7640c4ad791193fa7994d555c02abcced70ce1bd8a004a246620ad11b44dbc4b3e4a9753d3bdc9ff5d8e9e25b66263d +EBUILD vkd3d-proton-2.13.ebuild 7580 BLAKE2B 27f66a50bfc8d7e6cfb89703aa9d3559fe4cad81890a07810533f5cc8589671d4f629393aeb42e2acd367f67721bba3d0fe8fadecbd445b78148df227aa552a5 SHA512 df506b3db37350dd5a3238ff46a52ece6142efff10f5a7c7a91fabfb74ce250df10bbc644799e28f12f61b7e8c4fa73a6a7d55c979d86805f1221b31352e6244 +EBUILD vkd3d-proton-2.14.1.ebuild 7580 BLAKE2B 9f0bd416cb7a3ccf951a82fd8dd9b7a69498863face1ce3ddf732c790e2cf408241e292b00af9690bd1f4bed32619ee4bc4430d2f0a5702a458752954799e38b SHA512 3152b3f2f9f70abbe77cf84cb1e4eeacb0efb42d04ead49ad9c5c5155cae7a3934319c81e484102301bb4afd50010db94bdba78a4c2082944ed39df7d17fadd2 +EBUILD vkd3d-proton-2.6-r1.ebuild 6769 BLAKE2B 1ce6d145c43d10116d8dfc4eb90951c438f78b0990da7984f33b273dae406ef0373e7ccd1ec5d849b84a62fff911dd89c74a07cb38b393b43803666cb192fd34 SHA512 aa2385c06fd9907194d5ea1b38ac403982f31eb7646a11d3c5a8d4c70f67de7420097be3879a47e19b5c59764feeeebba0e641966eee1748be3c2ee6db50b2a3 +EBUILD vkd3d-proton-9999.ebuild 7382 BLAKE2B da0fb8ec9449ae975cb4f2c038d2165c563602ea165775cb1395de96cdbc1ab8ff2ddcec82cac2511b4b3175b5d6d4b429f831d91f59d38be377021af5459a85 SHA512 b5aa0e059e1203b957f4dfa3928c569452edfda4134540dbd58e7cc39bada9fdae4ddb1b50758045a1b32fb5d95c79cf955c9c506702f4fe9951264dd3814e94 MISC metadata.xml 677 BLAKE2B 1caac710282366e24f8276c8748d9c84e19fcf9a064e901fbca4989be500f56be0e01d7a499aba5435d3537ae80111a7ca6842755bde7f3e34eba517c8e19e83 SHA512 89151eba97cd38f7c8d13c697ada2c2d2b9cff1ad16af42243f387f0700cb824304a9d6e1b740bb43c2474cf77e2550718d4a03d33095a254b7491ff5f1f3daa diff --git a/app-emulation/vkd3d-proton/vkd3d-proton-2.12.ebuild b/app-emulation/vkd3d-proton/vkd3d-proton-2.12.ebuild index 8c2a99c5de97..024c5bb46c87 100644 --- a/app-emulation/vkd3d-proton/vkd3d-proton-2.12.ebuild +++ b/app-emulation/vkd3d-proton/vkd3d-proton-2.12.ebuild @@ -119,10 +119,8 @@ src_configure() { # performance, GPU does the actual work) filter-lto - # -mavx with mingw-gcc has a history of obscure issues and - # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg` - # crashes with -march=skylake >=wine-8.10, similar issues with - # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273 + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 append-flags -mno-avx if [[ ${CHOST} != *-mingw* ]]; then diff --git a/app-emulation/vkd3d-proton/vkd3d-proton-2.13.ebuild b/app-emulation/vkd3d-proton/vkd3d-proton-2.13.ebuild index 2ddc2bc48d4f..47803cf8b2f6 100644 --- a/app-emulation/vkd3d-proton/vkd3d-proton-2.13.ebuild +++ b/app-emulation/vkd3d-proton/vkd3d-proton-2.13.ebuild @@ -119,10 +119,8 @@ src_configure() { # performance, GPU does the actual work) filter-lto - # -mavx with mingw-gcc has a history of obscure issues and - # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg` - # crashes with -march=skylake >=wine-8.10, similar issues with - # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273 + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 append-flags -mno-avx if [[ ${CHOST} != *-mingw* ]]; then diff --git a/app-emulation/vkd3d-proton/vkd3d-proton-2.14.1.ebuild b/app-emulation/vkd3d-proton/vkd3d-proton-2.14.1.ebuild index ee481dec3ed1..0e0f6c245fea 100644 --- a/app-emulation/vkd3d-proton/vkd3d-proton-2.14.1.ebuild +++ b/app-emulation/vkd3d-proton/vkd3d-proton-2.14.1.ebuild @@ -119,10 +119,8 @@ src_configure() { # performance, GPU does the actual work) filter-lto - # -mavx with mingw-gcc has a history of obscure issues and - # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg` - # crashes with -march=skylake >=wine-8.10, similar issues with - # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273 + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 append-flags -mno-avx if [[ ${CHOST} != *-mingw* ]]; then diff --git a/app-emulation/vkd3d-proton/vkd3d-proton-2.6-r1.ebuild b/app-emulation/vkd3d-proton/vkd3d-proton-2.6-r1.ebuild index 9a41d28143b1..e14b9bbd7175 100644 --- a/app-emulation/vkd3d-proton/vkd3d-proton-2.6-r1.ebuild +++ b/app-emulation/vkd3d-proton/vkd3d-proton-2.6-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2024 Gentoo Authors +# Copyright 2022-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -110,10 +110,8 @@ src_configure() { # performance, GPU does the actual work) filter-lto - # -mavx with mingw-gcc has a history of obscure issues and - # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg` - # crashes with -march=skylake >=wine-8.10, similar issues with - # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273 + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 append-flags -mno-avx if [[ ${CHOST} != *-mingw* ]]; then diff --git a/app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild b/app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild index a573681d93e6..913349a19e2c 100644 --- a/app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild +++ b/app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild @@ -119,10 +119,8 @@ src_configure() { # performance, GPU does the actual work) filter-lto - # -mavx with mingw-gcc has a history of obscure issues and - # disabling is seen as safer, e.g. `WINEARCH=win32 winecfg` - # crashes with -march=skylake >=wine-8.10, similar issues with - # znver4: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110273 + # -mavx and mingw-gcc do not mix safely here + # https://github.com/doitsujin/dxvk/issues/4746#issuecomment-2708869202 append-flags -mno-avx if [[ ${CHOST} != *-mingw* ]]; then diff --git a/app-emulation/wine-staging/Manifest b/app-emulation/wine-staging/Manifest index c5fab13ab2b7..b36b77b07d69 100644 --- a/app-emulation/wine-staging/Manifest +++ b/app-emulation/wine-staging/Manifest @@ -5,14 +5,17 @@ AUX wine-staging-8.13-rpath.patch 554 BLAKE2B 209d8c581a9178242ee622338c5252f79b DIST wine-10.0.tar.xz 32011244 BLAKE2B 92178cf484cf33e9f3b8340429ee8e68c36e0d25eee4a892f059ab73f103cfcb9eb15e1883bc9fd8c8fe311d4ccbb56582d1f780da7b1406a7839a13addd29ae SHA512 effb41c5641993e2e52eaa825cc19b7d9846e084992c5a5b066ead2339b24384d320898a9cee347a9a87106bcb3b0f54c8cd2c8d4de3a887a658052ddd5168d6 DIST wine-10.1.tar.xz 32026152 BLAKE2B 573c4cc10c96c164eb02111b0a457be5500ab42c6d103180af5b2f88cdbcc134ea1fdb794687e6c736ebb5f9aa266e51424df26cd239fa26679d968ab5844cc3 SHA512 2dbc63e43e2cc1e0bf6294a926e8afc316e9f32efdce644229cb33bba98f6001c3f285b527767a83e5284558ef11f00515048aad031c6fc9122a4ce0692952af DIST wine-10.2.tar.xz 32050716 BLAKE2B 78a60d82640c9ffdf8a96b58aaa8a86cce0f67d48dc082e97a2bfaf077f849b99fa7d5418a42d2f18176afedd9a7270a08ca872af5c43c10fd64fe1eddf7cfdf SHA512 893395e29d72898579850c4084838c76b8a53659b4a3917e47d853733fafaa0e57bfde31437862955cdfab94327622eb290488d6120d76eeb2a4fa70dff5ef67 +DIST wine-10.3.tar.xz 32280996 BLAKE2B 49e3e1d4da74a647c01b3326b2d79ac102fa67b43cd3134e8ca66696003ee9f1a5835b093896d8b8e4ff1fd2c229db8c004fdcfec79fbc0d559985094374a4e1 SHA512 361edb93f062f44592b55ba298d1e2b49857bf067791cc92424c812412aff93955dcb7726e3f87fd304f3e567693b547fa5a149b58990c914f91c585fede2716 DIST wine-9.0.tar.xz 30007216 BLAKE2B cf53177201a2f7eeb35d0d8ce220f80808d979099a928ad60652d1dee92620c433cc105dffab4e9309f41766087ad1544ef49d2922538bb420d62f6dd64117a1 SHA512 838daf2c4581f83f8573b988036f517d57b84894b090a2a17433255d6d044dfa880e6724cdb83082a36c333df9d2083ab68ae53927622a620edd59f33462ada4 DIST wine-staging-10.0.tar.gz 9490601 BLAKE2B 2843d6fbeca285a258dbb7505e2451d183b175a9d0b95a03551d635ca8a81c5ba5702d634f45be8d8574435a0fc77b84ca289350e4e74e97b9d5c7b1b8706fbe SHA512 1340473c0ede35450d9cb91bdca2fb237dd2c19e7cde7a05f3c2c70b741f4321e54a1cc4042a48dc83e07dc6967c904fae6c22233ce28fbc6dfa836cef281250 DIST wine-staging-10.1.tar.gz 9542987 BLAKE2B d23934dd7da9f324935087ad7cff74e544bc8191e3570a125e468c18a170459135ef37cce3780f4625c8b4e330c5bf3f32c59d1cd034a465def3ec60c7efa65c SHA512 1b837a2b0c417dcf1821139b0cf220995305b22e59cc5d93b5055d4c6dc9c36da7b05f6a9f136b5f1a60618e497c0e4d295343880504f7ebb1e9fafeb2f0b38a DIST wine-staging-10.2.tar.gz 9386579 BLAKE2B 2a6346a3091bc187cb6ecacb5bff28975cf1e0343254b83cb6fcb907eb0f2f418838e29b7093f4e1683f4402f3a8278fd58465b92f4f83a20e4962faa9a55a6a SHA512 e5ef197786c8dd50f21d000a19ec3c9acff6d93fcf975f3539e5fe54a951e31bbe97b882ce8f8b00f35757c85ffe377c966bb7b95b6cfb8e25d95ca9f2bc5e10 +DIST wine-staging-10.3.tar.gz 9417555 BLAKE2B 535dc17d7bd0880a07b119287e58c921d6a51472ea71d87e5deea2673bb11cd2abefdedca3480817d7603296e58f9e80b0c588374572f6e9d18c82fe98fc5515 SHA512 e767f3c1ed49eec5e0522bc7c8f02d97c3e8fdac2003e4833b27d58eb8347c65663ce4a081705142cff8ae0e5326196a36fe9b545a9fb8359994c94cc39a466a DIST wine-staging-9.0.tar.gz 9577631 BLAKE2B 0012978f54c618e73d407dd49dccff02853912d0c015098889802518e8c51b280f5d60e11291335dafc68944ee01cbcb7fd6c5825ef10ae1520c7b82d9846718 SHA512 362209fcadcf029152b681c76beb231d0cc8de1609b994094f1dc88ab871fddda08b3d8c2fe36ceb38909a9d634c1ade864ca0f28a6a7715ec286a8b2884981f EBUILD wine-staging-10.0.ebuild 15577 BLAKE2B 0e1884a58ff1a199faf4ec16ce00488efe604616d48771b8c60a2ea1e8157fba3bb8af3cc4d9f38b41c48ae0fe9a5cfcd5c7d612833850c832914fd4e24f445b SHA512 011883299f5e2087671f600cf2ceaa28c9960f6a50a6514a2a46a29ce222df5153438569b6c9d4c3fa36d9644e5c3a2adce12df21cad0c5ee762b44a576e9376 EBUILD wine-staging-10.1.ebuild 15577 BLAKE2B 0e1884a58ff1a199faf4ec16ce00488efe604616d48771b8c60a2ea1e8157fba3bb8af3cc4d9f38b41c48ae0fe9a5cfcd5c7d612833850c832914fd4e24f445b SHA512 011883299f5e2087671f600cf2ceaa28c9960f6a50a6514a2a46a29ce222df5153438569b6c9d4c3fa36d9644e5c3a2adce12df21cad0c5ee762b44a576e9376 EBUILD wine-staging-10.2.ebuild 14882 BLAKE2B 22f9de28c34fc196efbb7ec0ea0f3ffd26a7cf6e3330e9760a96c5d711886b89596b26943c2c1d4008092800e86aa57d04cd82897f0210621bf12c7151a6eca0 SHA512 35224e453261e4164218d269dcd55be965c2a4566c631f3e34752d5ddbf4a28e036673f4f4255115521e23eac6bf5361ef3a41276b01be362656b7e8b08a8a11 +EBUILD wine-staging-10.3.ebuild 14916 BLAKE2B 912e67caded0814a2d3492fec8a2f525a5b0ecf5a3fd699a761a0f90210b7f838ba06ba5114c9fedc630bc5b3592086b2340a854a8c8ba907b5c523038ba1451 SHA512 6875f9dd661466ba1786f8091a95c48d40d347b12868ec613f8cb8dea10d9e15629afce41e0bcd8bf1f4e4f43c3a35d87ed06d9f9a939b5ec1d5f33c4e8a1c2a EBUILD wine-staging-9.0.ebuild 15782 BLAKE2B c211258535d08aed5f878dbe6d8e7df30229128d3fd84b20f9090711e27f14b0f98033abde5536db4eb01f74bc8c934e9fdd08d2fe75cf5cba60d941c4e743d9 SHA512 26bde08bc29971c0d7bfee39cad0d262bc11803ef7302f3ee890b5f8bbb9c9507fce09188beaef7162158d6158a0f644cb626f39cc5d11e37023fa38eb454c77 EBUILD wine-staging-9999.ebuild 14916 BLAKE2B 912e67caded0814a2d3492fec8a2f525a5b0ecf5a3fd699a761a0f90210b7f838ba06ba5114c9fedc630bc5b3592086b2340a854a8c8ba907b5c523038ba1451 SHA512 6875f9dd661466ba1786f8091a95c48d40d347b12868ec613f8cb8dea10d9e15629afce41e0bcd8bf1f4e4f43c3a35d87ed06d9f9a939b5ec1d5f33c4e8a1c2a MISC metadata.xml 2633 BLAKE2B 9e8d90c3e1057c2087150657a6cb7e33609d981b11a8a490bf9479c85e9759b32dfb0d4d3179e1cd04192f6949c083d21097eac5ac47e7e38e9fd252b1df5133 SHA512 3f4df059fe41f12b5cbe8f5a5596646bae991860dad281572dcf4cb74596446bcea50d274418c6b2640d4e2a1818e9f14c784596ab3ceff8a7fa2551839371cd diff --git a/app-emulation/wine-staging/wine-staging-10.3.ebuild b/app-emulation/wine-staging/wine-staging-10.3.ebuild new file mode 100644 index 000000000000..6a55fe4a74ce --- /dev/null +++ b/app-emulation/wine-staging/wine-staging-10.3.ebuild @@ -0,0 +1,467 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MULTILIB_COMPAT=( abi_x86_{32,64} ) +PYTHON_COMPAT=( python3_{10..13} ) +inherit autotools edo flag-o-matic multilib multilib-build optfeature +inherit prefix python-any-r1 toolchain-funcs wrapper + +WINE_GECKO=2.47.4 +WINE_MONO=9.4.0 +WINE_P=wine-$(ver_cut 1-2) + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine-staging.git" + WINE_EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git" +else + (( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0 + SRC_URI=" + https://dl.winehq.org/wine/source/${WINE_SDIR}/${WINE_P}.tar.xz + https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="-* ~amd64 ~x86" +fi + +DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset" +HOMEPAGE=" + https://wiki.winehq.org/Wine-Staging + https://gitlab.winehq.org/wine/wine-staging/ +" + +S="${WORKDIR}/${WINE_P}" + +LICENSE=" + LGPL-2.1+ + BSD BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff + || ( WTFPL-2 public-domain ) +" +SLOT="${PV}" +IUSE=" + +X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups +dbus dos + llvm-libunwind custom-cflags ffmpeg +fontconfig +gecko gphoto2 + +gstreamer kerberos +mingw +mono netapi nls odbc opencl +opengl + pcap perl pulseaudio samba scanner +sdl selinux smartcard +ssl + +strip +truetype udev +unwind usb v4l +vulkan wayland wow64 + +xcomposite xinerama +" +# bug #551124 for truetype +# TODO: wow64 can be done without mingw if using clang (needs bug #912237) +REQUIRED_USE=" + X? ( truetype ) + crossdev-mingw? ( mingw ) + wow64? ( abi_x86_64 !abi_x86_32 mingw ) +" + +# tests are non-trivial to run, can hang easily, don't play well with +# sandbox, and several need real opengl/vulkan or network access +RESTRICT="test" + +# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked +WINE_DLOPEN_DEPEND=" + X? ( + x11-libs/libXcursor[${MULTILIB_USEDEP}] + x11-libs/libXfixes[${MULTILIB_USEDEP}] + x11-libs/libXi[${MULTILIB_USEDEP}] + x11-libs/libXrandr[${MULTILIB_USEDEP}] + x11-libs/libXrender[${MULTILIB_USEDEP}] + x11-libs/libXxf86vm[${MULTILIB_USEDEP}] + opengl? ( media-libs/libglvnd[X,${MULTILIB_USEDEP}] ) + xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] ) + xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] ) + ) + cups? ( net-print/cups[${MULTILIB_USEDEP}] ) + dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) + fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] ) + kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] ) + netapi? ( net-fs/samba[${MULTILIB_USEDEP}] ) + odbc? ( dev-db/unixODBC[${MULTILIB_USEDEP}] ) + sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] ) + ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] ) + truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] ) + v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] ) + vulkan? ( media-libs/vulkan-loader[X?,wayland?,${MULTILIB_USEDEP}] ) +" +WINE_COMMON_DEPEND=" + ${WINE_DLOPEN_DEPEND} + X? ( + x11-libs/libX11[${MULTILIB_USEDEP}] + x11-libs/libXext[${MULTILIB_USEDEP}] + ) + alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] ) + capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] ) + ffmpeg? ( media-video/ffmpeg:=[${MULTILIB_USEDEP}] ) + gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] ) + gstreamer? ( + dev-libs/glib:2[${MULTILIB_USEDEP}] + media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}] + media-libs/gstreamer:1.0[${MULTILIB_USEDEP}] + ) + opencl? ( virtual/opencl[${MULTILIB_USEDEP}] ) + pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] ) + pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] ) + scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] ) + smartcard? ( sys-apps/pcsc-lite[${MULTILIB_USEDEP}] ) + udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] ) + unwind? ( + llvm-libunwind? ( llvm-runtimes/libunwind[${MULTILIB_USEDEP}] ) + !llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] ) + ) + usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] ) + wayland? ( + dev-libs/wayland[${MULTILIB_USEDEP}] + x11-libs/libxkbcommon[${MULTILIB_USEDEP}] + ) +" +RDEPEND=" + ${WINE_COMMON_DEPEND} + app-emulation/wine-desktop-common + dos? ( + || ( + games-emulation/dosbox + games-emulation/dosbox-staging + ) + ) + gecko? ( + app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}] + wow64? ( app-emulation/wine-gecko[abi_x86_32] ) + ) + gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] ) + mono? ( app-emulation/wine-mono:${WINE_MONO} ) + perl? ( + dev-lang/perl + dev-perl/XML-LibXML + ) + samba? ( net-fs/samba[winbind] ) + selinux? ( sec-policy/selinux-wine ) +" +DEPEND=" + ${WINE_COMMON_DEPEND} + sys-kernel/linux-headers + X? ( x11-base/xorg-proto ) +" +# gitapply.sh "can" work without git but that is hardly tested +# and known failing with some versions, so force real git +BDEPEND=" + ${PYTHON_DEPS} + || ( + sys-devel/binutils + llvm-core/lld + ) + dev-lang/perl + dev-vcs/git + sys-devel/bison + sys-devel/flex + virtual/pkgconfig + mingw? ( !crossdev-mingw? ( + >=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}] + wow64? ( dev-util/mingw64-toolchain[abi_x86_32] ) + ) ) + nls? ( sys-devel/gettext ) + wayland? ( dev-util/wayland-scanner ) +" +IDEPEND=">=app-eselect/eselect-wine-2" + +QA_CONFIG_IMPL_DECL_SKIP=( + __clear_cache # unused on amd64+x86 (bug #900334) + res_getservers # false positive +) +QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext + +PATCHES=( + "${FILESDIR}"/${PN}-7.17-noexecstack.patch + "${FILESDIR}"/${PN}-7.20-unwind.patch + "${FILESDIR}"/${PN}-8.13-rpath.patch +) + +pkg_pretend() { + [[ ${MERGE_TYPE} == binary ]] && return + + if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then + local mingw=-w64-mingw32 + for mingw in $(usev abi_x86_64 x86_64${mingw}) \ + $(use abi_x86_32 || use wow64 && echo i686${mingw}); do + if ! type -P ${mingw}-gcc >/dev/null; then + eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain" + eerror "yourself by installing sys-devel/crossdev then running:" + eerror + eerror " crossdev --target ${mingw}" + eerror + eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw" + die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found" + fi + done + fi +} + +src_unpack() { + if [[ ${PV} == *9999 ]]; then + EGIT_CHECKOUT_DIR=${WORKDIR}/${P} + git-r3_src_unpack + + # hack: use subshell to preserve state (including what git-r3 unpack + # sets) for smart-live-rebuild as this is not the repo to look at + ( + EGIT_COMMIT=$(<"${EGIT_CHECKOUT_DIR}"/staging/upstream-commit) || die + EGIT_REPO_URI=${WINE_EGIT_REPO_URI} + EGIT_CHECKOUT_DIR=${S} + einfo "Fetching Wine commit matching the current patchset by default (${EGIT_COMMIT})" + git-r3_src_unpack + ) + else + default + fi +} + +src_prepare() { + local patchinstallargs=( + --all + --no-autoconf + ${MY_WINE_STAGING_CONF} + ) + + edo "${PYTHON}" ../${P}/staging/patchinstall.py "${patchinstallargs[@]}" + + # sanity check, bumping these has a history of oversights + local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \ + dlls/appwiz.cpl/addons.c || die) + if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then + local gmfatal= + [[ ${PV} == *9999 ]] && gmfatal=nonfatal + ${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)" + fi + + default + + if tc-is-clang; then + if use mingw; then + # -mabi=ms was ignored by <clang:16 then turned error in :17 + # if used without --target *-windows, then gets used in install + # phase despite USE=mingw, drop as a quick fix for now + sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die + else + # fails in ./configure unless --enable-archs is passed, allow to + # bypass with EXTRA_ECONF but is currently considered unsupported + # (by Gentoo) as additional work is needed for (proper) support + # note: also fails w/ :17, but unsure if safe to drop w/o mingw + [[ ${EXTRA_ECONF} == *--enable-archs* ]] || + die "building ${PN} with clang is only supported with USE=mingw" + fi + fi + + # ensure .desktop calls this variant + slot + sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die + + # datadir is not where wine-mono is installed, so prefixy alternate paths + hprefixify -w /get_mono_path/ dlls/mscoree/metahost.c + + # always update for patches (including user's wrt #432348) + eautoreconf + tools/make_requests || die # perl + # tip: if need more for user patches, with portage can e.g. do + # echo "post_src_prepare() { tools/make_specfiles || die; }" \ + # > /etc/portage/env/app-emulation/wine-staging +} + +src_configure() { + WINE_PREFIX=/usr/lib/${P} + WINE_DATADIR=/usr/share/${P} + + local conf=( + --prefix="${EPREFIX}"${WINE_PREFIX} + --datadir="${EPREFIX}"${WINE_DATADIR} + --includedir="${EPREFIX}"/usr/include/${P} + --libdir="${EPREFIX}"${WINE_PREFIX} + --mandir="${EPREFIX}"${WINE_DATADIR}/man + + $(usev wow64 --enable-archs=x86_64,i386) + + $(use_enable gecko mshtml) + $(use_enable mono mscoree) + --disable-tests + + $(use_with X x) + $(use_with alsa) + $(use_with capi) + $(use_with cups) + $(use_with dbus) + $(use_with ffmpeg) + $(use_with fontconfig) + $(use_with gphoto2 gphoto) + $(use_with gstreamer) + $(use_with kerberos gssapi) + $(use_with kerberos krb5) + $(use_with mingw) + $(use_with netapi) + $(use_with nls gettext) + $(use_with opencl) + $(use_with opengl) + --without-osmesa # media-libs/mesa no longer supports this + --without-oss # media-sound/oss is not packaged (OSSv4) + $(use_with pcap) + $(use_with pulseaudio pulse) + $(use_with scanner sane) + $(use_with sdl) + $(use_with smartcard pcsclite) + $(use_with ssl gnutls) + $(use_with truetype freetype) + $(use_with udev) + $(use_with unwind) + $(use_with usb) + $(use_with v4l v4l2) + $(use_with vulkan) + $(use_with wayland) + $(use_with xcomposite) + $(use_with xinerama) + $(usev !odbc ac_cv_lib_soname_odbc=) + ) + + filter-lto # build failure + filter-flags -Wl,--gc-sections # runtime issues (bug #931329) + use custom-cflags || strip-flags # can break in obscure ways at runtime + + # broken with gcc-15's c23 default (TODO: try w/o occasionally, bug #943849) + append-cflags -std=gnu17 + + # wine uses linker tricks unlikely to work with non-bfd/lld (bug #867097) + # (do self test until https://github.com/gentoo/gentoo/pull/28355) + if [[ $(LC_ALL=C $(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) != @(LLD|GNU\ ld)* ]] + then + has_version -b sys-devel/binutils && + append-ldflags -fuse-ld=bfd || + append-ldflags -fuse-ld=lld + strip-unsupported-flags + fi + + if use mingw; then + use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH} + + # CROSSCC was formerly recognized by wine, thus been using similar + # variables (subject to change, esp. if ever make a mingw.eclass). + local mingwcc_amd64=${CROSSCC:-${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}} + local mingwcc_x86=${CROSSCC:-${CROSSCC_x86:-i686-w64-mingw32-gcc}} + local -n mingwcc=mingwcc_$(usex abi_x86_64 amd64 x86) + + conf+=( + ac_cv_prog_x86_64_CC="${mingwcc_amd64}" + ac_cv_prog_i386_CC="${mingwcc_x86}" + + CROSSCFLAGS="${CROSSCFLAGS:-$( + filter-flags '-fstack-protector*' #870136 + filter-flags '-mfunction-return=thunk*' #878849 + + # some bashrc-mv users tend to do CFLAGS="${LDFLAGS}" and then + # strip-unsupported-flags miss these during compile-only tests + # (primarily done for 23.0 profiles' -z, not full coverage) + filter-flags '-Wl,-z,*' + + CC=${mingwcc} test-flags-CC ${CFLAGS:--O2} + )}" + + CROSSLDFLAGS="${CROSSLDFLAGS:-$( + filter-flags '-fuse-ld=*' + + CC=${mingwcc} test-flags-CCLD ${LDFLAGS} + )}" + ) + fi + + # order matters with multilib: configure+compile 64->32, install 32->64 + local -i bits + for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do + ( + einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..." + + mkdir ../build${bits} || die + cd ../build${bits} || die + + if (( bits == 64 )); then + conf+=( --enable-win64 ) + elif use amd64; then + conf+=( + $(usev abi_x86_64 --with-wine64=../build64) + TARGETFLAGS=-m32 # for widl + ) + # _setup is optional, but use over Wine's auto-detect (+#472038) + multilib_toolchain_setup x86 + fi + + ECONF_SOURCE=${S} econf "${conf[@]}" + ) + done +} + +src_compile() { + use abi_x86_64 && emake -C ../build64 # do first + use abi_x86_32 && emake -C ../build32 +} + +src_install() { + use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install + use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last + + # "wine64" is no longer provided, but a keep symlink for old scripts + # TODO: remove the guard later, only useful for bisecting -9999 + if [[ ! -e ${ED}${WINE_PREFIX}/bin/wine64 ]]; then + use abi_x86_64 && dosym wine ${WINE_PREFIX}/bin/wine64 + fi + + use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \ + "${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die + + # create variant wrappers for eselect-wine + local bin + for bin in "${ED}"${WINE_PREFIX}/bin/*; do + make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}" + done + + if use mingw; then + # don't let portage try to strip PE files with the wrong + # strip executable and instead handle it here (saves ~120MB) + dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows + + if use strip; then + ebegin "Stripping Windows (PE) binaries" + find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \ + -exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + + eend ${?} || die + fi + fi + + dodoc ANNOUNCE* AUTHORS README* documentation/README* +} + +pkg_postinst() { + if use !abi_x86_32 && use !wow64; then + ewarn "32bit support is disabled. While 64bit applications themselves will" + ewarn "work, be warned that it is not unusual that installers or other helpers" + ewarn "will attempt to use 32bit and fail. If do not want full USE=abi_x86_32," + ewarn "note the experimental/WIP USE=wow64 can allow 32bit without multilib." + elif use abi_x86_32 && { use opengl || use vulkan; }; then + # difficult to tell what is needed from here, but try to warn + if has_version 'x11-drivers/nvidia-drivers'; then + if has_version 'x11-drivers/nvidia-drivers[-abi_x86_32]'; then + ewarn "x11-drivers/nvidia-drivers is installed but is built without" + ewarn "USE=abi_x86_32 (ABI_X86=32), hardware acceleration with 32bit" + ewarn "applications under ${PN} will likely not be usable." + ewarn "Multi-card setups may need this on media-libs/mesa as well." + fi + elif has_version 'media-libs/mesa[-abi_x86_32]'; then + ewarn "media-libs/mesa seems to be in use but is built without" + ewarn "USE=abi_x86_32 (ABI_X86=32), hardware acceleration with 32bit" + ewarn "applications under ${PN} will likely not be usable." + fi + fi + + optfeature "/dev/hidraw* access used for *some* controllers (e.g. DualShock4)" \ + games-util/game-device-udev-rules + + eselect wine update --if-unset || die +} + +pkg_postrm() { + if has_version -b app-eselect/eselect-wine; then + eselect wine update --if-unset || die + fi +} |