From bd4aeefe33e63f613512604e47bfca7b2187697d Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 3 Nov 2019 16:06:58 +0000 Subject: gentoo resync : 03.11.2019 --- www-client/chromium/Manifest | 34 +- www-client/chromium/chromium-77.0.3865.90.ebuild | 733 -------------------- www-client/chromium/chromium-78.0.3904.34.ebuild | 741 -------------------- www-client/chromium/chromium-78.0.3904.70.ebuild | 742 +++++++++++++++++++++ www-client/chromium/chromium-78.0.3904.87.ebuild | 742 +++++++++++++++++++++ www-client/chromium/chromium-79.0.3945.8.ebuild | 740 ++++++++++++++++++++ .../chromium/files/chromium-77-blink-include.patch | 28 - .../chromium/files/chromium-77-fix-gn-gen.patch | 11 - .../chromium/files/chromium-77-gcc-abstract.patch | 61 -- .../chromium/files/chromium-77-gcc-alignas.patch | 72 -- .../chromium/files/chromium-77-gcc-include.patch | 26 - .../chromium/files/chromium-77-no-cups.patch | 42 -- .../chromium/files/chromium-77-std-string.patch | 130 ---- .../chromium/files/chromium-77-system-hb.patch | 13 - www-client/chromium/files/chromium-78-icon.patch | 12 + .../chromium/files/chromium-78-include.patch | 15 + .../chromium/files/chromium-78-pm-crash.patch | 43 ++ .../chromium/files/chromium-79-gcc-alignas.patch | 108 +++ .../chromium-79-gcc-ambiguous-nodestructor.patch | 39 ++ .../files/chromium-79-gcc-name-clash.patch | 135 ++++ .../files/chromium-79-gcc-permissive.patch | 79 +++ www-client/chromium/files/chromium-79-icu-65.patch | 13 + .../chromium/files/chromium-79-include.patch | 131 ++++ .../chromium/files/chromium-79-system-hb.patch | 19 + .../chromium/files/chromium-angle-inline.patch | 118 ---- .../chromium/files/chromium-unbundle-zlib.patch | 25 - 26 files changed, 2835 insertions(+), 2017 deletions(-) delete mode 100644 www-client/chromium/chromium-77.0.3865.90.ebuild delete mode 100644 www-client/chromium/chromium-78.0.3904.34.ebuild create mode 100644 www-client/chromium/chromium-78.0.3904.70.ebuild create mode 100644 www-client/chromium/chromium-78.0.3904.87.ebuild create mode 100644 www-client/chromium/chromium-79.0.3945.8.ebuild delete mode 100644 www-client/chromium/files/chromium-77-blink-include.patch delete mode 100644 www-client/chromium/files/chromium-77-fix-gn-gen.patch delete mode 100644 www-client/chromium/files/chromium-77-gcc-abstract.patch delete mode 100644 www-client/chromium/files/chromium-77-gcc-alignas.patch delete mode 100644 www-client/chromium/files/chromium-77-gcc-include.patch delete mode 100644 www-client/chromium/files/chromium-77-no-cups.patch delete mode 100644 www-client/chromium/files/chromium-77-std-string.patch delete mode 100644 www-client/chromium/files/chromium-77-system-hb.patch create mode 100644 www-client/chromium/files/chromium-78-icon.patch create mode 100644 www-client/chromium/files/chromium-78-pm-crash.patch create mode 100644 www-client/chromium/files/chromium-79-gcc-alignas.patch create mode 100644 www-client/chromium/files/chromium-79-gcc-ambiguous-nodestructor.patch create mode 100644 www-client/chromium/files/chromium-79-gcc-name-clash.patch create mode 100644 www-client/chromium/files/chromium-79-gcc-permissive.patch create mode 100644 www-client/chromium/files/chromium-79-icu-65.patch create mode 100644 www-client/chromium/files/chromium-79-include.patch create mode 100644 www-client/chromium/files/chromium-79-system-hb.patch delete mode 100644 www-client/chromium/files/chromium-angle-inline.patch delete mode 100644 www-client/chromium/files/chromium-unbundle-zlib.patch (limited to 'www-client/chromium') diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest index a6070a175b9a..844a7fbae777 100644 --- a/www-client/chromium/Manifest +++ b/www-client/chromium/Manifest @@ -1,33 +1,33 @@ -AUX chromium-77-blink-include.patch 1065 BLAKE2B 09efdaac62f5bf47fd368b08c90b58d0f61d849a8a365fe3963712d3adc3dcea4fef36e15666b5fd907e8204c7bedc400c8c2021425fc9b98b2e2328b6c5ffe7 SHA512 2e7ec441108ef36a6cfd711a35ca728a5464bfd0dd3ee78ee9659eed3266ce673b53402499fd8b8ca5f1366e2d1b8f8c5903585fd20924d0393a655d5d0ef369 AUX chromium-77-clang.patch 411 BLAKE2B 95209cbf367f62cd77c7acad3b4a0e55e0f3fd509e58a53cbd3579edf37211f4a55180f77e8b1589fdeb0b6e1d38ca6eada6d67b08c19fe2a1bd019c587afeb2 SHA512 501c33ef25abf8148c4b0ae474cb354c2a32edfb36a4f041a14a5d1a8706a80395a2e2f117bcc31e5671e6e58710faa29f9ac9dcae8b4af8952310f578a572cc -AUX chromium-77-fix-gn-gen.patch 383 BLAKE2B 63cc165468ef1db93b9b4764d73790526cb71d91c384dd2d7d3a4c9e212e34ef8edbdab3a01213a0fc7f378cbe80d3a6e726f2448a1e9f97fa31848a80b854fb SHA512 3e690af4cd5e5631da30abb75704270fd5176419e515c8e6541265a73d490df2018646b27e867bd2f26d7ca918ea276a2a7608b463d8a2acc26ec43f8f52ee6c -AUX chromium-77-gcc-abstract.patch 2667 BLAKE2B ad316c185b12e1c7b2a378eac908590e7db546ab72387266db4315bf7a40015381a0cc494aa9d3d6e14873cf28d7e5bb5f6dde4576f301297e0f711eeaa6fbc8 SHA512 e2c69dd72d7cb9f0fa29b56f5c9788cea7c60e753129a69731b94e1854a3db0e07cd4cb53e3c8c2bb1a999cdda546886292e47ba159f3138c211ee3c3e3ffca6 -AUX chromium-77-gcc-alignas.patch 3128 BLAKE2B 01b13ba21496aa8f7d822d361595056b186034245dad32047e13d05817197962d904731d68cea8c27e89a79dd725c71473b5acce881ed4da9a4711fb66e8c00f SHA512 666ff13e88cd937cfa150510862272977380fc148f65f39485f568cb42a37891aa45d8c6f3315fd79847cb2432d78f530662aae399eda1b9fc325a8ce59c9f1b -AUX chromium-77-gcc-include.patch 966 BLAKE2B e73bf54cd864b8afb4a7a0b5c3472aac9ad8112c5d9d6dd4c7e7a915f8612cb303b5235a2fdda2ba54ede1467c84c4feb1fd310aeefcede1b16b0ac4e617cf18 SHA512 f47c07493870abd97ddfdd7f01c81c90109db804e50ac174b59ce98f161ae2f7721e01a8865f9bc35fabf439be2bd70d944cb1ca8e2e84e340b7da0ed26633e0 -AUX chromium-77-no-cups.patch 1748 BLAKE2B 3b3fc92f9be0ad0c4b8f7918c290385f408b04731f5587be42277312bb9a78739a5e3697a6386143c6700db805ac52086d9f3aa0556682ee6134135dec606129 SHA512 3c8ee9cd42b81ba9ae95090dda9d22efabc86c151e35a6f74a949d3f6d760f0e8d7e654602beee71420670cb0b3532788ca563076f389557c097af2569d455db AUX chromium-77-pulseaudio-13.patch 4402 BLAKE2B 967593e1fdf05d9bb1c7a489b9156024cef3fc7c49a1b1bfefbb8438c42b9bfb807422cc67568d425a37f181e6863d12c9629856852d5ba37f93c0c45919a1d9 SHA512 4aee9b0d31a682da2e4362856532965608a5d718f8f74812bb240b03f94620acb502c9f806c788ea26da386eff0b6c5dfba15cd4ce84b11e6381d70bf59bc483 -AUX chromium-77-std-string.patch 4640 BLAKE2B 9561bf2049364960b0cfd340eb29b86810354a5d20f5785b2c1fbe8c44e584f2c98c4af9e80633760c09f3908266765c0c234a38dd3e26601b5fc21f0dd6127f SHA512 9dbad2497cd3e5a47e9135c1553eebbc8ae8098dd6cf2a9a5625a6bbed70a478434167f2de7c52ff84711a8da0c9636c499dd6c4495bf6904796fdb023a6510d -AUX chromium-77-system-hb.patch 459 BLAKE2B b1ac6e0007ca3aa26acd7f60e1c48ef8c0bdd80fa3e7f6ac97dc6a977864208e66e333b28bc64b9410fc368c27166b177669d09caa42909a9249059848a9f4aa SHA512 03696d8083127fd689a7953724c625a5eda3f67bad8121531dbaaefa01e2a91007d4c27bca07d137f50c5c03f14d45ba76e79ca859abf36f0fe34b9ec56dd1ac AUX chromium-77-system-icu.patch 649 BLAKE2B 7910fcb64460ef965eafdd05e98d41d14399fd337ac8f79bcb2c7059fccd61d552ab6efa1dbf8bdcce564716b3d12b41a587077034cb72ef610eff76f4e052d6 SHA512 7413e0cca7102008dd5bee443dcde90be69ef1d0973fee576f70544f0d0a66aa8bc7099e619c89160915d6cd6186384be46ffab4a1d747000133dda9a84e15e5 AUX chromium-78-gcc-alignas.patch 6152 BLAKE2B 88e7c00a8cad7ee14502398fb95a628287ae1aed7e26d1dc2c53cb5ff0ebc8c0e5f0c0f0d729662dd135513c49953e67b1c5969ed599a264c445c64c8379111a SHA512 5a82def438250a1aa432a7fd7d7e3f815d4c47134741cab4ff76c9530ef4e82570788e2e17522dd63154b67c239e9b3966ba39169939f5a52b85f68a1dd84d45 AUX chromium-78-gcc-enum-range.patch 1854 BLAKE2B 90ce5f4a75528bb66cbdef7c56aa61b210300ee5846e3a3bcfd7a0f0caca70a0891cd097e20314e161b0d1e26339e814f4be89a024fce3401059922cbd060e1b SHA512 0e785ad63f4a623571d489de3f08fd79b768ede4718f0d3a04359f54be7b4f79970b5fa603529b727da5877e7b190a368b01058a996af6236813cee19ab1fe5e AUX chromium-78-gcc-noexcept.patch 1338 BLAKE2B 47678f67a6757b5686eaaf03a16d62b10696acd7312f26c887d67c1fd61e29a0a19114c1734c0a127a314fd7b617d415761c30eff2868cdcc6d37dd50926106c SHA512 b0c12022593e8ee2f1d6c6e96a3376cd4f068c1fa1413883bd6d58a15aeb2e8a67bbf9296b1ba922c2c5531b84dfe645d1fd47c7e55558bd8ac350b8ea33a827 AUX chromium-78-gcc-std-vector.patch 4807 BLAKE2B faa58066c146c7b0e871fde394a89153331cb47d1579160968e627df62971e556e2d621e8aabd7001ca6d810386e110adb848cabf4c1b9b4cd272d95fc816713 SHA512 57e5cb77360602272eeb7c6f1b2c229f00074e971ab277798d65c4ea475b7f65faf28ad8fe0ad9c2024af5567eca782c2016ac7469570274036da4a5bc3fa5ca -AUX chromium-78-include.patch 1020 BLAKE2B 6f7b80d887623089599bd334ea1b3cc1e87d0e8667e213e9302eec868c107ddaac358d3cf0309c1581895b3db877a597f1d37f2883e6ab81f6838551db7771d2 SHA512 be0adbc49a18eb15de64eb0b7212a798ac7bf511a050cbd6797f4f8ecdf0f7f266bd3d5739c5215d5e521cfc5e22a1559a72468a9bf4b77058790e3dfbdc2895 +AUX chromium-78-icon.patch 489 BLAKE2B 5ed54a0e29c9c5e0cd4a52c8dc8da7d73b1211facee496483d3e6ba9c5e54d8c34a909fa7db7fb7ee535a70ce32058eef3dc6f4f3cc73061a03475a21412bc1f SHA512 28a5070b273cf94904fdcad846f9491c1795c2bda3ae28f4c05b18f228902632fdfe4cfddba2d8de40ea3c17d48bd139de4f1ae7590597563c6cd7d43a9a7ddb +AUX chromium-78-include.patch 1774 BLAKE2B 04c9da33a031dc54945c679b4a2f16ee8a759cf13059b97a2887fe86bfbc9606d6ced49a566b4f4ef6f22d862bdafa7ef770324da33c073cda352a06ef3ccc52 SHA512 0d3c990bdf149c5038bdeb11c65d128a15be1d4450951c7d002cb20bdcdfadb01104cd5d9c290f79784f87bf8d6657367586f464e7ea284a56a7d2e4bcf25bd8 +AUX chromium-78-pm-crash.patch 2078 BLAKE2B e81b6e940cd8b86404a3701cf85ea86da83ebf2602b708bcd8692f88400917af3bdada85c49a1502b87ad22d4893c1e59f08101f3e4d599d5a782eae92d56a1c SHA512 e32a9e5d9d746117be0a59ef91b2d01157fb7613b5411a6f7751312ed61b912709769106281ac6359ad78fa2c0da93fce01e2f481296db061828e19ac6efb8c1 AUX chromium-78-protobuf-export.patch 694 BLAKE2B 3fffcb6a7289bac848b89275a9f76e4302042362fa9bcf2689df01e0a00806c7e838210fa8696ee8e2134127ec4cfb5c3b632e2739c225f8e9586e01de7035ce SHA512 e3a80775d958740eedc7c3df0e9dd12b0e6a51ccf871a2085ab77246814e748428133d27c60322a102eb8f50bb65fc2c607e0d2665a92393be55befcbf566ab0 -AUX chromium-angle-inline.patch 4775 BLAKE2B a4021ec1e11309bf901b09e6925d7bc90f1b30c4db08dae7d80d97a9ca4111f1f34c169465017b50f459f2c638b0ba8696fd8ddf01aa27bad3c2b3bfbf22ebb9 SHA512 ad413e8178b6004ec03887132d77d8648e5a0c9bf48552c8665f0782c8cb342d4ea417caabbae3a1e62d32046afaab0033574aff2399b0b74a721d44fcd257e3 +AUX chromium-79-gcc-alignas.patch 4761 BLAKE2B 1d1c2e33f8178372e645a5b05009f29f6028a3eb398831d1d5e408e18b2ec4d534a08e3d65fc9265ace05324d73c9edb42324b16064fa03ccb79436f7769e8be SHA512 1f1e1dd3dffd9b98f8398f40845e6e485e797eb6c798a9e446d2953ff5538864d3ccc9f0b5149954d7e983cbafdca63020b336856f32687f2872a29266c3a3e0 +AUX chromium-79-gcc-ambiguous-nodestructor.patch 1472 BLAKE2B 7222056fa1cbde82e855d3025e7421e75a9605f663216dd56eda49450604b51aa2174e89831edc16e2ec6844e24f5d8960619df2dfefd2f4e7c6a06fdaf4e1f3 SHA512 0bbd97f00d695b39d31c73d9c7b99e4bcb850361d0089520febb7341a1986ad23b4a39a58b4db9ea46223cd6469e4bfdc40f0465f4348fd1c7c045158e2569e3 +AUX chromium-79-gcc-name-clash.patch 6067 BLAKE2B 699196b56a16023635ae16dfc6a65c29c3f6eb6c637e10701e9dedca3efc12170b424f7b460fa634c8eba117bcbf7c7a006df293d9808e85ee1746315f3e1b04 SHA512 470772be050bae777ef16f3a8cf91392646b96307dfd83e7a7a48f57ebd229ff83aa1dab94cf1013d7e74f427e270f981c6f3ff274a52f139c872c1924b12661 +AUX chromium-79-gcc-permissive.patch 3014 BLAKE2B 4b717bd5741e72b9fd0a6dc800abfad65551d540cc95b3c224ac890533aa61dcb194a3117f8e519e546a2e991c6b12b324e5e79b54d5a0daeecdf02138432633 SHA512 8f77343c6dcb19961fa9db3c7672eae08d5e15961bfead1d9504de4cb07a600c4dd03dae73522219a50f0e03171d074fcde715da27a00e0141e40ee0addb8ca1 +AUX chromium-79-icu-65.patch 573 BLAKE2B b716eeb78ac2fe7d32328274b8ea4f79cbc858700de0cb256fddaff35e4c593ddaec3e96469fe371399db112015ffbbbb6fe91fcbf151ca1e412a4104a0ea5f9 SHA512 2503799bd638e2cd521c04b5104081d332177e68c3c22a66a4c8930a6ff0da250893ac9aa5eb30f1a97faf78a2d33b552d69d4393c1f6278ab63e3609edf338d +AUX chromium-79-include.patch 5476 BLAKE2B 3c5ba004d51f48c3e07f9b7663b79a2573dd3b6beed3e30a7222c10c77e9f0be2b0d57b8b871657aea73d2dec2a394d37f770802414a3861f1bb4b9447905f6a SHA512 59c35e86720786e24e999c32064343220fbb40a4f8dc517b83aeef0cbc0f29042c4ff2ef99db5589eadff6743fb5fa55e5d0128c6490bbfa725e52071398b8c9 +AUX chromium-79-system-hb.patch 643 BLAKE2B 82cf0464a338034e6aae27d842d5571f2d2356c6a967186e992f6487ad9f45355166957444f70d1b1451d4f05a9572a48437c5d2352a6e473329b5dc6cc18d40 SHA512 7b19a7740a12823b4aef1ab60d7e06ca77edaf34af42e9ac2b029b5560c496f6c87dbaf11fa59b950f80b836a9bd97424c8e38d2d26101b4ac9f26befa062038 AUX chromium-browser.xml 407 BLAKE2B 168d78b0855546ca559cfb51aff0bc85d5e6ae974c25eb76e4a02f6d11659489c6e40397a0b2f7bc1fda336fd2c6dd8c863fccc3340719210b41c7fef51927f4 SHA512 b767fb4fd1925029d95560fc14cb7ab12ae43b2fe923e92d75e733b9723cbe1dcdf6df041a2b62554e98b79b47ef3f6028c773e72e6fd53166a021d49657aeca AUX chromium-compiler-r10.patch 5917 BLAKE2B a16ea6a1eee56a7de06f82e161536dab19a507f675fe8268b5a455bf36b9f5e6c1df02de73b303ab61e33153f06f118e22623d01f654d4a7c88ca8c3f8326401 SHA512 e64f9f75e685868cb8da8851e84362952a18e5dbca674c853a41feb582bdd4dc59219727f2c77440ec2030e21d7b436f144c552c30b2a4960cbe0da32c6f6c5e AUX chromium-fix-char_traits.patch 355 BLAKE2B 5269c43c4d36dc1cd190aedc04e3172fbef0048484ac7e4db15fffd69009c8ba02f0ed786c64b292fbbcd2409ad70545817cd7d45a2cb51fd76bf72250ca0018 SHA512 85ab70f168f56c01e01bdf210d107bebd7c344e95dcb692a19a0f7883ed6aec5325b38c35cd3c9b37c1915820d5e8d401e8ee92c289436fb8bc8341c3c6007a8 AUX chromium-launcher-r3.sh 1199 BLAKE2B 85f57b380cdc25bd000cf57d3c129b67f6e55d96dd958190040b0680f8d4d358ac777e0c1ebd6a1b32dd3821a377bcf9f598e073584528d0480460978c4c1fb1 SHA512 f1909314ae74985c85740d26c9bfab694f3202de8ccc392a1c4ec5c8760db21b6cc46146c78a9abebd09e6d24f37e19466f0c4d2d61815400b48d859f8ce154d AUX chromium-unbundle-zlib-r1.patch 515 BLAKE2B f3263f7450a940449d7edc0aef46a888248e0245a71797435a985fda8ef3c1abb8823a5a363cff1db0e2d09715942322e5d5ae9ab3554a5a3aeb2db748102a97 SHA512 89d62431e11cf8f3b48afdf9a133a8532916d445676de12acb48b0aaca3aa45106e25de399e7ee37a6220b0766c0ea65f10da219d4bb9a7a02275b4364e493ad -AUX chromium-unbundle-zlib.patch 750 BLAKE2B ffce4f4069fa8f04c41b8395105d4dbe2f7e38fb9a3b2fa826972b894825dd64ed23c2a86d1445e454a96d35ebaa059ae7c2df3d2baf986be068a47be072563d SHA512 539990ce23d38c10274d9f44bf61ad53adacccaa16646ebe9535c03d2fd468d5e722aadeae82ac244d64851bbfa48832ae0895743b957fc0f4e8f47f959b1e97 AUX chromium-widevine-r4.patch 1155 BLAKE2B 7ba02c4b80883fa7ae5c46d95072798683bdc5c9d65b3cab40e6a3c21b29ce7eb9c45493ec10e522341033a80132818f946569ee774c662daafa4e09fbc2a988 SHA512 8f78c0e22f14f81f1903a77b315c7818603caaadbb5d517a3184a11e9553b99fd42d5a1d2ff19b3d79c03352b2e279a5102afa2fa66f276da2d9c42988a94366 AUX chromium.default 148 BLAKE2B 5ee5b582c59a6e4bef87bbb0e232e2470ad412b1fbbb3b9af6ef7153edb55c5b9080cc16a5a115b0c5b3c381aa87ce57a7b12bdd2070e67dac10a6c2995ddbaf SHA512 0d4849e03592fb58b05e62a43021eca7e61615616c8907c3b2e445402e03adaf9e8fa25b0a745d6c31eb037456215cc02b59e345a3a06d932e76cf990c92d739 -DIST chromium-77.0.3865.90.tar.xz 729551228 BLAKE2B 865a40a7fa7d6a0b2de137249f7f14dad32b30cb0099fccc0d21570a2488834c5ab6504ef7c63f334e5d798de5391d6e96beaa49009caecb178d898e27317d89 SHA512 8b343c6ccc798c74cca8d5d41285153ace917da28360192afb21925c103ba425a4045f75c589f73a8c5c75bd1bbca44bfae1a4b96e9b7a97636d9929c7961bbc -DIST chromium-78-revert-noexcept.patch 69206 BLAKE2B c0cbcd9cf4ca1d22afb0deb90ca0e208abc4853ec0430ded105c76488af38df7fba696531a1b597efb8ffe3f8c9352bf47bfc364db3ffff0f6ccb726bb7e1f94 SHA512 13ab086b40f246fd7397c3f44663e69dd3c996beb657d7c06d1af0730be90135c1097ec555e384a76add4034f69e8bfe23de4d69900df4c67dc6b383d6c3708d -DIST chromium-78-revert-pm-observer.patch 22149 BLAKE2B d0169db31948a0a11930d23dbb1fd6573525218a795fe57702cdc6bfef87ce3ab856f8429f5bc9751bf6c96750ad3ed16ce22a4e8be1c57a183da30ca4b56d84 SHA512 68b4558226264aa04af265f7fd42c7319f1cd483d249ad53244efa9d640d99bfb97d39aa8a3e395e1ece4384092b21f7c27d635bc0f3a9f0ba6ddd2f38f4dbae -DIST chromium-78.0.3904.34.tar.xz 741873348 BLAKE2B 4cf6d35548a41c44dca3dbf9275ac1fe09e6ce3108b7b4bc3b90034e4780456ae399ea368ed67ef3cce9cd3b00265ddfd765da837214a51437d333c288ba1e7e SHA512 d1c7b75fc2b4e5acbb89f9044a87e678db4ad99e805448716daf0227d8760b02d08b090ff3dbbb2f3aad5f7a1c488a59345cf209cb609cca6781b8e3353e1f32 -EBUILD chromium-77.0.3865.90.ebuild 22620 BLAKE2B fcbee5222bcd0ac369fcce36a0b280dc263f65e3287e16694b889c9bb02dd76142f0cf9db566fbf4ca20d4d39092e8b7e41d72213b4604643eb4f0e741b616ba SHA512 168b70d2d88049c007ffdd7059d4ae564676846c75588a0e967dc6069fc008c78c89bb9501f19e814a032c973a60a705007cdaf05a75d64492d94f0eaef9529d -EBUILD chromium-78.0.3904.34.ebuild 22980 BLAKE2B ed29301ad05b6ca8b0f418792dc16535586bb5e60ddde99c830ce3bef03f91d7111289a11603a5601f8e83568ad8fa47b19d323feae44cec17158bea37fe1ed7 SHA512 d76a3048c44e30b2f39a2ce2cb5165b0c1121d11d074e316ceff558b6e7dfb79dac2a90977f014e2f7096c0938df4b7788f9b5d0d0b5a0070094326779a37c60 +DIST chromium-78-revert-noexcept-r1.patch.gz 12094 BLAKE2B 1fd0c939af773ed398c9ab14fa80b042b4237cabdbcb06425e4d1c72200ec49c3c1383cfc95013cce4df411b0a2397b79030d41a0379ae80a0c60bae1fbb5ffa SHA512 dcb62b82b34d5d6982762cacfe3ab7d3538d908b3befe7666f5d70d98ba4f979b5bf056e5c5343ed76aa744a643318fc5a75ddedfcb1b7de3e7c28eb2587439f +DIST chromium-78.0.3904.70.tar.xz 742787108 BLAKE2B 623a0359f461672d8d6c97b4703f5b50c6ac423350ba96b7f37582be38d9cc66674e441b506405bc5f136df19df886036ef5abae4b8c2e4e953ec296e2a25bb4 SHA512 95d926ea92a0e744284a4c5fca619e3a067dd0fdfaa7c05b5a069d2a8d1159bf849335e21e5803bd28175c1994bd4ff15337ad0a3063445fab74eef113275545 +DIST chromium-78.0.3904.87.tar.xz 742861696 BLAKE2B f8e99207876d879dc74873950e3647d41f0c687a9cd6285f44d54a4c39ceac68d455a79c38f0c9c4815ad025b2b6fae95305f0bc47e2d4c0f2937810068ffe1e SHA512 9c59c01c7224771dd1db648a8cea6cda646062b4b172eb7bf0767a0b5ebead038697a8c0ec2c4ef758b876bb7a1c862223b8ef3c23308fd0c99752444305a713 +DIST chromium-79.0.3945.8.tar.xz 777902956 BLAKE2B eba9e94c9305a5fe9aaf8848456a69427219a29b139217d9b5409a35cb4a508d217fe82c08e3bc9325675180bfe7d7c93d583adf9d8ad6c04de1209b2305a1d3 SHA512 78358d0dbb8bd574c450f5443b7dfc888ea89ad9fa9da156106d260f1b3921deb6f5a50931c689c1855c9ffdef5e001d8636e8a00d416c9e9efe8bea2a8dfc6d +EBUILD chromium-78.0.3904.70.ebuild 22982 BLAKE2B 8e427972b294bbf974b4634b450c1114f7e1dab5559efa8df5ecd6532b41d4c562663c212b032c9eeac4054216dcd5acecff5bfa23a353a59ba4c53c62dacadf SHA512 c6812c14c89182ea0b72aebc21ded27f8b7097d5537db6e33b3a794bc5ebad461c1af2cdf984325bd64a5e52968f66ee3c41041489190b701ebe3d3d22a600b4 +EBUILD chromium-78.0.3904.87.ebuild 22982 BLAKE2B 8e427972b294bbf974b4634b450c1114f7e1dab5559efa8df5ecd6532b41d4c562663c212b032c9eeac4054216dcd5acecff5bfa23a353a59ba4c53c62dacadf SHA512 c6812c14c89182ea0b72aebc21ded27f8b7097d5537db6e33b3a794bc5ebad461c1af2cdf984325bd64a5e52968f66ee3c41041489190b701ebe3d3d22a600b4 +EBUILD chromium-79.0.3945.8.ebuild 22888 BLAKE2B a88344a3e2e678740824e00977d25f6ab94ece51b8ca0d34210e9ce62ef84d454af052a63a1bde60263eea6c2e9b044c4ff4f9091f598bed9c291aaef72accad SHA512 a4d7cb3c393006c062804a15e45c4ad99cdf6f173b96f3a0b183e90b21d81491f6d40923d7031d5577faf8043d514a619016d9ed0f3b738dbe689602992e0a24 MISC metadata.xml 1538 BLAKE2B 6c68f673e2892063f4b7a5afc8314356e3e8182d8765a193c36be7ed6b61e7680dbd0a58e2386904ff2877c81ad45cdae07754996f706f986f16f3a159500930 SHA512 16e98f9dc01cfdce307dd17fc2ba83ff1eff10eaeb65aaf9154b0dedfc61086334d56f50b6ce1d673715148e29e045eb0eed21495efef942ef56e4ba4e514187 diff --git a/www-client/chromium/chromium-77.0.3865.90.ebuild b/www-client/chromium/chromium-77.0.3865.90.ebuild deleted file mode 100644 index 0dbd8e2289d9..000000000000 --- a/www-client/chromium/chromium-77.0.3865.90.ebuild +++ /dev/null @@ -1,733 +0,0 @@ -# Copyright 2009-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python2_7 ) - -CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he - hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr - sv sw ta te th tr uk vi zh-CN zh-TW" - -inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils - -DESCRIPTION="Open-source version of Google Chrome web browser" -HOMEPAGE="http://chromium.org/" -SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm64 ~x86" -IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts jumbo-build kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" -REQUIRED_USE="component-build? ( !suid )" - -COMMON_DEPEND=" - >=app-accessibility/at-spi2-atk-2.26:2 - app-arch/bzip2:= - cups? ( >=net-print/cups-1.3.11:= ) - >=dev-libs/atk-2.26 - dev-libs/expat:= - dev-libs/glib:2 - system-icu? ( >=dev-libs/icu-64:= ) - >=dev-libs/libxml2-2.9.4-r3:=[icu] - dev-libs/libxslt:= - dev-libs/nspr:= - >=dev-libs/nss-3.26:= - >=dev-libs/re2-0.2016.11.01:= - gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= ) - >=media-libs/alsa-lib-1.0.19:= - media-libs/fontconfig:= - media-libs/freetype:= - >=media-libs/harfbuzz-2.4.0:0=[icu(-)] - media-libs/libjpeg-turbo:= - media-libs/libpng:= - system-libvpx? ( media-libs/libvpx:=[postproc,svc] ) - >=media-libs/openh264-1.6.0:= - pulseaudio? ( media-sound/pulseaudio:= ) - system-ffmpeg? ( - >=media-video/ffmpeg-4:= - || ( - media-video/ffmpeg[-samba] - >=net-fs/samba-4.5.10-r1[-debug(-)] - ) - !=net-fs/samba-4.5.12-r0 - media-libs/opus:= - ) - sys-apps/dbus:= - sys-apps/pciutils:= - virtual/udev - x11-libs/cairo:= - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3[X] - x11-libs/libX11:= - x11-libs/libXcomposite:= - x11-libs/libXcursor:= - x11-libs/libXdamage:= - x11-libs/libXext:= - x11-libs/libXfixes:= - >=x11-libs/libXi-1.6.0:= - x11-libs/libXrandr:= - x11-libs/libXrender:= - x11-libs/libXScrnSaver:= - x11-libs/libXtst:= - x11-libs/pango:= - app-arch/snappy:= - media-libs/flac:= - >=media-libs/libwebp-0.4.0:= - sys-libs/zlib:=[minizip] - kerberos? ( virtual/krb5 ) -" -# For nvidia-drivers blocker, see bug #413637 . -RDEPEND="${COMMON_DEPEND} - ! gn leftovers - base/third_party/libevent - third_party/adobe - third_party/speech-dispatcher - third_party/usb_ids - third_party/xdg-utils - third_party/yasm/run_yasm.py - ) - if ! use system-ffmpeg; then - keeplibs+=( third_party/ffmpeg third_party/opus ) - fi - if ! use system-icu; then - keeplibs+=( third_party/icu ) - fi - if ! use system-libvpx; then - keeplibs+=( third_party/libvpx ) - keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc ) - fi - if use tcmalloc; then - keeplibs+=( third_party/tcmalloc ) - fi - - # Remove most bundled libraries. Some are still needed. - build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die -} - -src_configure() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - local myconf_gn="" - - # Make sure the build system will use the right tools, bug #340795. - tc-export AR CC CXX NM - - if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then - # Force clang since gcc is pretty broken at the moment. - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - if tc-is-clang; then - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" - else - myconf_gn+=" is_clang=false" - fi - - # Define a custom toolchain for GN - myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\"" - - if tc-is-cross-compiler; then - tc-export BUILD_{AR,CC,CXX,NM} - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\"" - myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\"" - else - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\"" - fi - - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory. - myconf_gn+=" is_debug=false" - - # Component build isn't generally intended for use by end users. It's mostly useful - # for development and debugging. - myconf_gn+=" is_component_build=$(usex component-build true false)" - - # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md - myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)" - - myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")" - - # Disable nacl, we can't build without pnacl (http://crbug.com/269560). - myconf_gn+=" enable_nacl=false" - - # Use system-provided libraries. - # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733). - # TODO: use_system_hunspell (upstream changes needed). - # TODO: use_system_libsrtp (bug #459932). - # TODO: use_system_protobuf (bug #525560). - # TODO: use_system_ssl (http://crbug.com/58087). - # TODO: use_system_sqlite (http://crbug.com/22208). - - # libevent: https://bugs.gentoo.org/593458 - local gn_system_libraries=( - flac - fontconfig - freetype - # Need harfbuzz_from_pkgconfig target - #harfbuzz-ng - libdrm - libjpeg - libpng - libwebp - libxml - libxslt - openh264 - re2 - snappy - yasm - zlib - ) - if use system-ffmpeg; then - gn_system_libraries+=( ffmpeg opus ) - fi - if use system-icu; then - gn_system_libraries+=( icu ) - fi - if use system-libvpx; then - gn_system_libraries+=( libvpx ) - fi - build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die - - # See dependency logic in third_party/BUILD.gn - myconf_gn+=" use_system_harfbuzz=true" - - # Optional dependencies. - myconf_gn+=" closure_compile=$(usex closure-compile true false)" - myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)" - myconf_gn+=" enable_widevine=$(usex widevine true false)" - myconf_gn+=" use_cups=$(usex cups true false)" - myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)" - myconf_gn+=" use_kerberos=$(usex kerberos true false)" - myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)" - - # TODO: link_pulseaudio=true for GN. - - myconf_gn+=" fieldtrial_testing_like_official_build=true" - - # Never use bundled gold binary. Disable gold linker flags for now. - # Do not use bundled clang. - # Trying to use gold results in linker crash. - myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false" - - # Disable forced lld, bug 641556 - myconf_gn+=" use_lld=false" - - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)" - myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)" - myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\"" - - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . - # Note: these are for Gentoo use ONLY. For your own distribution, - # please get your own set of keys. Feel free to contact chromium@gentoo.org - # for more info. - local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc" - local google_default_client_id="329227923882.apps.googleusercontent.com" - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" - myconf_gn+=" google_api_key=\"${google_api_key}\"" - myconf_gn+=" google_default_client_id=\"${google_default_client_id}\"" - myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\"" - - local myarch="$(tc-arch)" - - # Avoid CFLAGS problems, bug #352457, bug #390147. - if ! use custom-cflags; then - replace-flags "-Os" "-O2" - strip-flags - - # Prevent linker from running out of address space, bug #471810 . - if use x86; then - filter-flags "-g*" - fi - - # Prevent libvpx build failures. Bug 530248, 544702, 546984. - if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 - fi - fi - - if [[ $myarch = amd64 ]] ; then - myconf_gn+=" target_cpu=\"x64\"" - ffmpeg_target_arch=x64 - elif [[ $myarch = x86 ]] ; then - myconf_gn+=" target_cpu=\"x86\"" - ffmpeg_target_arch=ia32 - - # This is normally defined by compiler_cpu_abi in - # build/config/compiler/BUILD.gn, but we patch that part out. - append-flags -msse2 -mfpmath=sse -mmmx - elif [[ $myarch = arm64 ]] ; then - myconf_gn+=" target_cpu=\"arm64\"" - ffmpeg_target_arch=arm64 - elif [[ $myarch = arm ]] ; then - myconf_gn+=" target_cpu=\"arm\"" - ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm) - else - die "Failed to determine target arch, got '$myarch'." - fi - - # Make sure that -Werror doesn't get added to CFLAGS by the build system. - # Depending on GCC version the warnings are different and we don't want - # the build to fail because of that. - myconf_gn+=" treat_warnings_as_errors=false" - - # Disable fatal linker warnings, bug 506268. - myconf_gn+=" fatal_linker_warnings=false" - - # Bug 491582. - export TMPDIR="${WORKDIR}/temp" - mkdir -p -m 755 "${TMPDIR}" || die - - # https://bugs.gentoo.org/654216 - addpredict /dev/dri/ #nowarn - - #if ! use system-ffmpeg; then - if false; then - local build_ffmpeg_args="" - if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then - build_ffmpeg_args+=" --disable-asm" - fi - - # Re-configure bundled ffmpeg. See bug #491378 for example reasons. - einfo "Configuring bundled ffmpeg..." - pushd third_party/ffmpeg > /dev/null || die - chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \ - --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die - chromium/scripts/copy_config.sh || die - chromium/scripts/generate_gn.py || die - popd > /dev/null || die - fi - - einfo "Configuring Chromium..." - set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release - echo "$@" - "$@" || die -} - -src_compile() { - # Final link uses lots of file descriptors. - ulimit -n 2048 - - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die - - # Build mksnapshot and pax-mark it. - local x - for x in mksnapshot v8_context_snapshot_generator; do - if tc-is-cross-compiler; then - eninja -C out/Release "host/${x}" - pax-mark m "out/Release/host/${x}" - else - eninja -C out/Release "${x}" - pax-mark m "out/Release/${x}" - fi - done - - # Even though ninja autodetects number of CPUs, we respect - # user's options, for debugging with -j 1 or any other reason. - eninja -C out/Release chrome chromedriver - use suid && eninja -C out/Release chrome_sandbox - - pax-mark m out/Release/chrome - - # Build manpage; bug #684550 - sed -e 's|@@PACKAGE@@|chromium-browser|g; - s|@@MENUNAME@@|Chromium|g;' \ - chrome/app/resources/manpage.1.in > \ - out/Release/chromium-browser.1 || die -} - -src_install() { - local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser" - exeinto "${CHROMIUM_HOME}" - doexe out/Release/chrome - - if use suid; then - newexe out/Release/chrome_sandbox chrome-sandbox - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox" - fi - - doexe out/Release/chromedriver - - local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" ) - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die - doexe chromium-launcher.sh - - # It is important that we name the target "chromium-browser", - # xdg-utils expect it; bug #355517. - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser - # keep the old symlink around for consistency - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium - - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver - - # Allow users to override command-line options, bug #357629. - insinto /etc/chromium - newins "${FILESDIR}/chromium.default" "default" - - pushd out/Release/locales > /dev/null || die - chromium_remove_language_paks - popd - - insinto "${CHROMIUM_HOME}" - doins out/Release/*.bin - doins out/Release/*.pak - doins out/Release/*.so - - if ! use system-icu; then - doins out/Release/icudtl.dat - fi - - doins -r out/Release/locales - doins -r out/Release/resources - - if [[ -d out/Release/swiftshader ]]; then - insinto "${CHROMIUM_HOME}/swiftshader" - doins out/Release/swiftshader/*.so - fi - - # Install icons and desktop entry. - local branding size - for size in 16 24 32 48 64 128 256 ; do - case ${size} in - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;; - *) branding="chrome/app/theme/chromium" ;; - esac - newicon -s ${size} "${branding}/product_logo_${size}.png" \ - chromium-browser.png - done - - local mime_types="text/html;text/xml;application/xhtml+xml;" - mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797 - mime_types+="x-scheme-handler/ftp;" # bug #412185 - mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393 - make_desktop_entry \ - chromium-browser \ - "Chromium" \ - chromium-browser \ - "Network;WebBrowser" \ - "MimeType=${mime_types}\nStartupWMClass=chromium-browser" - sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die - - # Install GNOME default application entry (bug #303100). - insinto /usr/share/gnome-control-center/default-apps - newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml - - # Install manpage; bug #684550 - doman out/Release/chromium-browser.1 - dosym chromium-browser.1 /usr/share/man/man1/chromium.1 - - readme.gentoo_create_doc -} - -pkg_postrm() { - xdg_icon_cache_update - xdg_desktop_database_update -} - -pkg_postinst() { - xdg_icon_cache_update - xdg_desktop_database_update - readme.gentoo_print_elog -} diff --git a/www-client/chromium/chromium-78.0.3904.34.ebuild b/www-client/chromium/chromium-78.0.3904.34.ebuild deleted file mode 100644 index 525ed7e65b69..000000000000 --- a/www-client/chromium/chromium-78.0.3904.34.ebuild +++ /dev/null @@ -1,741 +0,0 @@ -# Copyright 2009-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python2_7 ) - -CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he - hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr - sv sw ta te th tr uk vi zh-CN zh-TW" - -inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils - -DESCRIPTION="Open-source version of Google Chrome web browser" -HOMEPAGE="http://chromium.org/" -SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz - https://dev.gentoo.org/~floppym/dist/chromium-78-revert-noexcept.patch - https://dev.gentoo.org/~floppym/dist/chromium-78-revert-pm-observer.patch -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm64 ~x86" -IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts jumbo-build kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" -REQUIRED_USE="component-build? ( !suid )" - -COMMON_DEPEND=" - >=app-accessibility/at-spi2-atk-2.26:2 - app-arch/bzip2:= - cups? ( >=net-print/cups-1.3.11:= ) - >=dev-libs/atk-2.26 - dev-libs/expat:= - dev-libs/glib:2 - system-icu? ( >=dev-libs/icu-64:= ) - >=dev-libs/libxml2-2.9.4-r3:=[icu] - dev-libs/libxslt:= - dev-libs/nspr:= - >=dev-libs/nss-3.26:= - >=dev-libs/re2-0.2016.11.01:= - gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= ) - >=media-libs/alsa-lib-1.0.19:= - media-libs/fontconfig:= - media-libs/freetype:= - >=media-libs/harfbuzz-2.4.0:0=[icu(-)] - media-libs/libjpeg-turbo:= - media-libs/libpng:= - system-libvpx? ( media-libs/libvpx:=[postproc,svc] ) - >=media-libs/openh264-1.6.0:= - pulseaudio? ( media-sound/pulseaudio:= ) - system-ffmpeg? ( - >=media-video/ffmpeg-4:= - || ( - media-video/ffmpeg[-samba] - >=net-fs/samba-4.5.10-r1[-debug(-)] - ) - !=net-fs/samba-4.5.12-r0 - media-libs/opus:= - ) - sys-apps/dbus:= - sys-apps/pciutils:= - virtual/udev - x11-libs/cairo:= - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3[X] - x11-libs/libX11:= - x11-libs/libXcomposite:= - x11-libs/libXcursor:= - x11-libs/libXdamage:= - x11-libs/libXext:= - x11-libs/libXfixes:= - >=x11-libs/libXi-1.6.0:= - x11-libs/libXrandr:= - x11-libs/libXrender:= - x11-libs/libXScrnSaver:= - x11-libs/libXtst:= - x11-libs/pango:= - app-arch/snappy:= - media-libs/flac:= - >=media-libs/libwebp-0.4.0:= - sys-libs/zlib:=[minizip] - kerberos? ( virtual/krb5 ) -" -# For nvidia-drivers blocker, see bug #413637 . -RDEPEND="${COMMON_DEPEND} - ! gn leftovers - base/third_party/libevent - third_party/adobe - third_party/speech-dispatcher - third_party/usb_ids - third_party/xdg-utils - third_party/yasm/run_yasm.py - ) - if ! use system-ffmpeg; then - keeplibs+=( third_party/ffmpeg third_party/opus ) - fi - if ! use system-icu; then - keeplibs+=( third_party/icu ) - fi - if ! use system-libvpx; then - keeplibs+=( third_party/libvpx ) - keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc ) - fi - if use tcmalloc; then - keeplibs+=( third_party/tcmalloc ) - fi - - # Remove most bundled libraries. Some are still needed. - build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die -} - -src_configure() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - local myconf_gn="" - - # Make sure the build system will use the right tools, bug #340795. - tc-export AR CC CXX NM - - if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then - # Force clang since gcc is pretty broken at the moment. - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - if tc-is-clang; then - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" - else - myconf_gn+=" is_clang=false" - append-cxxflags -fpermissive - fi - - # Define a custom toolchain for GN - myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\"" - - if tc-is-cross-compiler; then - tc-export BUILD_{AR,CC,CXX,NM} - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\"" - myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\"" - else - myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\"" - fi - - # GN needs explicit config for Debug/Release as opposed to inferring it from build directory. - myconf_gn+=" is_debug=false" - - # Component build isn't generally intended for use by end users. It's mostly useful - # for development and debugging. - myconf_gn+=" is_component_build=$(usex component-build true false)" - - # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md - myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)" - - myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")" - - # Disable nacl, we can't build without pnacl (http://crbug.com/269560). - myconf_gn+=" enable_nacl=false" - - # Use system-provided libraries. - # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733). - # TODO: use_system_hunspell (upstream changes needed). - # TODO: use_system_libsrtp (bug #459932). - # TODO: use_system_protobuf (bug #525560). - # TODO: use_system_ssl (http://crbug.com/58087). - # TODO: use_system_sqlite (http://crbug.com/22208). - - # libevent: https://bugs.gentoo.org/593458 - local gn_system_libraries=( - flac - fontconfig - freetype - # Need harfbuzz_from_pkgconfig target - #harfbuzz-ng - libdrm - libjpeg - libpng - libwebp - libxml - libxslt - openh264 - re2 - snappy - yasm - zlib - ) - if use system-ffmpeg; then - gn_system_libraries+=( ffmpeg opus ) - fi - if use system-icu; then - gn_system_libraries+=( icu ) - fi - if use system-libvpx; then - gn_system_libraries+=( libvpx ) - fi - build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die - - # See dependency logic in third_party/BUILD.gn - myconf_gn+=" use_system_harfbuzz=true" - - # Optional dependencies. - myconf_gn+=" closure_compile=$(usex closure-compile true false)" - myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)" - myconf_gn+=" enable_widevine=$(usex widevine true false)" - myconf_gn+=" use_cups=$(usex cups true false)" - myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)" - myconf_gn+=" use_kerberos=$(usex kerberos true false)" - myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)" - - # TODO: link_pulseaudio=true for GN. - - myconf_gn+=" fieldtrial_testing_like_official_build=true" - - # Never use bundled gold binary. Disable gold linker flags for now. - # Do not use bundled clang. - # Trying to use gold results in linker crash. - myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false" - - # Disable forced lld, bug 641556 - myconf_gn+=" use_lld=false" - - ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)" - myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)" - myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\"" - - # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . - # Note: these are for Gentoo use ONLY. For your own distribution, - # please get your own set of keys. Feel free to contact chromium@gentoo.org - # for more info. - local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc" - local google_default_client_id="329227923882.apps.googleusercontent.com" - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" - myconf_gn+=" google_api_key=\"${google_api_key}\"" - myconf_gn+=" google_default_client_id=\"${google_default_client_id}\"" - myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\"" - - local myarch="$(tc-arch)" - - # Avoid CFLAGS problems, bug #352457, bug #390147. - if ! use custom-cflags; then - replace-flags "-Os" "-O2" - strip-flags - - # Prevent linker from running out of address space, bug #471810 . - if use x86; then - filter-flags "-g*" - fi - - # Prevent libvpx build failures. Bug 530248, 544702, 546984. - if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then - filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 - fi - fi - - if [[ $myarch = amd64 ]] ; then - myconf_gn+=" target_cpu=\"x64\"" - ffmpeg_target_arch=x64 - elif [[ $myarch = x86 ]] ; then - myconf_gn+=" target_cpu=\"x86\"" - ffmpeg_target_arch=ia32 - - # This is normally defined by compiler_cpu_abi in - # build/config/compiler/BUILD.gn, but we patch that part out. - append-flags -msse2 -mfpmath=sse -mmmx - elif [[ $myarch = arm64 ]] ; then - myconf_gn+=" target_cpu=\"arm64\"" - ffmpeg_target_arch=arm64 - elif [[ $myarch = arm ]] ; then - myconf_gn+=" target_cpu=\"arm\"" - ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm) - else - die "Failed to determine target arch, got '$myarch'." - fi - - # Make sure that -Werror doesn't get added to CFLAGS by the build system. - # Depending on GCC version the warnings are different and we don't want - # the build to fail because of that. - myconf_gn+=" treat_warnings_as_errors=false" - - # Disable fatal linker warnings, bug 506268. - myconf_gn+=" fatal_linker_warnings=false" - - # Bug 491582. - export TMPDIR="${WORKDIR}/temp" - mkdir -p -m 755 "${TMPDIR}" || die - - # https://bugs.gentoo.org/654216 - addpredict /dev/dri/ #nowarn - - #if ! use system-ffmpeg; then - if false; then - local build_ffmpeg_args="" - if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then - build_ffmpeg_args+=" --disable-asm" - fi - - # Re-configure bundled ffmpeg. See bug #491378 for example reasons. - einfo "Configuring bundled ffmpeg..." - pushd third_party/ffmpeg > /dev/null || die - chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \ - --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die - chromium/scripts/copy_config.sh || die - chromium/scripts/generate_gn.py || die - popd > /dev/null || die - fi - - einfo "Configuring Chromium..." - set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release - echo "$@" - "$@" || die -} - -src_compile() { - # Final link uses lots of file descriptors. - ulimit -n 2048 - - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die - - # Build mksnapshot and pax-mark it. - local x - for x in mksnapshot v8_context_snapshot_generator; do - if tc-is-cross-compiler; then - eninja -C out/Release "host/${x}" - pax-mark m "out/Release/host/${x}" - else - eninja -C out/Release "${x}" - pax-mark m "out/Release/${x}" - fi - done - - # Even though ninja autodetects number of CPUs, we respect - # user's options, for debugging with -j 1 or any other reason. - eninja -C out/Release chrome chromedriver - use suid && eninja -C out/Release chrome_sandbox - - pax-mark m out/Release/chrome - - # Build manpage; bug #684550 - sed -e 's|@@PACKAGE@@|chromium-browser|g; - s|@@MENUNAME@@|Chromium|g;' \ - chrome/app/resources/manpage.1.in > \ - out/Release/chromium-browser.1 || die -} - -src_install() { - local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser" - exeinto "${CHROMIUM_HOME}" - doexe out/Release/chrome - - if use suid; then - newexe out/Release/chrome_sandbox chrome-sandbox - fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox" - fi - - doexe out/Release/chromedriver - - local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" ) - sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die - doexe chromium-launcher.sh - - # It is important that we name the target "chromium-browser", - # xdg-utils expect it; bug #355517. - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser - # keep the old symlink around for consistency - dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium - - dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver - - # Allow users to override command-line options, bug #357629. - insinto /etc/chromium - newins "${FILESDIR}/chromium.default" "default" - - pushd out/Release/locales > /dev/null || die - chromium_remove_language_paks - popd - - insinto "${CHROMIUM_HOME}" - doins out/Release/*.bin - doins out/Release/*.pak - doins out/Release/*.so - - if ! use system-icu; then - doins out/Release/icudtl.dat - fi - - doins -r out/Release/locales - doins -r out/Release/resources - - if [[ -d out/Release/swiftshader ]]; then - insinto "${CHROMIUM_HOME}/swiftshader" - doins out/Release/swiftshader/*.so - fi - - # Install icons and desktop entry. - local branding size - for size in 16 24 32 48 64 128 256 ; do - case ${size} in - 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;; - *) branding="chrome/app/theme/chromium" ;; - esac - newicon -s ${size} "${branding}/product_logo_${size}.png" \ - chromium-browser.png - done - - local mime_types="text/html;text/xml;application/xhtml+xml;" - mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797 - mime_types+="x-scheme-handler/ftp;" # bug #412185 - mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393 - make_desktop_entry \ - chromium-browser \ - "Chromium" \ - chromium-browser \ - "Network;WebBrowser" \ - "MimeType=${mime_types}\nStartupWMClass=chromium-browser" - sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die - - # Install GNOME default application entry (bug #303100). - insinto /usr/share/gnome-control-center/default-apps - newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml - - # Install manpage; bug #684550 - doman out/Release/chromium-browser.1 - dosym chromium-browser.1 /usr/share/man/man1/chromium.1 - - readme.gentoo_create_doc -} - -pkg_postrm() { - xdg_icon_cache_update - xdg_desktop_database_update -} - -pkg_postinst() { - xdg_icon_cache_update - xdg_desktop_database_update - readme.gentoo_print_elog -} diff --git a/www-client/chromium/chromium-78.0.3904.70.ebuild b/www-client/chromium/chromium-78.0.3904.70.ebuild new file mode 100644 index 000000000000..de0984e85449 --- /dev/null +++ b/www-client/chromium/chromium-78.0.3904.70.ebuild @@ -0,0 +1,742 @@ +# Copyright 2009-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python2_7 ) + +CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he + hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr + sv sw ta te th tr uk vi zh-CN zh-TW" + +inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils + +DESCRIPTION="Open-source version of Google Chrome web browser" +HOMEPAGE="http://chromium.org/" +SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz + https://dev.gentoo.org/~floppym/dist/chromium-78-revert-noexcept-r1.patch.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 ~arm64 ~x86" +IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts jumbo-build kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" +RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" +REQUIRED_USE="component-build? ( !suid )" + +COMMON_DEPEND=" + >=app-accessibility/at-spi2-atk-2.26:2 + app-arch/bzip2:= + cups? ( >=net-print/cups-1.3.11:= ) + >=dev-libs/atk-2.26 + dev-libs/expat:= + dev-libs/glib:2 + system-icu? ( >=dev-libs/icu-64:= ) + >=dev-libs/libxml2-2.9.4-r3:=[icu] + dev-libs/libxslt:= + dev-libs/nspr:= + >=dev-libs/nss-3.26:= + >=dev-libs/re2-0.2016.11.01:= + gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= ) + >=media-libs/alsa-lib-1.0.19:= + media-libs/fontconfig:= + media-libs/freetype:= + >=media-libs/harfbuzz-2.4.0:0=[icu(-)] + media-libs/libjpeg-turbo:= + media-libs/libpng:= + system-libvpx? ( media-libs/libvpx:=[postproc,svc] ) + >=media-libs/openh264-1.6.0:= + pulseaudio? ( media-sound/pulseaudio:= ) + system-ffmpeg? ( + >=media-video/ffmpeg-4:= + || ( + media-video/ffmpeg[-samba] + >=net-fs/samba-4.5.10-r1[-debug(-)] + ) + !=net-fs/samba-4.5.12-r0 + media-libs/opus:= + ) + sys-apps/dbus:= + sys-apps/pciutils:= + virtual/udev + x11-libs/cairo:= + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3[X] + x11-libs/libX11:= + x11-libs/libXcomposite:= + x11-libs/libXcursor:= + x11-libs/libXdamage:= + x11-libs/libXext:= + x11-libs/libXfixes:= + >=x11-libs/libXi-1.6.0:= + x11-libs/libXrandr:= + x11-libs/libXrender:= + x11-libs/libXScrnSaver:= + x11-libs/libXtst:= + x11-libs/pango:= + app-arch/snappy:= + media-libs/flac:= + >=media-libs/libwebp-0.4.0:= + sys-libs/zlib:=[minizip] + kerberos? ( virtual/krb5 ) +" +# For nvidia-drivers blocker, see bug #413637 . +RDEPEND="${COMMON_DEPEND} + ! gn leftovers + base/third_party/libevent + third_party/adobe + third_party/speech-dispatcher + third_party/usb_ids + third_party/xdg-utils + third_party/yasm/run_yasm.py + ) + if ! use system-ffmpeg; then + keeplibs+=( third_party/ffmpeg third_party/opus ) + fi + if ! use system-icu; then + keeplibs+=( third_party/icu ) + fi + if ! use system-libvpx; then + keeplibs+=( third_party/libvpx ) + keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc ) + fi + if use tcmalloc; then + keeplibs+=( third_party/tcmalloc ) + fi + + # Remove most bundled libraries. Some are still needed. + build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die +} + +src_configure() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + local myconf_gn="" + + # Make sure the build system will use the right tools, bug #340795. + tc-export AR CC CXX NM + + if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then + # Force clang since gcc is pretty broken at the moment. + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + strip-unsupported-flags + fi + + if tc-is-clang; then + myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" + else + myconf_gn+=" is_clang=false" + append-cxxflags -fpermissive + fi + + # Define a custom toolchain for GN + myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\"" + + if tc-is-cross-compiler; then + tc-export BUILD_{AR,CC,CXX,NM} + myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\"" + myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\"" + else + myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\"" + fi + + # GN needs explicit config for Debug/Release as opposed to inferring it from build directory. + myconf_gn+=" is_debug=false" + + # Component build isn't generally intended for use by end users. It's mostly useful + # for development and debugging. + myconf_gn+=" is_component_build=$(usex component-build true false)" + + # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md + myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)" + + myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")" + + # Disable nacl, we can't build without pnacl (http://crbug.com/269560). + myconf_gn+=" enable_nacl=false" + + # Use system-provided libraries. + # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733). + # TODO: use_system_hunspell (upstream changes needed). + # TODO: use_system_libsrtp (bug #459932). + # TODO: use_system_protobuf (bug #525560). + # TODO: use_system_ssl (http://crbug.com/58087). + # TODO: use_system_sqlite (http://crbug.com/22208). + + # libevent: https://bugs.gentoo.org/593458 + local gn_system_libraries=( + flac + fontconfig + freetype + # Need harfbuzz_from_pkgconfig target + #harfbuzz-ng + libdrm + libjpeg + libpng + libwebp + libxml + libxslt + openh264 + re2 + snappy + yasm + zlib + ) + if use system-ffmpeg; then + gn_system_libraries+=( ffmpeg opus ) + fi + if use system-icu; then + gn_system_libraries+=( icu ) + fi + if use system-libvpx; then + gn_system_libraries+=( libvpx ) + fi + build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die + + # See dependency logic in third_party/BUILD.gn + myconf_gn+=" use_system_harfbuzz=true" + + # Optional dependencies. + myconf_gn+=" closure_compile=$(usex closure-compile true false)" + myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)" + myconf_gn+=" enable_widevine=$(usex widevine true false)" + myconf_gn+=" use_cups=$(usex cups true false)" + myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)" + myconf_gn+=" use_kerberos=$(usex kerberos true false)" + myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)" + + # TODO: link_pulseaudio=true for GN. + + myconf_gn+=" fieldtrial_testing_like_official_build=true" + + # Never use bundled gold binary. Disable gold linker flags for now. + # Do not use bundled clang. + # Trying to use gold results in linker crash. + myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false" + + # Disable forced lld, bug 641556 + myconf_gn+=" use_lld=false" + + ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)" + myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)" + myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\"" + + # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . + # Note: these are for Gentoo use ONLY. For your own distribution, + # please get your own set of keys. Feel free to contact chromium@gentoo.org + # for more info. + local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc" + local google_default_client_id="329227923882.apps.googleusercontent.com" + local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" + myconf_gn+=" google_api_key=\"${google_api_key}\"" + myconf_gn+=" google_default_client_id=\"${google_default_client_id}\"" + myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\"" + + local myarch="$(tc-arch)" + + # Avoid CFLAGS problems, bug #352457, bug #390147. + if ! use custom-cflags; then + replace-flags "-Os" "-O2" + strip-flags + + # Prevent linker from running out of address space, bug #471810 . + if use x86; then + filter-flags "-g*" + fi + + # Prevent libvpx build failures. Bug 530248, 544702, 546984. + if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then + filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 + fi + fi + + if [[ $myarch = amd64 ]] ; then + myconf_gn+=" target_cpu=\"x64\"" + ffmpeg_target_arch=x64 + elif [[ $myarch = x86 ]] ; then + myconf_gn+=" target_cpu=\"x86\"" + ffmpeg_target_arch=ia32 + + # This is normally defined by compiler_cpu_abi in + # build/config/compiler/BUILD.gn, but we patch that part out. + append-flags -msse2 -mfpmath=sse -mmmx + elif [[ $myarch = arm64 ]] ; then + myconf_gn+=" target_cpu=\"arm64\"" + ffmpeg_target_arch=arm64 + elif [[ $myarch = arm ]] ; then + myconf_gn+=" target_cpu=\"arm\"" + ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm) + else + die "Failed to determine target arch, got '$myarch'." + fi + + # Make sure that -Werror doesn't get added to CFLAGS by the build system. + # Depending on GCC version the warnings are different and we don't want + # the build to fail because of that. + myconf_gn+=" treat_warnings_as_errors=false" + + # Disable fatal linker warnings, bug 506268. + myconf_gn+=" fatal_linker_warnings=false" + + # Bug 491582. + export TMPDIR="${WORKDIR}/temp" + mkdir -p -m 755 "${TMPDIR}" || die + + # https://bugs.gentoo.org/654216 + addpredict /dev/dri/ #nowarn + + #if ! use system-ffmpeg; then + if false; then + local build_ffmpeg_args="" + if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then + build_ffmpeg_args+=" --disable-asm" + fi + + # Re-configure bundled ffmpeg. See bug #491378 for example reasons. + einfo "Configuring bundled ffmpeg..." + pushd third_party/ffmpeg > /dev/null || die + chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \ + --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die + chromium/scripts/copy_config.sh || die + chromium/scripts/generate_gn.py || die + popd > /dev/null || die + fi + + einfo "Configuring Chromium..." + set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release + echo "$@" + "$@" || die +} + +src_compile() { + # Final link uses lots of file descriptors. + ulimit -n 2048 + + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die + + # Build mksnapshot and pax-mark it. + local x + for x in mksnapshot v8_context_snapshot_generator; do + if tc-is-cross-compiler; then + eninja -C out/Release "host/${x}" + pax-mark m "out/Release/host/${x}" + else + eninja -C out/Release "${x}" + pax-mark m "out/Release/${x}" + fi + done + + # Even though ninja autodetects number of CPUs, we respect + # user's options, for debugging with -j 1 or any other reason. + eninja -C out/Release chrome chromedriver + use suid && eninja -C out/Release chrome_sandbox + + pax-mark m out/Release/chrome + + # Build manpage; bug #684550 + sed -e 's|@@PACKAGE@@|chromium-browser|g; + s|@@MENUNAME@@|Chromium|g;' \ + chrome/app/resources/manpage.1.in > \ + out/Release/chromium-browser.1 || die +} + +src_install() { + local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser" + exeinto "${CHROMIUM_HOME}" + doexe out/Release/chrome + + if use suid; then + newexe out/Release/chrome_sandbox chrome-sandbox + fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox" + fi + + doexe out/Release/chromedriver + + local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" ) + sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die + doexe chromium-launcher.sh + + # It is important that we name the target "chromium-browser", + # xdg-utils expect it; bug #355517. + dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser + # keep the old symlink around for consistency + dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium + + dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver + + # Allow users to override command-line options, bug #357629. + insinto /etc/chromium + newins "${FILESDIR}/chromium.default" "default" + + pushd out/Release/locales > /dev/null || die + chromium_remove_language_paks + popd + + insinto "${CHROMIUM_HOME}" + doins out/Release/*.bin + doins out/Release/*.pak + doins out/Release/*.so + + if ! use system-icu; then + doins out/Release/icudtl.dat + fi + + doins -r out/Release/locales + doins -r out/Release/resources + + if [[ -d out/Release/swiftshader ]]; then + insinto "${CHROMIUM_HOME}/swiftshader" + doins out/Release/swiftshader/*.so + fi + + # Install icons and desktop entry. + local branding size + for size in 16 24 32 48 64 128 256 ; do + case ${size} in + 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;; + *) branding="chrome/app/theme/chromium" ;; + esac + newicon -s ${size} "${branding}/product_logo_${size}.png" \ + chromium-browser.png + done + + local mime_types="text/html;text/xml;application/xhtml+xml;" + mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797 + mime_types+="x-scheme-handler/ftp;" # bug #412185 + mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393 + make_desktop_entry \ + chromium-browser \ + "Chromium" \ + chromium-browser \ + "Network;WebBrowser" \ + "MimeType=${mime_types}\nStartupWMClass=chromium-browser" + sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die + + # Install GNOME default application entry (bug #303100). + insinto /usr/share/gnome-control-center/default-apps + newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml + + # Install manpage; bug #684550 + doman out/Release/chromium-browser.1 + dosym chromium-browser.1 /usr/share/man/man1/chromium.1 + + readme.gentoo_create_doc +} + +pkg_postrm() { + xdg_icon_cache_update + xdg_desktop_database_update +} + +pkg_postinst() { + xdg_icon_cache_update + xdg_desktop_database_update + readme.gentoo_print_elog +} diff --git a/www-client/chromium/chromium-78.0.3904.87.ebuild b/www-client/chromium/chromium-78.0.3904.87.ebuild new file mode 100644 index 000000000000..de0984e85449 --- /dev/null +++ b/www-client/chromium/chromium-78.0.3904.87.ebuild @@ -0,0 +1,742 @@ +# Copyright 2009-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python2_7 ) + +CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he + hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr + sv sw ta te th tr uk vi zh-CN zh-TW" + +inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils + +DESCRIPTION="Open-source version of Google Chrome web browser" +HOMEPAGE="http://chromium.org/" +SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz + https://dev.gentoo.org/~floppym/dist/chromium-78-revert-noexcept-r1.patch.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 ~arm64 ~x86" +IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts jumbo-build kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" +RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" +REQUIRED_USE="component-build? ( !suid )" + +COMMON_DEPEND=" + >=app-accessibility/at-spi2-atk-2.26:2 + app-arch/bzip2:= + cups? ( >=net-print/cups-1.3.11:= ) + >=dev-libs/atk-2.26 + dev-libs/expat:= + dev-libs/glib:2 + system-icu? ( >=dev-libs/icu-64:= ) + >=dev-libs/libxml2-2.9.4-r3:=[icu] + dev-libs/libxslt:= + dev-libs/nspr:= + >=dev-libs/nss-3.26:= + >=dev-libs/re2-0.2016.11.01:= + gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= ) + >=media-libs/alsa-lib-1.0.19:= + media-libs/fontconfig:= + media-libs/freetype:= + >=media-libs/harfbuzz-2.4.0:0=[icu(-)] + media-libs/libjpeg-turbo:= + media-libs/libpng:= + system-libvpx? ( media-libs/libvpx:=[postproc,svc] ) + >=media-libs/openh264-1.6.0:= + pulseaudio? ( media-sound/pulseaudio:= ) + system-ffmpeg? ( + >=media-video/ffmpeg-4:= + || ( + media-video/ffmpeg[-samba] + >=net-fs/samba-4.5.10-r1[-debug(-)] + ) + !=net-fs/samba-4.5.12-r0 + media-libs/opus:= + ) + sys-apps/dbus:= + sys-apps/pciutils:= + virtual/udev + x11-libs/cairo:= + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3[X] + x11-libs/libX11:= + x11-libs/libXcomposite:= + x11-libs/libXcursor:= + x11-libs/libXdamage:= + x11-libs/libXext:= + x11-libs/libXfixes:= + >=x11-libs/libXi-1.6.0:= + x11-libs/libXrandr:= + x11-libs/libXrender:= + x11-libs/libXScrnSaver:= + x11-libs/libXtst:= + x11-libs/pango:= + app-arch/snappy:= + media-libs/flac:= + >=media-libs/libwebp-0.4.0:= + sys-libs/zlib:=[minizip] + kerberos? ( virtual/krb5 ) +" +# For nvidia-drivers blocker, see bug #413637 . +RDEPEND="${COMMON_DEPEND} + ! gn leftovers + base/third_party/libevent + third_party/adobe + third_party/speech-dispatcher + third_party/usb_ids + third_party/xdg-utils + third_party/yasm/run_yasm.py + ) + if ! use system-ffmpeg; then + keeplibs+=( third_party/ffmpeg third_party/opus ) + fi + if ! use system-icu; then + keeplibs+=( third_party/icu ) + fi + if ! use system-libvpx; then + keeplibs+=( third_party/libvpx ) + keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc ) + fi + if use tcmalloc; then + keeplibs+=( third_party/tcmalloc ) + fi + + # Remove most bundled libraries. Some are still needed. + build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die +} + +src_configure() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + local myconf_gn="" + + # Make sure the build system will use the right tools, bug #340795. + tc-export AR CC CXX NM + + if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then + # Force clang since gcc is pretty broken at the moment. + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + strip-unsupported-flags + fi + + if tc-is-clang; then + myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" + else + myconf_gn+=" is_clang=false" + append-cxxflags -fpermissive + fi + + # Define a custom toolchain for GN + myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\"" + + if tc-is-cross-compiler; then + tc-export BUILD_{AR,CC,CXX,NM} + myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\"" + myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\"" + else + myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\"" + fi + + # GN needs explicit config for Debug/Release as opposed to inferring it from build directory. + myconf_gn+=" is_debug=false" + + # Component build isn't generally intended for use by end users. It's mostly useful + # for development and debugging. + myconf_gn+=" is_component_build=$(usex component-build true false)" + + # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md + myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)" + + myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")" + + # Disable nacl, we can't build without pnacl (http://crbug.com/269560). + myconf_gn+=" enable_nacl=false" + + # Use system-provided libraries. + # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733). + # TODO: use_system_hunspell (upstream changes needed). + # TODO: use_system_libsrtp (bug #459932). + # TODO: use_system_protobuf (bug #525560). + # TODO: use_system_ssl (http://crbug.com/58087). + # TODO: use_system_sqlite (http://crbug.com/22208). + + # libevent: https://bugs.gentoo.org/593458 + local gn_system_libraries=( + flac + fontconfig + freetype + # Need harfbuzz_from_pkgconfig target + #harfbuzz-ng + libdrm + libjpeg + libpng + libwebp + libxml + libxslt + openh264 + re2 + snappy + yasm + zlib + ) + if use system-ffmpeg; then + gn_system_libraries+=( ffmpeg opus ) + fi + if use system-icu; then + gn_system_libraries+=( icu ) + fi + if use system-libvpx; then + gn_system_libraries+=( libvpx ) + fi + build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die + + # See dependency logic in third_party/BUILD.gn + myconf_gn+=" use_system_harfbuzz=true" + + # Optional dependencies. + myconf_gn+=" closure_compile=$(usex closure-compile true false)" + myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)" + myconf_gn+=" enable_widevine=$(usex widevine true false)" + myconf_gn+=" use_cups=$(usex cups true false)" + myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)" + myconf_gn+=" use_kerberos=$(usex kerberos true false)" + myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)" + + # TODO: link_pulseaudio=true for GN. + + myconf_gn+=" fieldtrial_testing_like_official_build=true" + + # Never use bundled gold binary. Disable gold linker flags for now. + # Do not use bundled clang. + # Trying to use gold results in linker crash. + myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false" + + # Disable forced lld, bug 641556 + myconf_gn+=" use_lld=false" + + ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)" + myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)" + myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\"" + + # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . + # Note: these are for Gentoo use ONLY. For your own distribution, + # please get your own set of keys. Feel free to contact chromium@gentoo.org + # for more info. + local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc" + local google_default_client_id="329227923882.apps.googleusercontent.com" + local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" + myconf_gn+=" google_api_key=\"${google_api_key}\"" + myconf_gn+=" google_default_client_id=\"${google_default_client_id}\"" + myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\"" + + local myarch="$(tc-arch)" + + # Avoid CFLAGS problems, bug #352457, bug #390147. + if ! use custom-cflags; then + replace-flags "-Os" "-O2" + strip-flags + + # Prevent linker from running out of address space, bug #471810 . + if use x86; then + filter-flags "-g*" + fi + + # Prevent libvpx build failures. Bug 530248, 544702, 546984. + if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then + filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 + fi + fi + + if [[ $myarch = amd64 ]] ; then + myconf_gn+=" target_cpu=\"x64\"" + ffmpeg_target_arch=x64 + elif [[ $myarch = x86 ]] ; then + myconf_gn+=" target_cpu=\"x86\"" + ffmpeg_target_arch=ia32 + + # This is normally defined by compiler_cpu_abi in + # build/config/compiler/BUILD.gn, but we patch that part out. + append-flags -msse2 -mfpmath=sse -mmmx + elif [[ $myarch = arm64 ]] ; then + myconf_gn+=" target_cpu=\"arm64\"" + ffmpeg_target_arch=arm64 + elif [[ $myarch = arm ]] ; then + myconf_gn+=" target_cpu=\"arm\"" + ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm) + else + die "Failed to determine target arch, got '$myarch'." + fi + + # Make sure that -Werror doesn't get added to CFLAGS by the build system. + # Depending on GCC version the warnings are different and we don't want + # the build to fail because of that. + myconf_gn+=" treat_warnings_as_errors=false" + + # Disable fatal linker warnings, bug 506268. + myconf_gn+=" fatal_linker_warnings=false" + + # Bug 491582. + export TMPDIR="${WORKDIR}/temp" + mkdir -p -m 755 "${TMPDIR}" || die + + # https://bugs.gentoo.org/654216 + addpredict /dev/dri/ #nowarn + + #if ! use system-ffmpeg; then + if false; then + local build_ffmpeg_args="" + if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then + build_ffmpeg_args+=" --disable-asm" + fi + + # Re-configure bundled ffmpeg. See bug #491378 for example reasons. + einfo "Configuring bundled ffmpeg..." + pushd third_party/ffmpeg > /dev/null || die + chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \ + --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die + chromium/scripts/copy_config.sh || die + chromium/scripts/generate_gn.py || die + popd > /dev/null || die + fi + + einfo "Configuring Chromium..." + set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release + echo "$@" + "$@" || die +} + +src_compile() { + # Final link uses lots of file descriptors. + ulimit -n 2048 + + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die + + # Build mksnapshot and pax-mark it. + local x + for x in mksnapshot v8_context_snapshot_generator; do + if tc-is-cross-compiler; then + eninja -C out/Release "host/${x}" + pax-mark m "out/Release/host/${x}" + else + eninja -C out/Release "${x}" + pax-mark m "out/Release/${x}" + fi + done + + # Even though ninja autodetects number of CPUs, we respect + # user's options, for debugging with -j 1 or any other reason. + eninja -C out/Release chrome chromedriver + use suid && eninja -C out/Release chrome_sandbox + + pax-mark m out/Release/chrome + + # Build manpage; bug #684550 + sed -e 's|@@PACKAGE@@|chromium-browser|g; + s|@@MENUNAME@@|Chromium|g;' \ + chrome/app/resources/manpage.1.in > \ + out/Release/chromium-browser.1 || die +} + +src_install() { + local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser" + exeinto "${CHROMIUM_HOME}" + doexe out/Release/chrome + + if use suid; then + newexe out/Release/chrome_sandbox chrome-sandbox + fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox" + fi + + doexe out/Release/chromedriver + + local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" ) + sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die + doexe chromium-launcher.sh + + # It is important that we name the target "chromium-browser", + # xdg-utils expect it; bug #355517. + dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser + # keep the old symlink around for consistency + dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium + + dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver + + # Allow users to override command-line options, bug #357629. + insinto /etc/chromium + newins "${FILESDIR}/chromium.default" "default" + + pushd out/Release/locales > /dev/null || die + chromium_remove_language_paks + popd + + insinto "${CHROMIUM_HOME}" + doins out/Release/*.bin + doins out/Release/*.pak + doins out/Release/*.so + + if ! use system-icu; then + doins out/Release/icudtl.dat + fi + + doins -r out/Release/locales + doins -r out/Release/resources + + if [[ -d out/Release/swiftshader ]]; then + insinto "${CHROMIUM_HOME}/swiftshader" + doins out/Release/swiftshader/*.so + fi + + # Install icons and desktop entry. + local branding size + for size in 16 24 32 48 64 128 256 ; do + case ${size} in + 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;; + *) branding="chrome/app/theme/chromium" ;; + esac + newicon -s ${size} "${branding}/product_logo_${size}.png" \ + chromium-browser.png + done + + local mime_types="text/html;text/xml;application/xhtml+xml;" + mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797 + mime_types+="x-scheme-handler/ftp;" # bug #412185 + mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393 + make_desktop_entry \ + chromium-browser \ + "Chromium" \ + chromium-browser \ + "Network;WebBrowser" \ + "MimeType=${mime_types}\nStartupWMClass=chromium-browser" + sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die + + # Install GNOME default application entry (bug #303100). + insinto /usr/share/gnome-control-center/default-apps + newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml + + # Install manpage; bug #684550 + doman out/Release/chromium-browser.1 + dosym chromium-browser.1 /usr/share/man/man1/chromium.1 + + readme.gentoo_create_doc +} + +pkg_postrm() { + xdg_icon_cache_update + xdg_desktop_database_update +} + +pkg_postinst() { + xdg_icon_cache_update + xdg_desktop_database_update + readme.gentoo_print_elog +} diff --git a/www-client/chromium/chromium-79.0.3945.8.ebuild b/www-client/chromium/chromium-79.0.3945.8.ebuild new file mode 100644 index 000000000000..cf14a2868712 --- /dev/null +++ b/www-client/chromium/chromium-79.0.3945.8.ebuild @@ -0,0 +1,740 @@ +# Copyright 2009-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python2_7 ) + +CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he + hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr + sv sw ta te th tr uk vi zh-CN zh-TW" + +inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils + +DESCRIPTION="Open-source version of Google Chrome web browser" +HOMEPAGE="http://chromium.org/" +SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts jumbo-build kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" +RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" +REQUIRED_USE="component-build? ( !suid )" + +COMMON_DEPEND=" + >=app-accessibility/at-spi2-atk-2.26:2 + app-arch/bzip2:= + cups? ( >=net-print/cups-1.3.11:= ) + >=dev-libs/atk-2.26 + dev-libs/expat:= + dev-libs/glib:2 + system-icu? ( >=dev-libs/icu-65:= ) + >=dev-libs/libxml2-2.9.4-r3:=[icu] + dev-libs/libxslt:= + dev-libs/nspr:= + >=dev-libs/nss-3.26:= + >=dev-libs/re2-0.2016.11.01:= + gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= ) + >=media-libs/alsa-lib-1.0.19:= + media-libs/fontconfig:= + media-libs/freetype:= + >=media-libs/harfbuzz-2.4.0:0=[icu(-)] + media-libs/libjpeg-turbo:= + media-libs/libpng:= + system-libvpx? ( media-libs/libvpx:=[postproc,svc] ) + >=media-libs/openh264-1.6.0:= + pulseaudio? ( media-sound/pulseaudio:= ) + system-ffmpeg? ( + >=media-video/ffmpeg-4:= + || ( + media-video/ffmpeg[-samba] + >=net-fs/samba-4.5.10-r1[-debug(-)] + ) + !=net-fs/samba-4.5.12-r0 + media-libs/opus:= + ) + sys-apps/dbus:= + sys-apps/pciutils:= + virtual/udev + x11-libs/cairo:= + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3[X] + x11-libs/libX11:= + x11-libs/libXcomposite:= + x11-libs/libXcursor:= + x11-libs/libXdamage:= + x11-libs/libXext:= + x11-libs/libXfixes:= + >=x11-libs/libXi-1.6.0:= + x11-libs/libXrandr:= + x11-libs/libXrender:= + x11-libs/libXScrnSaver:= + x11-libs/libXtst:= + x11-libs/pango:= + app-arch/snappy:= + media-libs/flac:= + >=media-libs/libwebp-0.4.0:= + sys-libs/zlib:=[minizip] + kerberos? ( virtual/krb5 ) +" +# For nvidia-drivers blocker, see bug #413637 . +RDEPEND="${COMMON_DEPEND} + ! gn leftovers + base/third_party/libevent + third_party/adobe + third_party/speech-dispatcher + third_party/usb_ids + third_party/xdg-utils + third_party/yasm/run_yasm.py + ) + if ! use system-ffmpeg; then + keeplibs+=( third_party/ffmpeg third_party/opus ) + fi + if ! use system-icu; then + keeplibs+=( third_party/icu ) + fi + if ! use system-libvpx; then + keeplibs+=( third_party/libvpx ) + keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc ) + fi + if use tcmalloc; then + keeplibs+=( third_party/tcmalloc ) + fi + + # Remove most bundled libraries. Some are still needed. + build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die +} + +src_configure() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + local myconf_gn="" + + # Make sure the build system will use the right tools, bug #340795. + tc-export AR CC CXX NM + + if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then + # Force clang since gcc is pretty broken at the moment. + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + strip-unsupported-flags + fi + + if tc-is-clang; then + myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" + else + myconf_gn+=" is_clang=false" + fi + + # Define a custom toolchain for GN + myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\"" + + if tc-is-cross-compiler; then + tc-export BUILD_{AR,CC,CXX,NM} + myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\"" + myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\"" + else + myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\"" + fi + + # GN needs explicit config for Debug/Release as opposed to inferring it from build directory. + myconf_gn+=" is_debug=false" + + # Component build isn't generally intended for use by end users. It's mostly useful + # for development and debugging. + myconf_gn+=" is_component_build=$(usex component-build true false)" + + # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md + myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)" + + myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")" + + # Disable nacl, we can't build without pnacl (http://crbug.com/269560). + myconf_gn+=" enable_nacl=false" + + # Use system-provided libraries. + # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733). + # TODO: use_system_hunspell (upstream changes needed). + # TODO: use_system_libsrtp (bug #459932). + # TODO: use_system_protobuf (bug #525560). + # TODO: use_system_ssl (http://crbug.com/58087). + # TODO: use_system_sqlite (http://crbug.com/22208). + + # libevent: https://bugs.gentoo.org/593458 + local gn_system_libraries=( + flac + fontconfig + freetype + # Need harfbuzz_from_pkgconfig target + #harfbuzz-ng + libdrm + libjpeg + libpng + libwebp + libxml + libxslt + openh264 + re2 + snappy + yasm + zlib + ) + if use system-ffmpeg; then + gn_system_libraries+=( ffmpeg opus ) + fi + if use system-icu; then + gn_system_libraries+=( icu ) + fi + if use system-libvpx; then + gn_system_libraries+=( libvpx ) + fi + build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die + + # See dependency logic in third_party/BUILD.gn + myconf_gn+=" use_system_harfbuzz=true" + + # Optional dependencies. + myconf_gn+=" closure_compile=$(usex closure-compile true false)" + myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)" + myconf_gn+=" enable_widevine=$(usex widevine true false)" + myconf_gn+=" use_cups=$(usex cups true false)" + myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)" + myconf_gn+=" use_kerberos=$(usex kerberos true false)" + myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)" + + # TODO: link_pulseaudio=true for GN. + + myconf_gn+=" fieldtrial_testing_like_official_build=true" + + # Never use bundled gold binary. Disable gold linker flags for now. + # Do not use bundled clang. + # Trying to use gold results in linker crash. + myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false" + + # Disable forced lld, bug 641556 + myconf_gn+=" use_lld=false" + + ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)" + myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)" + myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\"" + + # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys . + # Note: these are for Gentoo use ONLY. For your own distribution, + # please get your own set of keys. Feel free to contact chromium@gentoo.org + # for more info. + local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc" + local google_default_client_id="329227923882.apps.googleusercontent.com" + local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" + myconf_gn+=" google_api_key=\"${google_api_key}\"" + myconf_gn+=" google_default_client_id=\"${google_default_client_id}\"" + myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\"" + local myarch="$(tc-arch)" + + # Avoid CFLAGS problems, bug #352457, bug #390147. + if ! use custom-cflags; then + replace-flags "-Os" "-O2" + strip-flags + + # Prevent linker from running out of address space, bug #471810 . + if use x86; then + filter-flags "-g*" + fi + + # Prevent libvpx build failures. Bug 530248, 544702, 546984. + if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then + filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 + fi + fi + + if [[ $myarch = amd64 ]] ; then + myconf_gn+=" target_cpu=\"x64\"" + ffmpeg_target_arch=x64 + elif [[ $myarch = x86 ]] ; then + myconf_gn+=" target_cpu=\"x86\"" + ffmpeg_target_arch=ia32 + + # This is normally defined by compiler_cpu_abi in + # build/config/compiler/BUILD.gn, but we patch that part out. + append-flags -msse2 -mfpmath=sse -mmmx + elif [[ $myarch = arm64 ]] ; then + myconf_gn+=" target_cpu=\"arm64\"" + ffmpeg_target_arch=arm64 + elif [[ $myarch = arm ]] ; then + myconf_gn+=" target_cpu=\"arm\"" + ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm) + else + die "Failed to determine target arch, got '$myarch'." + fi + + # Make sure that -Werror doesn't get added to CFLAGS by the build system. + # Depending on GCC version the warnings are different and we don't want + # the build to fail because of that. + myconf_gn+=" treat_warnings_as_errors=false" + + # Disable fatal linker warnings, bug 506268. + myconf_gn+=" fatal_linker_warnings=false" + + # Bug 491582. + export TMPDIR="${WORKDIR}/temp" + mkdir -p -m 755 "${TMPDIR}" || die + + # https://bugs.gentoo.org/654216 + addpredict /dev/dri/ #nowarn + + #if ! use system-ffmpeg; then + if false; then + local build_ffmpeg_args="" + if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then + build_ffmpeg_args+=" --disable-asm" + fi + + # Re-configure bundled ffmpeg. See bug #491378 for example reasons. + einfo "Configuring bundled ffmpeg..." + pushd third_party/ffmpeg > /dev/null || die + chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \ + --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die + chromium/scripts/copy_config.sh || die + chromium/scripts/generate_gn.py || die + popd > /dev/null || die + fi + + # Explicitly disable ICU data file support for system-icu builds. + if use system-icu; then + myconf_gn+=" icu_use_data_file=false" + fi + + einfo "Configuring Chromium..." + set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release + echo "$@" + "$@" || die +} + +src_compile() { + # Final link uses lots of file descriptors. + ulimit -n 2048 + + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die + + # Build mksnapshot and pax-mark it. + local x + for x in mksnapshot v8_context_snapshot_generator; do + if tc-is-cross-compiler; then + eninja -C out/Release "host/${x}" + pax-mark m "out/Release/host/${x}" + else + eninja -C out/Release "${x}" + pax-mark m "out/Release/${x}" + fi + done + + # Even though ninja autodetects number of CPUs, we respect + # user's options, for debugging with -j 1 or any other reason. + eninja -C out/Release chrome chromedriver + use suid && eninja -C out/Release chrome_sandbox + + pax-mark m out/Release/chrome + + # Build manpage; bug #684550 + sed -e 's|@@PACKAGE@@|chromium-browser|g; + s|@@MENUNAME@@|Chromium|g;' \ + chrome/app/resources/manpage.1.in > \ + out/Release/chromium-browser.1 || die +} + +src_install() { + local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser" + exeinto "${CHROMIUM_HOME}" + doexe out/Release/chrome + + if use suid; then + newexe out/Release/chrome_sandbox chrome-sandbox + fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox" + fi + + doexe out/Release/chromedriver + + local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" ) + sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die + doexe chromium-launcher.sh + + # It is important that we name the target "chromium-browser", + # xdg-utils expect it; bug #355517. + dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser + # keep the old symlink around for consistency + dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium + + dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver + + # Allow users to override command-line options, bug #357629. + insinto /etc/chromium + newins "${FILESDIR}/chromium.default" "default" + + pushd out/Release/locales > /dev/null || die + chromium_remove_language_paks + popd + + insinto "${CHROMIUM_HOME}" + doins out/Release/*.bin + doins out/Release/*.pak + doins out/Release/*.so + + if ! use system-icu; then + doins out/Release/icudtl.dat + fi + + doins -r out/Release/locales + doins -r out/Release/resources + + if [[ -d out/Release/swiftshader ]]; then + insinto "${CHROMIUM_HOME}/swiftshader" + doins out/Release/swiftshader/*.so + fi + + # Install icons and desktop entry. + local branding size + for size in 16 24 32 48 64 128 256 ; do + case ${size} in + 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;; + *) branding="chrome/app/theme/chromium" ;; + esac + newicon -s ${size} "${branding}/product_logo_${size}.png" \ + chromium-browser.png + done + + local mime_types="text/html;text/xml;application/xhtml+xml;" + mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797 + mime_types+="x-scheme-handler/ftp;" # bug #412185 + mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393 + make_desktop_entry \ + chromium-browser \ + "Chromium" \ + chromium-browser \ + "Network;WebBrowser" \ + "MimeType=${mime_types}\nStartupWMClass=chromium-browser" + sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die + + # Install GNOME default application entry (bug #303100). + insinto /usr/share/gnome-control-center/default-apps + newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml + + # Install manpage; bug #684550 + doman out/Release/chromium-browser.1 + dosym chromium-browser.1 /usr/share/man/man1/chromium.1 + + readme.gentoo_create_doc +} + +pkg_postrm() { + xdg_icon_cache_update + xdg_desktop_database_update +} + +pkg_postinst() { + xdg_icon_cache_update + xdg_desktop_database_update + readme.gentoo_print_elog +} diff --git a/www-client/chromium/files/chromium-77-blink-include.patch b/www-client/chromium/files/chromium-77-blink-include.patch deleted file mode 100644 index 3ac1770fb8ed..000000000000 --- a/www-client/chromium/files/chromium-77-blink-include.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001 -From: Dave Tapuska -Date: Mon, 12 Aug 2019 22:30:13 +0000 -Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage. - -Some configurations fail to build, limits should have been included. - -BUG=992832 - -Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981 -Commit-Queue: Dave Tapuska -Reviewed-by: Mostyn Bramley-Moore -Cr-Commit-Position: refs/heads/master@{#686214} ---- - -diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc -index 384566a..68d83e1 100644 ---- a/third_party/blink/renderer/platform/exported/web_time_range.cc -+++ b/third_party/blink/renderer/platform/exported/web_time_range.cc -@@ -31,6 +31,7 @@ - #include "third_party/blink/public/platform/web_time_range.h" - - #include -+#include - - namespace blink { - diff --git a/www-client/chromium/files/chromium-77-fix-gn-gen.patch b/www-client/chromium/files/chromium-77-fix-gn-gen.patch deleted file mode 100644 index 2c5f128cbc9b..000000000000 --- a/www-client/chromium/files/chromium-77-fix-gn-gen.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/third_party/blink/tools/BUILD.gn -+++ b/third_party/blink/tools/BUILD.gn -@@ -11,7 +11,7 @@ action("build_wpt_metadata") { - rebase_path("$root_out_dir/wpt_expectations_metadata"), - ] - outputs = [ -- "$root_out_dir/wpt_expectations_metadata/", -+ "$root_out_dir/wpt_expectations_metadata", - ] - data = [ - # Include the blinkpy tools to access expectations data diff --git a/www-client/chromium/files/chromium-77-gcc-abstract.patch b/www-client/chromium/files/chromium-77-gcc-abstract.patch deleted file mode 100644 index 6d77299ee6c3..000000000000 --- a/www-client/chromium/files/chromium-77-gcc-abstract.patch +++ /dev/null @@ -1,61 +0,0 @@ -From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 26 Jul 2019 16:48:06 +0000 -Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class - -The method UploadForDeepScanning gets a Request as parameter. But Request is an -abstract class, so GCC will not allow that declaration (polimorphycs should be -passed by reference). Use std::unique_ptr so BinaryUploadService can assume -ownership. - -Bug: 819294 -Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550 -Reviewed-by: Daniel Rubery -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#681333} ---- - -diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -index 6430c89..4e90487 100644 ---- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -+++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc -@@ -10,7 +10,7 @@ - namespace safe_browsing { - - void BinaryUploadService::UploadForDeepScanning( -- BinaryUploadService::Request request) { -+ std::unique_ptr request) { - DCHECK_CURRENTLY_ON(content::BrowserThread::UI); - NOTREACHED(); - } -diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -index d2dfd83..9b6f395 100644 ---- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -+++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h -@@ -5,6 +5,8 @@ - #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ - #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_ - -+#include -+ - #include "base/callback.h" - #include "components/safe_browsing/proto/webprotect.pb.h" - -@@ -40,6 +42,7 @@ - public: - // |callback| will run on the UI thread. - explicit Request(Callback callback); -+ virtual ~Request() = default; - Request(const Request&) = delete; - Request& operator=(const Request&) = delete; - -@@ -67,7 +70,7 @@ - // Upload the given file contents for deep scanning. The results will be - // returned asynchronously by calling |request|'s |callback|. This must be - // called on the UI thread. -- void UploadForDeepScanning(Request request); -+ void UploadForDeepScanning(std::unique_ptr request); - }; - - } // namespace safe_browsing diff --git a/www-client/chromium/files/chromium-77-gcc-alignas.patch b/www-client/chromium/files/chromium-77-gcc-alignas.patch deleted file mode 100644 index 3693ef50bed4..000000000000 --- a/www-client/chromium/files/chromium-77-gcc-alignas.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 6b633c4b14850df376d5cec571699018772f358e Mon Sep 17 00:00:00 2001 -From: Tomas Popela -Date: Tue, 17 Sep 2019 19:48:48 +0000 -Subject: [PATCH] GCC: Can't use alignas() together with __attribute__() - -It's because GCC has problems when mixing the alignas() together with -__attribute__() (that is used to export the symbols). The best -solution is to use ALIGNAS() macro from //base/compiler_specific.h -together with alignof() to have the equal functionality that compiles on -GCC as well as on clang. - -Bug: 819294 -Change-Id: Ieb169592a2965f17a18bfc88d28418eb723a4e5a -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1806735 -Auto-Submit: Tomáš Popela -Commit-Queue: Alex Clarke -Reviewed-by: Alex Clarke -Cr-Commit-Position: refs/heads/master@{#697330} ---- - -diff --git a/base/task/promise/dependent_list.h b/base/task/promise/dependent_list.h -index 020bdbfc..3245c1c 100644 ---- a/base/task/promise/dependent_list.h -+++ b/base/task/promise/dependent_list.h -@@ -59,7 +59,7 @@ - - // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can - // be used to store additional state (see static_asserts below). -- class BASE_EXPORT alignas(8) Node { -+ class BASE_EXPORT ALIGNAS(8) Node { - public: - Node(); - explicit Node(Node&& other) noexcept; - -From 8148fd96ae04a1150a9c6012634dcd2a7335f87a Mon Sep 17 00:00:00 2001 -From: Tomas Popela -Date: Tue, 20 Aug 2019 05:23:14 +0000 -Subject: [PATCH] GCC: Can't use alignas() together with __attribute__() - -It's because GCC has problems when mixing the alignas() together with -__attribute__() (that is used to export the symbols). The best -solution is to use ALIGNAS() macro from //base/compiler_specific.h -together with alignof() to have the equal functionality that compiles on -GCC as well as on clang. - -This is a regression after https://crrev.com/659933. - -Bug: 994581 -Change-Id: Ia376866ff9ac57d52d2e907fa325ae5a51893d07 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1758064 -Reviewed-by: Eric Willigers -Commit-Queue: Eric Willigers -Commit-Queue: Tomáš Popela -Auto-Submit: Tomáš Popela -Cr-Commit-Position: refs/heads/master@{#688417} ---- - -diff --git a/third_party/blink/renderer/core/css/css_property_value_set.h b/third_party/blink/renderer/core/css/css_property_value_set.h -index 67b353d..1bd404e 100644 ---- a/third_party/blink/renderer/core/css/css_property_value_set.h -+++ b/third_party/blink/renderer/core/css/css_property_value_set.h -@@ -175,8 +175,8 @@ - DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); - }; - --class CORE_EXPORT alignas(Member) alignas( -- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet -+class CORE_EXPORT ALIGNAS(alignof(Member)) -+ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet - : public CSSPropertyValueSet { - public: - ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/www-client/chromium/files/chromium-77-gcc-include.patch b/www-client/chromium/files/chromium-77-gcc-include.patch deleted file mode 100644 index 391f48fd2d91..000000000000 --- a/www-client/chromium/files/chromium-77-gcc-include.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 8c747a9c14ed4905f60f6680e2e09e33ea34163e Mon Sep 17 00:00:00 2001 -From: Jose Dapena Paz -Date: Fri, 26 Jul 2019 16:18:17 +0000 -Subject: [PATCH] IWYU: include in one_euro_filter.h as it uses std::unique_ptr - -Bug: 819294 -Change-Id: Ie1530f7046b0c8eb76e26adca530fa57c67ed876 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1720637 -Reviewed-by: Ella Ge -Commit-Queue: José Dapena Paz -Cr-Commit-Position: refs/heads/master@{#681321} ---- - -diff --git a/third_party/one_euro_filter/src/one_euro_filter.h b/third_party/one_euro_filter/src/one_euro_filter.h -index 7f8d15b..a8cd0ab 100644 ---- a/third_party/one_euro_filter/src/one_euro_filter.h -+++ b/third_party/one_euro_filter/src/one_euro_filter.h -@@ -1,6 +1,8 @@ - #ifndef ONE_EURO_ONE_EURO_FILTER_H_ - #define ONE_EURO_ONE_EURO_FILTER_H_ - -+#include -+ - #include "low_pass_filter.h" - - namespace one_euro_filter { diff --git a/www-client/chromium/files/chromium-77-no-cups.patch b/www-client/chromium/files/chromium-77-no-cups.patch deleted file mode 100644 index ac714178ed3b..000000000000 --- a/www-client/chromium/files/chromium-77-no-cups.patch +++ /dev/null @@ -1,42 +0,0 @@ -From f768afdd3104e7da663aa82e1e8f969aea3f85c3 Mon Sep 17 00:00:00 2001 -From: Lei Zhang -Date: Thu, 22 Aug 2019 11:44:27 -0700 -Subject: [PATCH] Handle unsupported configs in CreatePrinterHandlerTaskRunner(). - -CreatePrinterHandlerTaskRunner(), which was added in -https://crrev.com/658397, used ifdefs to only handle the supported build -configs. Add a #else case as a catch-all to conservatively handle the -unsupported configs. Since it is only a couple lines of trivial code, -doing this does not create much of a maintenance burden. - -(backported to chromium-77) - -Bug: 990727 -Change-Id: I07bd21abaeffc8223e88b519c3891185d5d2be12 ---- - -diff --git a/chrome/browser/ui/webui/print_preview/local_printer_handler_default.cc b/chrome/browser/ui/webui/print_preview/local_printer_handler_default.cc -index a1f3fd3..6e81f5e 100644 ---- a/chrome/browser/ui/webui/print_preview/local_printer_handler_default.cc -+++ b/chrome/browser/ui/webui/print_preview/local_printer_handler_default.cc -@@ -33,12 +33,15 @@ scoped_refptr CreatePrinterHandlerTaskRunner() { - static constexpr base::TaskTraits kTraits = { - base::MayBlock(), base::TaskPriority::USER_VISIBLE}; - --#if defined(OS_WIN) -- // Windows drivers are likely not thread-safe. -- return base::CreateSingleThreadTaskRunnerWithTraits(kTraits); --#elif defined(USE_CUPS) -+#if defined(USE_CUPS) - // CUPS is thread safe. -- return base::CreateTaskRunnerWithTraits(kTraits); -+ return base::CreateTaskRunner(kTraits); -+#elif defined(OS_WIN) -+ // Windows drivers are likely not thread-safe. -+ return base::CreateSingleThreadTaskRunner(kTraits); -+#else -+ // Be conservative on unsupported platforms. -+ return base::CreateSingleThreadTaskRunner(kTraits); - #endif - } - diff --git a/www-client/chromium/files/chromium-77-std-string.patch b/www-client/chromium/files/chromium-77-std-string.patch deleted file mode 100644 index f921f1aac94d..000000000000 --- a/www-client/chromium/files/chromium-77-std-string.patch +++ /dev/null @@ -1,130 +0,0 @@ -From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001 -From: Jeremy Roman -Date: Wed, 07 Aug 2019 13:26:48 +0000 -Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad. - -Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits. - -Bug: 980025 -Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948 -Reviewed-by: Kentaro Hara -Reviewed-by: Yutaka Hirano -Commit-Queue: Jeremy Roman -Cr-Commit-Position: refs/heads/master@{#684731} ---- - -diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h -index 0efc8fb..90063cb 100644 ---- a/third_party/blink/renderer/platform/fonts/font_cache_key.h -+++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h -@@ -133,6 +133,10 @@ - - struct FontCacheKeyTraits : WTF::SimpleClassHashTraits { - STATIC_ONLY(FontCacheKeyTraits); -+ -+ // std::string's empty state need not be zero in all implementations, -+ // and it is held within FontFaceCreationParams. -+ static const bool kEmptyValueIsZero = false; - }; - - } // namespace blink -diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h -index b35b6e9..77e524c 100644 ---- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h -+++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h -@@ -146,6 +146,11 @@ - LinkedHashSetNodeBase* next) - : LinkedHashSetNodeBase(prev, next), value_(value) {} - -+ LinkedHashSetNode(ValueArg&& value, -+ LinkedHashSetNodeBase* prev, -+ LinkedHashSetNodeBase* next) -+ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {} -+ - LinkedHashSetNode(LinkedHashSetNode&& other) - : LinkedHashSetNodeBase(std::move(other)), - value_(std::move(other.value_)) {} -@@ -445,10 +450,13 @@ - - // The slot is empty when the next_ field is zero so it's safe to zero - // the backing. -- static const bool kEmptyValueIsZero = true; -+ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero; - - static const bool kHasIsEmptyValueFunction = true; - static bool IsEmptyValue(const Node& node) { return !node.next_; } -+ static Node EmptyValue() { -+ return Node(ValueTraits::EmptyValue(), nullptr, nullptr); -+ } - - static const int kDeletedValue = -1; - -diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -index 4c3f899..cd1be00 100644 ---- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -+++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc -@@ -487,6 +487,7 @@ - }; - - struct Complicated { -+ Complicated() : Complicated(0) {} - Complicated(int value) : simple_(value) { objects_constructed_++; } - - Complicated(const Complicated& other) : simple_(other.simple_) { -@@ -495,9 +496,6 @@ - - Simple simple_; - static int objects_constructed_; -- -- private: -- Complicated() = delete; - }; - - int Complicated::objects_constructed_ = 0; -@@ -731,4 +729,45 @@ - - } // anonymous namespace - -+// A unit type which objects to its state being initialized wrong. -+struct InvalidZeroValue { -+ InvalidZeroValue() = default; -+ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {} -+ ~InvalidZeroValue() { CHECK(ok_); } -+ bool IsHashTableDeletedValue() const { return deleted_; } -+ -+ bool ok_ = true; -+ bool deleted_ = false; -+}; -+ -+template <> -+struct HashTraits : SimpleClassHashTraits { -+ static const bool kEmptyValueIsZero = false; -+}; -+ -+template <> -+struct DefaultHash { -+ struct Hash { -+ static unsigned GetHash(const InvalidZeroValue&) { return 0; } -+ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) { -+ return true; -+ } -+ }; -+}; -+ -+template -+class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {}; -+ -+using InvalidZeroValueSetTypes = -+ testing::Types, -+ ListHashSet, -+ LinkedHashSet>; -+TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes); -+ -+TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) { -+ using Set = TypeParam; -+ Set set; -+ set.insert(InvalidZeroValue()); -+} -+ - } // namespace WTF diff --git a/www-client/chromium/files/chromium-77-system-hb.patch b/www-client/chromium/files/chromium-77-system-hb.patch deleted file mode 100644 index 9cea0fac6c5e..000000000000 --- a/www-client/chromium/files/chromium-77-system-hb.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn -index 37d8e33..6610cc6 100644 ---- a/third_party/harfbuzz-ng/BUILD.gn -+++ b/third_party/harfbuzz-ng/BUILD.gn -@@ -16,7 +16,7 @@ if (use_system_harfbuzz) { - "//third_party:freetype_harfbuzz", - "//third_party/freetype:freetype_source", - ] -- packages = [ "harfbuzz" ] -+ packages = [ "harfbuzz", "harfbuzz-subset" ] - } - } else { - config("harfbuzz_config") { diff --git a/www-client/chromium/files/chromium-78-icon.patch b/www-client/chromium/files/chromium-78-icon.patch new file mode 100644 index 000000000000..2cca7f10d19c --- /dev/null +++ b/www-client/chromium/files/chromium-78-icon.patch @@ -0,0 +1,12 @@ +diff --git a/ui/platform_window/x11/x11_window.cc b/ui/platform_window/x11/x11_window.cc +index 7a3a6eb..7c01534 100644 +--- a/ui/platform_window/x11/x11_window.cc ++++ b/ui/platform_window/x11/x11_window.cc +@@ -67,6 +67,7 @@ ui::XWindow::Configuration ConvertInitPropertiesToXWindowConfig( + config.wm_role_name = properties.wm_role_name; + config.activatable = properties.activatable; + config.visual_id = properties.x_visual_id; ++ config.icon = properties.icon; + return config; + } + diff --git a/www-client/chromium/files/chromium-78-include.patch b/www-client/chromium/files/chromium-78-include.patch index 224aa3b35193..3db38eac1c96 100644 --- a/www-client/chromium/files/chromium-78-include.patch +++ b/www-client/chromium/files/chromium-78-include.patch @@ -23,3 +23,18 @@ index 959440f..c3fd542 100644 #include "base/optional.h" #include "third_party/blink/public/platform/web_common.h" +Missing include due to reverting ProfileManagerObserver +--- + +diff --git a/chrome/browser/web_applications/extensions/bookmark_app_util.cc b/chrome/browser/web_applications/extensions/bookmark_app_util.cc +index ee4b70a..b31e5f5 100644 +--- a/chrome/browser/web_applications/extensions/bookmark_app_util.cc ++++ b/chrome/browser/web_applications/extensions/bookmark_app_util.cc +@@ -7,6 +7,7 @@ + #include "base/strings/string_piece.h" + #include "base/values.h" + #include "chrome/browser/extensions/extension_service.h" ++#include "chrome/browser/profiles/profile.h" + #include "chrome/browser/web_applications/components/app_registrar.h" + #include "chrome/browser/web_applications/components/web_app_provider_base.h" + #include "chrome/common/chrome_features.h" diff --git a/www-client/chromium/files/chromium-78-pm-crash.patch b/www-client/chromium/files/chromium-78-pm-crash.patch new file mode 100644 index 000000000000..ada266120dc4 --- /dev/null +++ b/www-client/chromium/files/chromium-78-pm-crash.patch @@ -0,0 +1,43 @@ +From e73aed9a5ef15102f29ac31b70290faf5c90f9fe Mon Sep 17 00:00:00 2001 +From: Evan Stade +Date: Wed, 16 Oct 2019 16:01:32 +0000 +Subject: [PATCH] Fix shutdown crash in ProfileManager. + +OnProfileMarkedForPermanentDeletion should move from +ProfileManagerObserver to ProfileObserver, which would also +fix this bug. However, changing the order of members is the +quickest and most cherry-pick-able way to avoid the crash. + +Bug: 1005244 +Change-Id: If2db68c846dd418cd02864b57b9b543687fa1e03 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1863518 +Auto-Submit: Evan Stade +Reviewed-by: David Roger +Commit-Queue: Evan Stade +Cr-Commit-Position: refs/heads/master@{#706467} +--- + +diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h +index b60df76d..7d02af7 100644 +--- a/chrome/browser/profiles/profile_manager.h ++++ b/chrome/browser/profiles/profile_manager.h +@@ -409,6 +409,10 @@ class ProfileManager : public content::NotificationObserver, + const base::FilePath& profile_dir); + #endif // !defined(OS_ANDROID) + ++ // Destroy after |profile_info_cache_| since Profile destruction may trigger ++ // some observers to unregister themselves. ++ base::ObserverList observers_; ++ + // Object to cache various information about profiles. Contains information + // about every profile which has been created for this instance of Chrome, + // if it has not been explicitly deleted. It must be destroyed after +@@ -450,8 +454,6 @@ class ProfileManager : public content::NotificationObserver, + // Controls whether to initialize some services. Only disabled for testing. + bool do_final_services_init_ = true; + +- base::ObserverList observers_; +- + // TODO(chrome/browser/profiles/OWNERS): Usage of this in profile_manager.cc + // should likely be turned into DCHECK_CURRENTLY_ON(BrowserThread::UI) for + // consistency with surrounding code in the same file but that wasn't trivial diff --git a/www-client/chromium/files/chromium-79-gcc-alignas.patch b/www-client/chromium/files/chromium-79-gcc-alignas.patch new file mode 100644 index 000000000000..f7f1fe7ac5bc --- /dev/null +++ b/www-client/chromium/files/chromium-79-gcc-alignas.patch @@ -0,0 +1,108 @@ +Re-use chromium alignas workaround in protobuf. +--- + +diff --git a/third_party/protobuf/src/google/protobuf/port_def.inc b/third_party/protobuf/src/google/protobuf/port_def.inc +index f1bd85d..9c204a1 100644 +--- a/third_party/protobuf/src/google/protobuf/port_def.inc ++++ b/third_party/protobuf/src/google/protobuf/port_def.inc +@@ -528,6 +528,35 @@ PROTOBUF_EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport)); + #undef IN + #endif // _MSC_VER + ++// Specify memory alignment for structs, classes, etc. ++// Use like: ++// class PROTOBUF_ALIGNAS(16) MyClass { ... } ++// PROTOBUF_ALIGNAS(16) int array[4]; ++// ++// In most places you can use the C++11 keyword "alignas", which is preferred. ++// ++// But compilers have trouble mixing __attribute__((...)) syntax with ++// alignas(...) syntax. ++// ++// Doesn't work in clang or gcc: ++// struct alignas(16) __attribute__((packed)) S { char c; }; ++// Works in clang but not gcc: ++// struct __attribute__((packed)) alignas(16) S2 { char c; }; ++// Works in clang and gcc: ++// struct alignas(16) S3 { char c; } __attribute__((packed)); ++// ++// There are also some attributes that must be specified *before* a class ++// definition: visibility (used for exporting functions/classes) is one of ++// these attributes. This means that it is not possible to use alignas() with a ++// class that is marked as exported. ++#if defined(_MSC_VER) ++#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment)) ++#elif defined(__GNUC__) ++#define PROTOBUF_ALIGNAS(byte_alignment) __attribute__((aligned(byte_alignment))) ++#else ++#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment) ++#endif ++ + #if defined(__clang__) + #pragma clang diagnostic push + // TODO(gerbens) ideally we cleanup the code. But a cursory try shows many +diff --git a/third_party/protobuf/src/google/protobuf/arena.h b/third_party/protobuf/src/google/protobuf/arena.h +index dedc221..a8515ce 100644 +--- a/third_party/protobuf/src/google/protobuf/arena.h ++++ b/third_party/protobuf/src/google/protobuf/arena.h +@@ -245,7 +245,7 @@ struct ArenaOptions { + // well as protobuf container types like RepeatedPtrField and Map. The protocol + // is internal to protobuf and is not guaranteed to be stable. Non-proto types + // should not rely on this protocol. +-class PROTOBUF_EXPORT alignas(8) Arena final { ++class PROTOBUF_EXPORT PROTOBUF_ALIGNAS(8) Arena final { + public: + // Arena constructor taking custom options. See ArenaOptions below for + // descriptions of the options available. +diff --git a/third_party/protobuf/src/google/protobuf/port_def.inc b/third_party/protobuf/src/google/protobuf/port_def.inc +index f1bd85d..6d02b53 100644 +--- a/third_party/protobuf/src/google/protobuf/port_def.inc ++++ b/third_party/protobuf/src/google/protobuf/port_def.inc +@@ -528,6 +528,35 @@ PROTOBUF_EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport)); + #undef IN + #endif // _MSC_VER + ++// Specify memory alignment for structs, classes, etc. ++// Use like: ++// class PROTOBUF_ALIGNAS(16) MyClass { ... } ++// PROTOBUF_ALIGNAS(16) int array[4]; ++// ++// In most places you can use the C++11 keyword "alignas", which is preferred. ++// ++// But compilers have trouble mixing __attribute__((...)) syntax with ++// alignas(...) syntax. ++// ++// Doesn't work in clang or gcc: ++// struct alignas(16) __attribute__((packed)) S { char c; }; ++// Works in clang but not gcc: ++// struct __attribute__((packed)) alignas(16) S2 { char c; }; ++// Works in clang and gcc: ++// struct alignas(16) S3 { char c; } __attribute__((packed)); ++// ++// There are also some attributes that must be specified *before* a class ++// definition: visibility (used for exporting functions/classes) is one of ++// these attributes. This means that it is not possible to use alignas() with a ++// class that is marked as exported. ++#if defined(_MSC_VER) ++#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment)) ++#elif defined(__GNUC__) ++#define PROTOBUF_ALIGNAS(byte_alignment) __attribute__((aligned(byte_alignment))) ++#else ++#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment) ++#endif ++ + #if defined(__clang__) + #pragma clang diagnostic push + // TODO(gerbens) ideally we cleanup the code. But a cursory try shows many +diff --git a/third_party/protobuf/src/google/protobuf/port_undef.inc b/third_party/protobuf/src/google/protobuf/port_undef.inc +index b7e67fe..ba1fffc 100644 +--- a/third_party/protobuf/src/google/protobuf/port_undef.inc ++++ b/third_party/protobuf/src/google/protobuf/port_undef.inc +@@ -80,6 +80,7 @@ + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__declspec + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllexport + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport ++#undef PROTOBUF_ALIGNAS + + + diff --git a/www-client/chromium/files/chromium-79-gcc-ambiguous-nodestructor.patch b/www-client/chromium/files/chromium-79-gcc-ambiguous-nodestructor.patch new file mode 100644 index 000000000000..d43a091b9718 --- /dev/null +++ b/www-client/chromium/files/chromium-79-gcc-ambiguous-nodestructor.patch @@ -0,0 +1,39 @@ +From af77dc4014ead3d898fdc8a7a70fe5063ac9b102 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 25 Oct 2019 19:01:29 +0000 +Subject: [PATCH] GCC: use brace-initializer for DohUpgrade vector + +Constructing NoDestructor with parenthesis constructor is ambiguous +in GCC. Use brace-initializer to avoid that problem. This fixes this +build error: + +Bug: 819294 +Change-Id: I00dda42daa1794d11e022f26ac07f92e599d106d +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879910 +Reviewed-by: Eric Orth +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#709569} +--- + +diff --git a/net/dns/dns_util.cc b/net/dns/dns_util.cc +index 14997c4..637b6f2 100644 +--- a/net/dns/dns_util.cc ++++ b/net/dns/dns_util.cc +@@ -144,7 +144,7 @@ + // DohProviderId histogram suffix list in + // tools/metrics/histograms/histograms.xml. + static const base::NoDestructor> +- upgradable_servers({ ++ upgradable_servers{{ + DohUpgradeEntry( + "CleanBrowsingAdult", + {"185.228.168.10", "185.228.169.11", "2a0d:2a00:1::1", +@@ -215,7 +215,7 @@ + {"9.9.9.9", "149.112.112.112", "2620:fe::fe", "2620:fe::9"}, + {"dns.quad9.net", "dns9.quad9.net"} /* DoT hostname */, + {"https://dns.quad9.net/dns-query", true /* use_post */}), +- }); ++ }}; + return *upgradable_servers; + } + diff --git a/www-client/chromium/files/chromium-79-gcc-name-clash.patch b/www-client/chromium/files/chromium-79-gcc-name-clash.patch new file mode 100644 index 000000000000..2324f4db7f91 --- /dev/null +++ b/www-client/chromium/files/chromium-79-gcc-name-clash.patch @@ -0,0 +1,135 @@ +From e925deab264e5ebc3c5c13415aa3d44a746e8d45 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Fri, 25 Oct 2019 14:53:51 +0000 +Subject: [PATCH] GCC: avoid clash of WebThemeEngine::ForcedColors with ForcedColors enum class + +GCC fails to build because the declaration of the enum class ForcedColors +clashes with the GetForcedColors method. + +Bug: 819294 +Change-Id: I5c7647978d15c771f5372a8c70ac6aeb2284fb2f +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1879452 +Reviewed-by: Kentaro Hara +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#709469} + +(backported to M79) +--- + +diff --git a/content/child/webthemeengine_impl_android.cc b/content/child/webthemeengine_impl_android.cc +index 2e703d6..3759f6c 100644 +--- a/content/child/webthemeengine_impl_android.cc ++++ b/content/child/webthemeengine_impl_android.cc +@@ -228,7 +228,7 @@ void WebThemeEngineAndroid::Paint( + native_theme_extra_params, NativeColorScheme(color_scheme)); + } + +-blink::ForcedColors WebThemeEngineAndroid::ForcedColors() const { ++blink::ForcedColors WebThemeEngineAndroid::GetForcedColors() const { + return forced_colors_; + } + +diff --git a/content/child/webthemeengine_impl_android.h b/content/child/webthemeengine_impl_android.h +index 0c113a88..95e2744 100644 +--- a/content/child/webthemeengine_impl_android.h ++++ b/content/child/webthemeengine_impl_android.h +@@ -22,7 +22,7 @@ + const blink::WebRect& rect, + const blink::WebThemeEngine::ExtraParams* extra_params, + blink::WebColorScheme color_scheme) override; +- blink::ForcedColors ForcedColors() const override; ++ blink::ForcedColors GetForcedColors() const override; + void SetForcedColors(const blink::ForcedColors forced_colors) override; + blink::PreferredColorScheme PreferredColorScheme() const override; + void SetPreferredColorScheme( +diff --git a/content/child/webthemeengine_impl_default.cc b/content/child/webthemeengine_impl_default.cc +index 84db298..04af6c6 100644 +--- a/content/child/webthemeengine_impl_default.cc ++++ b/content/child/webthemeengine_impl_default.cc +@@ -232,7 +232,7 @@ + } + #endif + +-blink::ForcedColors WebThemeEngineDefault::ForcedColors() const { ++blink::ForcedColors WebThemeEngineDefault::GetForcedColors() const { + return ui::NativeTheme::GetInstanceForWeb()->UsesHighContrastColors() + ? blink::ForcedColors::kActive + : blink::ForcedColors::kNone; +diff --git a/content/child/webthemeengine_impl_default.h b/content/child/webthemeengine_impl_default.h +index 73579db..1f08f67 100644 +--- a/content/child/webthemeengine_impl_default.h ++++ b/content/child/webthemeengine_impl_default.h +@@ -39,7 +39,7 @@ + int32_t vertical_arrow_bitmap_height, + int32_t horizontal_arrow_bitmap_width); + #endif +- blink::ForcedColors ForcedColors() const override; ++ blink::ForcedColors GetForcedColors() const override; + void SetForcedColors(const blink::ForcedColors forced_colors) override; + blink::PreferredColorScheme PreferredColorScheme() const override; + void SetPreferredColorScheme( +diff --git a/content/child/webthemeengine_impl_mac.cc b/content/child/webthemeengine_impl_mac.cc +index 9cb279e..553eedb 100644 +--- a/content/child/webthemeengine_impl_mac.cc ++++ b/content/child/webthemeengine_impl_mac.cc +@@ -6,7 +6,7 @@ + + namespace content { + +-blink::ForcedColors WebThemeEngineMac::ForcedColors() const { ++blink::ForcedColors WebThemeEngineMac::GetForcedColors() const { + return forced_colors_; + } + +diff --git a/content/child/webthemeengine_impl_mac.h b/content/child/webthemeengine_impl_mac.h +index b3dafa1..c0b66c0 100644 +--- a/content/child/webthemeengine_impl_mac.h ++++ b/content/child/webthemeengine_impl_mac.h +@@ -13,7 +13,7 @@ + public: + ~WebThemeEngineMac() override {} + +- blink::ForcedColors ForcedColors() const override; ++ blink::ForcedColors GetForcedColors() const override; + void SetForcedColors(const blink::ForcedColors forced_colors) override; + blink::PreferredColorScheme PreferredColorScheme() const override; + void SetPreferredColorScheme( +diff --git a/third_party/blink/public/platform/web_theme_engine.h b/third_party/blink/public/platform/web_theme_engine.h +index d642462..aa2da1b 100644 +--- a/third_party/blink/public/platform/web_theme_engine.h ++++ b/third_party/blink/public/platform/web_theme_engine.h +@@ -227,7 +227,7 @@ + return base::nullopt; + } + +- virtual ForcedColors ForcedColors() const { return ForcedColors::kNone; } ++ virtual ForcedColors GetForcedColors() const { return ForcedColors::kNone; } + virtual void SetForcedColors(const blink::ForcedColors forced_colors) {} + virtual blink::PreferredColorScheme PreferredColorScheme() const { + return PreferredColorScheme::kNoPreference; +diff --git a/third_party/blink/renderer/core/css/media_values.cc b/third_party/blink/renderer/core/css/media_values.cc +index 045d793..f7c0484 100644 +--- a/third_party/blink/renderer/core/css/media_values.cc ++++ b/third_party/blink/renderer/core/css/media_values.cc +@@ -221,7 +221,7 @@ + + ForcedColors MediaValues::CalculateForcedColors() { + if (Platform::Current() && Platform::Current()->ThemeEngine()) +- return Platform::Current()->ThemeEngine()->ForcedColors(); ++ return Platform::Current()->ThemeEngine()->GetForcedColors(); + else + return ForcedColors::kNone; + } +diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc +index 64b0d23..02cce1f 100644 +--- a/third_party/blink/renderer/core/dom/document.cc ++++ b/third_party/blink/renderer/core/dom/document.cc +@@ -8625,7 +8625,7 @@ + bool Document::InForcedColorsMode() const { + return RuntimeEnabledFeatures::ForcedColorsEnabled() && Platform::Current() && + Platform::Current()->ThemeEngine() && +- Platform::Current()->ThemeEngine()->ForcedColors() != ++ Platform::Current()->ThemeEngine()->GetForcedColors() != + ForcedColors::kNone; + } + diff --git a/www-client/chromium/files/chromium-79-gcc-permissive.patch b/www-client/chromium/files/chromium-79-gcc-permissive.patch new file mode 100644 index 000000000000..c42d56985a68 --- /dev/null +++ b/www-client/chromium/files/chromium-79-gcc-permissive.patch @@ -0,0 +1,79 @@ +From 528e9a3e1f25bd264549c4c7779748abfd16bb1c Mon Sep 17 00:00:00 2001 +From: Jan Wilken Dörrie +Date: Fri, 18 Oct 2019 11:45:24 +0000 +Subject: [PATCH] Reland "GCC: Fix base::internal::InvokeFuncImpl" + +This is a reland of 9293d5c86eec1c34fc00716645400b44a14e764e + +Original change's description: +> GCC: Fix base::internal::InvokeFuncImpl +> +> GCC doesn't like that the Value data member has no out-of-line +> definition. The problem is triggered specifically only when compiling +> +> components/services/leveldb/leveldb_database_impl.cc +> +> which has lambda functions returning locally-defined classes. +> +> The current code works as-is in C++17 mode which introduces the concept +> of inline variables, but in C++14 we need either an explicit out-of-line +> definition or a function member instead of a data member. +> +> Use std::integral_constant for defining the value. +> +> Bug: 819294 +> Change-Id: I5c68e14ce3fa9d8b4d8a2cb42d7f9b53938aabf3 +> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1862451 +> Reviewed-by: Jan Wilken Dörrie +> Reviewed-by: Daniel Cheng +> Commit-Queue: Jüri Valdmann +> Cr-Commit-Position: refs/heads/master@{#706384} + +Bug: 819294 +Change-Id: I3d5a52ddc6815516e2239f9347c60de06bf765a2 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1865212 +Reviewed-by: Daniel Cheng +Commit-Queue: Jan Wilken Dörrie +Cr-Commit-Position: refs/heads/master@{#707329} +--- + +diff --git a/base/bind.h b/base/bind.h +index 7a400af..1070ce6 100644 +--- a/base/bind.h ++++ b/base/bind.h +@@ -187,18 +187,15 @@ + // well-formed. Using `Invoker::Run` with a OnceCallback triggers a + // static_assert, which is why the ternary expression does not compile. + // TODO(crbug.com/752720): Remove this indirection once we have `if constexpr`. +-template +-struct InvokeFuncImpl; ++template ++constexpr auto GetInvokeFunc(std::true_type) { ++ return Invoker::RunOnce; ++} + + template +-struct InvokeFuncImpl { +- static constexpr auto Value = &Invoker::RunOnce; +-}; +- +-template +-struct InvokeFuncImpl { +- static constexpr auto Value = &Invoker::Run; +-}; ++constexpr auto GetInvokeFunc(std::false_type) { ++ return Invoker::Run; ++} + + template