From 02e2208f46f4e2c00fb9743cbc47350bdd233bfa Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 16 Jan 2018 17:34:21 +0000 Subject: gentoo resync : 16.01.2018 --- www-client/Manifest.gz | Bin 6895 -> 6882 bytes www-client/chromium/Manifest | 13 +- www-client/chromium/chromium-63.0.3239.132.ebuild | 665 ++++++++++++++++++++ www-client/chromium/chromium-64.0.3282.39.ebuild | 673 -------------------- www-client/chromium/chromium-64.0.3282.85.ebuild | 678 ++++++++++++++++++++ www-client/chromium/chromium-65.0.3294.5.ebuild | 676 -------------------- www-client/chromium/chromium-65.0.3315.3.ebuild | 682 +++++++++++++++++++++ www-client/chromium/files/chromium-gcc-r0.patch | 55 ++ www-client/chromium/files/chromium-gn-r0.patch | 33 + www-client/chromium/files/chromium-vulkan-r0.patch | 120 ++++ www-client/google-chrome-beta/Manifest | 4 +- .../google-chrome-beta-64.0.3282.71.ebuild | 156 ----- .../google-chrome-beta-64.0.3282.85.ebuild | 156 +++++ www-client/otter/Manifest | 2 + www-client/otter/otter-0.9.94.ebuild | 73 +++ www-client/qutebrowser/Manifest | 6 +- www-client/qutebrowser/qutebrowser-1.0.2.ebuild | 85 --- www-client/qutebrowser/qutebrowser-1.0.3.ebuild | 76 --- www-client/qutebrowser/qutebrowser-1.1.0.ebuild | 76 +++ www-client/w3m/Manifest | 2 +- www-client/w3m/w3m-0.5.3-r9.ebuild | 4 +- 21 files changed, 2556 insertions(+), 1679 deletions(-) create mode 100644 www-client/chromium/chromium-63.0.3239.132.ebuild delete mode 100644 www-client/chromium/chromium-64.0.3282.39.ebuild create mode 100644 www-client/chromium/chromium-64.0.3282.85.ebuild delete mode 100644 www-client/chromium/chromium-65.0.3294.5.ebuild create mode 100644 www-client/chromium/chromium-65.0.3315.3.ebuild create mode 100644 www-client/chromium/files/chromium-gcc-r0.patch create mode 100644 www-client/chromium/files/chromium-gn-r0.patch create mode 100644 www-client/chromium/files/chromium-vulkan-r0.patch delete mode 100644 www-client/google-chrome-beta/google-chrome-beta-64.0.3282.71.ebuild create mode 100644 www-client/google-chrome-beta/google-chrome-beta-64.0.3282.85.ebuild create mode 100644 www-client/otter/otter-0.9.94.ebuild delete mode 100644 www-client/qutebrowser/qutebrowser-1.0.2.ebuild delete mode 100644 www-client/qutebrowser/qutebrowser-1.0.3.ebuild create mode 100644 www-client/qutebrowser/qutebrowser-1.1.0.ebuild (limited to 'www-client') diff --git a/www-client/Manifest.gz b/www-client/Manifest.gz index b350f7f7bf78..a35585af549d 100644 Binary files a/www-client/Manifest.gz and b/www-client/Manifest.gz differ diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest index adee68d0dc4b..feda6df28003 100644 --- a/www-client/chromium/Manifest +++ b/www-client/chromium/Manifest @@ -4,22 +4,27 @@ AUX chromium-browser.xml 407 BLAKE2B 168d78b0855546ca559cfb51aff0bc85d5e6ae974c2 AUX chromium-clang-r1.patch 808 BLAKE2B f3f6cfc679b65f214e6667dc29e4241ae9344be02b5cddd1c25a6410c205e3ad1cf182719b4ba795a5b065fc736c0175803fdaad66439ed2989fc27ff9a12758 SHA512 dfb81895fb78983e5adba54351d94e9174aa6a523c5a78738aad8223330cde6739dea6d82328d603f693a2d5810df890eccc4bed202d73875c9c97be506936e5 AUX chromium-clang-r2.patch 731 BLAKE2B 6a0560107c89ab4406d62700312bb4437b49b5b1feace304c6db309460b74f630dd59c424f152ebf6a1d88025c14b7162d14a38afde6e74a87ca04d3424fd9b6 SHA512 f5edc9b573269a7a6944e17019fa858e7162c548400eceabdabe695d7e10d3179b7593415ec3eaef226defdd1628fd8c9cc66c0b46ebe6ac1afe5035a319c379 AUX chromium-cups-r0.patch 1350 BLAKE2B 91c32a88d5a03ba4f16e54a4498cf6de121b8d6dfbb76630afc69925bfa192c456f6d1349e0ba0b9f71373608ce983910630bf2f278ca884ec8bde4d132b9201 SHA512 404aea01f732132c65fc66c60926c671daad0a1d9446422d36eb6788820f1d23a2bea9d81971f7341f4c36d157bfc9c840b58d7f5f62a913b789d00362c7d005 +AUX chromium-gcc-r0.patch 2344 BLAKE2B f7fdff3e72e57c222e02a202fffa6785eeb90408094099b8e04cd8cecfc5cd5006801ffaafaa8561a4402ee5fa4bd8b9f489ac6ac3e34c212a683f5793c21124 SHA512 0e29192c8637b050c4976455c798ce0dc078c1e92ec0ed51da71866c2d35242e720f4ca468a431e8ea696700c8ef003a71e8ec06c573bab5355b96e8388a2844 AUX chromium-gcc-u2f.patch 1670 BLAKE2B 9d83331ec5e9d4ef3b58e9119c7c152abe61daf8b32e168662de9e734d935c24913b603c631d148ed1cb7b5364e751cbb9bcc7e58e5c34f375958898fc0cf8f5 SHA512 f10486ef46940fa740ca2d7e8225924704a4f89b709ef3dfb7ad128865982c220f8971d169515d9d1be08ee112aef1cac95281f0a5af4615256d9760966545f1 AUX chromium-gcc5-r4.patch 3648 BLAKE2B 44ad25ba69e100f7df35a2532ad1c8e55acf9dbbdcb1c28000c755748ef62848d325c7e379e06d1a0567dbda0e3f97808755ef90e2b7a197aa74a786d0280ca0 SHA512 6b6d80c8adfbb317003712b94cfdf733af48ee5f32d10b6f6e8599cd08b7a9d8b73e6cec2902ed55eb0a962ba9c9cf14a70299e132ec7bfec29806ed23836791 AUX chromium-gcc5-r5.patch 568 BLAKE2B 9c4979a0eb540f490844a368173d7bb6a0f101daca5ea4ab5213fbda62e0a615ee2e0d674a550ded59b7a29aa9193782664e71a614e9c7387061b3d347423994 SHA512 f1878f6960f0f6cad723e2f26ffeed7fc6c2c0e468098d5f08d7e305d644375436c5d7c1698d79bc9f3625fd5736793132d088e68f543838a073c2be68fe5882 +AUX chromium-gn-r0.patch 1233 BLAKE2B 53c0a3cd692d19eac60be0f5aa61f9cbda7d473e42adc0cd95fc78dd44c39ead9825b862347314351133b5c80f9b2fd58daacdc9568efeccefb1dd0ec6526d85 SHA512 de085e2e159ea1fb14c39d630e77459f0e67497479169ce3253bc098a06deea75020289c091e816df1ee81ccec9de695ecd59f29e9d847c20693ef2710659dcd AUX chromium-launcher-r3.sh 1199 BLAKE2B 85f57b380cdc25bd000cf57d3c129b67f6e55d96dd958190040b0680f8d4d358ac777e0c1ebd6a1b32dd3821a377bcf9f598e073584528d0480460978c4c1fb1 SHA512 f1909314ae74985c85740d26c9bfab694f3202de8ccc392a1c4ec5c8760db21b6cc46146c78a9abebd09e6d24f37e19466f0c4d2d61815400b48d859f8ce154d AUX chromium-memcpy-r0.patch 1306 BLAKE2B 585c015fbc6cfda61fb28c451da1433047c21e439c6a23e2f27844c308984a2066a70913669b3e1797233f86e25a119e494156c0b869eccc94d21c2abaeadba4 SHA512 1aeeb70929acee529dea66860b42f106afe18c0f6219eb03c9c710faf8d20a997135550e289839599ec325d8f032243fd70c07d397bd89302a192c41e8c4660a +AUX chromium-vulkan-r0.patch 4070 BLAKE2B d4b272fce24bee6a961f58d2f4ef74ddf6a56e8f07382752d7d42b97d970b28a1422773eb297096b61988ebad1daf88a0b36cadb226ee19731e2ad56268c4692 SHA512 d16dc06dca3b52302d805589dbcc5a31de26f71b1aa0d721e53cf941e7e995b5196a8ddc93150b5f8f661f88015fd64203633b0f04cbd479272f0b45bc106b16 AUX chromium-webrtc-r0.patch 972 BLAKE2B 1c49db0ba631c8e517a5b361e2882e7f00d9b018af2bbe7e701b878b78f1480317bfb6394b0184b49da3c4361acebf6f6eb164b12246a61a9b205e209d8e598b SHA512 325e269e6c24e9d3103ae360653e0bda764356655534be08cfe308d8c63ed8c93c80c09f58d023afbc6e141f7cbe5b86f7983c57b8f6c794b7675d332439b051 AUX chromium-widevine-r1.patch 428 BLAKE2B 07b5ab48a2233986f60c91192557e0454eab56248cdf378ae4d6fe99f239f95e89f28fd0b2b7dc36dd85557e7a5403d9a30a8189b7f56a9bae678831dfa49d2b SHA512 fe6b912bd8b3993194f71bef229e57d4c24f9adcf697172eb3bc5ee8d38967bf5fe5b964e9d89d23960d25cd3a6e53ce7714f81f0df1881758b611a66375e32a AUX chromium.default 148 BLAKE2B 5ee5b582c59a6e4bef87bbb0e232e2470ad412b1fbbb3b9af6ef7153edb55c5b9080cc16a5a115b0c5b3c381aa87ce57a7b12bdd2070e67dac10a6c2995ddbaf SHA512 0d4849e03592fb58b05e62a43021eca7e61615616c8907c3b2e445402e03adaf9e8fa25b0a745d6c31eb037456215cc02b59e345a3a06d932e76cf990c92d739 DIST chromium-63.0.3239.108.tar.xz 534294640 BLAKE2B f0f87115e91d7a2aa331cbab05475cac098f6ec37b8ca82b6a84911edcf0104a89557304467704911a3f3b3232d8a83d575bd545df1c31518e50c2563d83c095 SHA512 3cb7c8569d2d061f5abf4ad68d9ea1716a1b07bdf8dfa7b600d558d308374ff5dbda9f947e67e21186e3e716fe9524fc63e8eabd9eac1fa805f0eb7d994c32c8 -DIST chromium-64.0.3282.39.tar.xz 482357636 BLAKE2B 7e7209aa1c4584210b552e82b29c57af549492c85e96204b15c3d27d9ed3c89b7109c9bc539709ecc7221147c2cd4957b6dacf18bfa358c2568175e39eeb4a84 SHA512 16d7c16b218fb42a1371fe105b87a04fce0397df0912824fd443667a1b93ee65b1b9f7c8c3007bea8fc241e6a1b6cb4fa29a4f37c83b3fdfdd8ed6a6523e6906 +DIST chromium-63.0.3239.132.tar.xz 534286424 BLAKE2B 52658d4e8ff50bb8bdb1d397bc90a36e73407810198c4f28eea29bd0a4ad98bd4af947bdb8a5ecdbd73a248be8f375ba80c74c9a097aa57ef51eed1dc440ff95 SHA512 96e9ebdf1c3dc14a914bee50ced9547d5a94838ed602552379711ba67f00381173059ceb8a552efadd3175ceaa4cb6c15902fe582fc2eba7b7bdb8a19f47d1a0 DIST chromium-64.0.3282.71.tar.xz 482134720 BLAKE2B 691e33c396fde798985af96168a7b7aa92e3c90bc542c6e84df1b41a74ae0f8cb7364edfcf148db48971dabd5b2af422d884a36528b5549ec2fd52f5e6d7f643 SHA512 90fff36292898e47a2c47940efadc98b7099cdfdd8df4659b5e1ba327e26230919dc1e9e21a4496207cf88f9976d048dd2f200424224f2bc25e7ee9ab2755f06 -DIST chromium-65.0.3294.5.tar.xz 484687920 BLAKE2B 2d4d30ea83bfa0d5753eecd4ea735ec5d81097867b7c32c190853adee372c5032dac549c064fb22688555ef6231a3e2e43b274735883285f91a0a2d9c7a151ec SHA512 089bcc7eba7d5a2a964b5b6e94c7735653582cd6925325b9bdb2788bd4abb4b3cbc8c71f5c77004600864106a18da3fddda0adaa53ad54a96efe21498e45f23a +DIST chromium-64.0.3282.85.tar.xz 482224568 BLAKE2B f8650721a2a30ea7f9c651efab58c54a225d7dda177c924c2ade132d488bb4b415e6155426384a005bafbcff5affbc99e142f45c85042cc6367e17c88c806f12 SHA512 52842b4f8304b4eb4e8fb25b586e0d03af5a5d0aebe2fc9ae517f97e05ee5ece3f71fd2b48a4f148fccec859b13c98a669ccbb4183d99ebd3bcf7e617ca241d0 DIST chromium-65.0.3298.3.tar.xz 485716108 BLAKE2B 185b3f683b2a732343fa5f98b24171f1d3cf2cf8eeb63c56efa7699f6b038d2a7eea4f9277b0b7ee2fdfa207a4f13edbaf2cc9a591a79ec4d058a131ce44366b SHA512 f1ed9a403036e87da7897f173eeb1aa71fe2650efc5ef5b98f814c7d4d9c879971597f9ded11324c86d6edc7f12f3bcf2786a6fb022e9697dbdb8eae086e18b7 +DIST chromium-65.0.3315.3.tar.xz 532475512 BLAKE2B 1a118ddd05f2b939ff0fd84f85e1c22789713351776d889bafb55ddb2b897b2921050a3df3b7d5e3224be84539d95dddce1a27a948c61b29c788ed9f8e194e02 SHA512 c7f0feda90c0df15058473d39482e9b9a9b3236dcb90ff8ba7ad53afde2fce4901b2cbd678d8470560cc0cb6e31c8d3caee9f0a9f100d82d95feacabcdb7f8ce EBUILD chromium-63.0.3239.108.ebuild 19852 BLAKE2B dcdf02aa189a5a184395d69a4e4d854d1860453a257b59e0393104a628c3603c1f717fab4803785b87a22bc4d9ea66c3de88cc9f5f3b1b44e08871f210b04314 SHA512 889e192997c46188590b5ede0b79c1a5abe9bff0bc7b4e1464b6cebad494d26158977d942764d143c36a475063d97aaee925d7d1155e5cfb74d654fd82fc348f -EBUILD chromium-64.0.3282.39.ebuild 20150 BLAKE2B 52ac5f763b1d62a3fa0b22401aadd7a9988945dc2ca1b1631f56f5f82df00a66a563aa0ac2b9e7a5f186dbb7bdbb1f945749e1c8bdc74d22dd51fe1e5c112c75 SHA512 fc1fc03574c94fb0b2e2b4e4e13907fa8724f01b1cb1f11869610e417663b6867ff994ecd95e508dff8f4e95c8127f36431368aa1b28b695e175ef1c92e2257f +EBUILD chromium-63.0.3239.132.ebuild 19998 BLAKE2B f919a386ed211971f8773d1a7310e46bc0bf5446f4fc3a2fe7e70bf7eaff46159e7892bd5510ee93a0afd9059571cfeeb2e3b8b33496c3615bfd211d4db65223 SHA512 f2149f8fd8e7930e4c1856fc0341d8e43916f1755f9a4873502b70959c2d0df35112641c6be300c39827db4d5b6123f5ee8f7738bc9e26b4c42590b19e1dceba EBUILD chromium-64.0.3282.71.ebuild 20343 BLAKE2B ad5d6ee182a0afd2a9a7aa6df6f304c332c069bb86d941f78bb918af46fea4a11bae161da5f04361c8ea544146dc7f3c89745af9a6c298c0594f2f7a4253c6a4 SHA512 f0662554dc694d876d9e111e19ed8609391d7f20a90925cdef473c7986229241a6b9f81994ad3b73c711708a8ba753995adda7f3ee404d32afcc4563c01a3061 -EBUILD chromium-65.0.3294.5.ebuild 20338 BLAKE2B a992c3d16e340f53ed575941b7ec48c8a254286be84f468f93e45eab707f95e13dde6c70c67296239e83defd5a7552cea527057e9733020ed575dd5aba8d7276 SHA512 f5b8fa9c52c98d601c4d0848c51789c6cfb3e18f6e0de541add26ef50a78c32fab1e6adcb483db9ad0af35734e77607f010ece461f4f88cce18e4633fae3620b +EBUILD chromium-64.0.3282.85.ebuild 20343 BLAKE2B ad5d6ee182a0afd2a9a7aa6df6f304c332c069bb86d941f78bb918af46fea4a11bae161da5f04361c8ea544146dc7f3c89745af9a6c298c0594f2f7a4253c6a4 SHA512 f0662554dc694d876d9e111e19ed8609391d7f20a90925cdef473c7986229241a6b9f81994ad3b73c711708a8ba753995adda7f3ee404d32afcc4563c01a3061 EBUILD chromium-65.0.3298.3.ebuild 20478 BLAKE2B 6a47301263f82cfbc260e6af2c4234ae70863b904cbdc9a069174ba8e0e195b92331662ff51f412e46a0d622bf9beb70a0900366dbcb54c24170cbdc34d85e13 SHA512 1341dbc98ae59d67db968bea7b41ef9be82e140ff17afbef9d0578cb91bcb82f74f2c411a80c50818dd77a9dd04d792c8a34edd76b485eaab96b9a9354fc6baf +EBUILD chromium-65.0.3315.3.ebuild 20473 BLAKE2B 9f2680782bd95007807fc7e484e9637175cf9a5929a5e85ca3c2845cffbb07bdf2976c72d7c4534e78db553d8dcc1d7c5361dab2e6465abca1f988b4f6705b62 SHA512 20e4e17943324632170627e70cda0107bdd59ccec9ed7766cf984ea4782ba58f8199658fb7ac9080d31472cb78195c79f92b04345ee8715b43e3d65c3158fcb4 MISC metadata.xml 1418 BLAKE2B 0fd718bd70dc0fa890bf7e0efa2f6a186df446617f36bb5e4689989c4766da4016b5325d8a81f8959e887fc182ff792bb10909b5724df8c4fcaade221b289d8b SHA512 1c68218f5cab5787a7524823975474065794aa18f8301e9efe066847b9a566b870a68a3768cee925a3ad6543fb182575043c1cb45e145db67382c502a535d039 diff --git a/www-client/chromium/chromium-63.0.3239.132.ebuild b/www-client/chromium/chromium-63.0.3239.132.ebuild new file mode 100644 index 000000000000..bc4598a11c0b --- /dev/null +++ b/www-client/chromium/chromium-63.0.3239.132.ebuild @@ -0,0 +1,665 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" +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 eutils gnome2-utils flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs versionator 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 ~arm ~arm64 ~x86" +IUSE="component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" +RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" + +COMMON_DEPEND=" + app-arch/bzip2:= + cups? ( >=net-print/cups-1.3.11:= ) + dev-libs/expat:= + dev-libs/glib:2 + system-icu? ( >=dev-libs/icu-59 =dev-libs/libxml2-2.9.4-r3:=[icu] + dev-libs/libxslt:= + dev-libs/nspr:= + >=dev-libs/nss-3.26:= + >=dev-libs/re2-0.2016.05.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-1.5.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-3:= + || ( + media-video/ffmpeg[-samba] + >=net-fs/samba-4.5.10-r1[-debug(-)] + ) + !=net-fs/samba-4.5.12 + 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} + !=www-client/chromium-9999 + !=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" && + has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" && + has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]" +} + +if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then + EBUILD_DEATH_HOOKS+=" chromium_pkg_die"; +fi + +DISABLE_AUTOFORMATTING="yes" +DOC_CONTENTS=" +Some web pages may require additional fonts to display properly. +Try installing some of the following packages if some characters +are not displayed properly: +- media-fonts/arphicfonts +- media-fonts/bitstream-cyberbit +- media-fonts/droid +- media-fonts/ipamonafont +- media-fonts/noto +- media-fonts/ja-ipafonts +- media-fonts/takao-fonts +- media-fonts/wqy-microhei +- media-fonts/wqy-zenhei + +To fix broken icons on the Downloads page, you should install an icon +theme that covers the appropriate MIME types, and configure this as your +GTK+ icon theme. +" + +PATCHES=( + "${FILESDIR}/${PN}-widevine-r1.patch" + "${FILESDIR}/${PN}-FORTIFY_SOURCE-r2.patch" + "${FILESDIR}/${PN}-gcc5-r4.patch" + "${FILESDIR}/${PN}-clang-r1.patch" + "${FILESDIR}/${PN}-webrtc-r0.patch" + "${FILESDIR}/${PN}-gcc5-r5.patch" +) + +pre_build_checks() { + if [[ ${MERGE_TYPE} != binary ]]; then + local -x CPP="$(tc-getCXX) -E" + if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then + # bugs: #601654 + die "At least clang 3.9.1 is required" + fi + if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then + # bugs: #535730, #525374, #518668, #600288, #627356 + die "At least gcc 5.0 is required" + fi + fi + + # Check build requirements, bug #541816 and bug #471810 . + CHECKREQS_MEMORY="3G" + CHECKREQS_DISK_BUILD="5G" + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + CHECKREQS_DISK_BUILD="25G" + if ! use component-build; then + CHECKREQS_MEMORY="16G" + fi + fi + eshopts_pop + check-reqs_pkg_setup +} + +pkg_pretend() { + pre_build_checks +} + +pkg_setup() { + pre_build_checks + + # Make sure the build system will use the right python, bug #344367. + python-any-r1_pkg_setup + + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + default + + mkdir -p third_party/node/linux/node-linux-x64/bin || die + ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die + + local keeplibs=( + base/third_party/dmg_fp + base/third_party/dynamic_annotations + base/third_party/icu + base/third_party/nspr + base/third_party/superfasthash + base/third_party/symbolize + base/third_party/valgrind + base/third_party/xdg_mime + base/third_party/xdg_user_dirs + chrome/third_party/mozilla_security_manager + courgette/third_party + net/third_party/mozilla_security_manager + net/third_party/nss + third_party/WebKit + third_party/analytics + third_party/angle + third_party/angle/src/common/third_party/base + third_party/angle/src/common/third_party/smhasher + third_party/angle/src/third_party/compiler + third_party/angle/src/third_party/libXNVCtrl + third_party/angle/src/third_party/trace_event + third_party/blink + third_party/boringssl + third_party/breakpad + third_party/breakpad/breakpad/src/third_party/curl + third_party/brotli + third_party/cacheinvalidation + third_party/catapult + third_party/catapult/common/py_vulcanize/third_party/rcssmin + third_party/catapult/common/py_vulcanize/third_party/rjsmin + third_party/catapult/third_party/polymer + third_party/catapult/tracing/third_party/d3 + third_party/catapult/tracing/third_party/gl-matrix + third_party/catapult/tracing/third_party/jszip + third_party/catapult/tracing/third_party/mannwhitneyu + third_party/catapult/tracing/third_party/oboe + third_party/catapult/tracing/third_party/pako + third_party/ced + third_party/cld_2 + third_party/cld_3 + third_party/crc32c + third_party/cros_system_api + third_party/devscripts + third_party/dom_distiller_js + third_party/fips181 + third_party/flatbuffers + third_party/flot + third_party/freetype + third_party/glslang-angle + third_party/google_input_tools + third_party/google_input_tools/third_party/closure_library + third_party/google_input_tools/third_party/closure_library/third_party/closure + third_party/googletest + third_party/hunspell + third_party/iccjpeg + third_party/inspector_protocol + third_party/jinja2 + third_party/jstemplate + third_party/khronos + third_party/leveldatabase + third_party/libXNVCtrl + third_party/libaddressinput + third_party/libjingle + third_party/libphonenumber + third_party/libsecret + third_party/libsrtp + third_party/libudev + third_party/libwebm + third_party/libxml/chromium + third_party/libyuv + third_party/lss + third_party/lzma_sdk + third_party/markupsafe + third_party/mesa + third_party/modp_b64 + third_party/mt19937ar + third_party/node + third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2 + third_party/openmax_dl + third_party/ots + third_party/pdfium + third_party/pdfium/third_party/agg23 + third_party/pdfium/third_party/base + third_party/pdfium/third_party/build + third_party/pdfium/third_party/bigint + third_party/pdfium/third_party/freetype + third_party/pdfium/third_party/lcms + third_party/pdfium/third_party/libopenjpeg20 + third_party/pdfium/third_party/libpng16 + third_party/pdfium/third_party/libtiff + third_party/ply + third_party/polymer + third_party/protobuf + third_party/protobuf/third_party/six + third_party/qcms + third_party/sfntly + third_party/skia + third_party/skia/third_party/gif + third_party/skia/third_party/vulkan + third_party/smhasher + third_party/spirv-headers + third_party/spirv-tools-angle + third_party/sqlite + third_party/swiftshader + third_party/swiftshader/third_party/llvm-subzero + third_party/swiftshader/third_party/subzero + third_party/usrsctp + third_party/vulkan + third_party/vulkan-validation-layers + third_party/web-animations-js + third_party/webdriver + third_party/webrtc + third_party/widevine + third_party/woff2 + third_party/zlib/google + url/third_party/mozilla + v8/src/third_party/valgrind + v8/third_party/inspector_protocol + + # gyp -> 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 +} + +bootstrap_gn() { + if tc-is-cross-compiler; then + local -x AR=${BUILD_AR} + local -x CC=${BUILD_CC} + local -x CXX=${BUILD_CXX} + local -x NM=${BUILD_NM} + local -x CFLAGS=${BUILD_CFLAGS} + local -x CXXFLAGS=${BUILD_CXXFLAGS} + local -x LDFLAGS=${BUILD_LDFLAGS} + fi + einfo "Building GN..." + set -- tools/gn/bootstrap/bootstrap.py -s -v --no-clean + echo "$@" + "$@" || die +} + +src_configure() { + local myconf_gn="" + + # 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 (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 + # 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+=" 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_gconf=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" + + if tc-is-clang; then + myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" + else + myconf_gn+=" is_clang=false" + fi + + # 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" + + 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)" + 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 + 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 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" + + # 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 + + # Make sure the build system will use the right tools, bug #340795. + tc-export AR CC CXX NM + + # 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 + + # https://bugs.gentoo.org/588596 + append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks) + + # Bug 491582. + export TMPDIR="${WORKDIR}/temp" + mkdir -p -m 755 "${TMPDIR}" || die + + if ! use system-ffmpeg; 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 + + bootstrap_gn + + einfo "Configuring Chromium..." + set -- out/Release/gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release + echo "$@" + "$@" || die +} + +src_compile() { + # 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 + + # Work around circular dep issue + # https://chromium-review.googlesource.com/c/chromium/src/+/617768 + eninja -C out/Release gen/ui/accessibility/ax_enums.h + + # 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 +} + +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 + + if use widevine; then + # These will be provided by chrome-binary-plugins + rm out/Release/libwidevinecdm*.so || die + fi + + 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 22 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 + + readme.gentoo_create_doc +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postrm() { + gnome2_icon_cache_update + xdg_desktop_database_update +} + +pkg_postinst() { + gnome2_icon_cache_update + xdg_desktop_database_update + readme.gentoo_print_elog +} diff --git a/www-client/chromium/chromium-64.0.3282.39.ebuild b/www-client/chromium/chromium-64.0.3282.39.ebuild deleted file mode 100644 index 176c6981bdd0..000000000000 --- a/www-client/chromium/chromium-64.0.3282.39.ebuild +++ /dev/null @@ -1,673 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -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 eutils gnome2-utils flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs versionator 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 ~arm ~arm64 ~x86" -IUSE="component-build cups gnome-keyring +hangouts kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" - -COMMON_DEPEND=" - app-accessibility/at-spi2-atk:2 - app-arch/bzip2:= - cups? ( >=net-print/cups-1.3.11:= ) - dev-libs/atk - dev-libs/expat:= - dev-libs/glib:2 - system-icu? ( >=dev-libs/icu-59:= ) - >=dev-libs/libxml2-2.9.4-r3:=[icu] - dev-libs/libxslt:= - dev-libs/nspr:= - >=dev-libs/nss-3.14.3:= - >=dev-libs/re2-0.2016.05.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-1.5.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-3:= - || ( - media-video/ffmpeg[-samba] - >=net-fs/samba-4.5.10-r1[-debug(-)] - ) - !=net-fs/samba-4.5.12 - 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} - !=www-client/chromium-9999 - !=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" && - has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" && - has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]" -} - -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then - EBUILD_DEATH_HOOKS+=" chromium_pkg_die"; -fi - -DISABLE_AUTOFORMATTING="yes" -DOC_CONTENTS=" -Some web pages may require additional fonts to display properly. -Try installing some of the following packages if some characters -are not displayed properly: -- media-fonts/arphicfonts -- media-fonts/bitstream-cyberbit -- media-fonts/droid -- media-fonts/ipamonafont -- media-fonts/noto -- media-fonts/ja-ipafonts -- media-fonts/takao-fonts -- media-fonts/wqy-microhei -- media-fonts/wqy-zenhei - -To fix broken icons on the Downloads page, you should install an icon -theme that covers the appropriate MIME types, and configure this as your -GTK+ icon theme. -" - -PATCHES=( - "${FILESDIR}/chromium-widevine-r1.patch" - "${FILESDIR}/chromium-FORTIFY_SOURCE-r2.patch" - "${FILESDIR}/chromium-webrtc-r0.patch" - "${FILESDIR}/chromium-memcpy-r0.patch" - "${FILESDIR}/chromium-cups-r0.patch" - "${FILESDIR}/chromium-clang-r2.patch" - "${FILESDIR}/chromium-angle-r0.patch" -) - -pre_build_checks() { - if [[ ${MERGE_TYPE} != binary ]]; then - local -x CPP="$(tc-getCXX) -E" - if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then - # bugs: #601654 - die "At least clang 3.9.1 is required" - fi - if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then - # bugs: #535730, #525374, #518668, #600288, #627356 - die "At least gcc 5.0 is required" - fi - fi - - # Check build requirements, bug #541816 and bug #471810 . - CHECKREQS_MEMORY="3G" - CHECKREQS_DISK_BUILD="5G" - eshopts_push -s extglob - if is-flagq '-g?(gdb)?([1-9])'; then - CHECKREQS_DISK_BUILD="25G" - if ! use component-build; then - CHECKREQS_MEMORY="16G" - fi - fi - eshopts_pop - check-reqs_pkg_setup -} - -pkg_pretend() { - pre_build_checks -} - -pkg_setup() { - pre_build_checks - - chromium_suid_sandbox_check_kernel_config -} - -src_prepare() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - default - - mkdir -p third_party/node/linux/node-linux-x64/bin || die - ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die - - local keeplibs=( - base/third_party/dmg_fp - base/third_party/dynamic_annotations - base/third_party/icu - base/third_party/nspr - base/third_party/superfasthash - base/third_party/symbolize - base/third_party/valgrind - base/third_party/xdg_mime - base/third_party/xdg_user_dirs - chrome/third_party/mozilla_security_manager - courgette/third_party - net/third_party/mozilla_security_manager - net/third_party/nss - third_party/WebKit - third_party/analytics - third_party/angle - third_party/angle/src/common/third_party/base - third_party/angle/src/common/third_party/smhasher - third_party/angle/src/third_party/compiler - third_party/angle/src/third_party/libXNVCtrl - third_party/angle/src/third_party/trace_event - third_party/blink - third_party/boringssl - third_party/boringssl/src/third_party/fiat - third_party/breakpad - third_party/breakpad/breakpad/src/third_party/curl - third_party/brotli - third_party/cacheinvalidation - third_party/catapult - third_party/catapult/common/py_vulcanize/third_party/rcssmin - third_party/catapult/common/py_vulcanize/third_party/rjsmin - third_party/catapult/third_party/polymer - third_party/catapult/tracing/third_party/d3 - third_party/catapult/tracing/third_party/gl-matrix - third_party/catapult/tracing/third_party/jszip - third_party/catapult/tracing/third_party/mannwhitneyu - third_party/catapult/tracing/third_party/oboe - third_party/catapult/tracing/third_party/pako - third_party/ced - third_party/cld_3 - third_party/crc32c - third_party/cros_system_api - third_party/devscripts - third_party/dom_distiller_js - third_party/fips181 - third_party/flatbuffers - third_party/flot - third_party/freetype - third_party/glslang-angle - third_party/google_input_tools - third_party/google_input_tools/third_party/closure_library - third_party/google_input_tools/third_party/closure_library/third_party/closure - third_party/googletest - third_party/hunspell - third_party/iccjpeg - third_party/inspector_protocol - third_party/jinja2 - third_party/jstemplate - third_party/khronos - third_party/leveldatabase - third_party/libXNVCtrl - third_party/libaddressinput - third_party/libjingle - third_party/libphonenumber - third_party/libsecret - third_party/libsrtp - third_party/libudev - third_party/libwebm - third_party/libxml/chromium - third_party/libyuv - third_party/lss - third_party/lzma_sdk - third_party/markupsafe - third_party/mesa - third_party/metrics_proto - third_party/modp_b64 - third_party/mt19937ar - third_party/node - third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2 - third_party/openmax_dl - third_party/ots - third_party/pdfium - third_party/pdfium/third_party/agg23 - third_party/pdfium/third_party/base - third_party/pdfium/third_party/build - third_party/pdfium/third_party/bigint - third_party/pdfium/third_party/freetype - third_party/pdfium/third_party/lcms - third_party/pdfium/third_party/libopenjpeg20 - third_party/pdfium/third_party/libpng16 - third_party/pdfium/third_party/libtiff - third_party/ply - third_party/polymer - third_party/protobuf - third_party/protobuf/third_party/six - third_party/qcms - third_party/sfntly - third_party/skia - third_party/skia/third_party/gif - third_party/skia/third_party/vulkan - third_party/smhasher - third_party/spirv-headers - third_party/spirv-tools-angle - third_party/sqlite - third_party/swiftshader - third_party/swiftshader/third_party/llvm-subzero - third_party/swiftshader/third_party/subzero - third_party/usrsctp - third_party/vulkan - third_party/vulkan-validation-layers - third_party/web-animations-js - third_party/webdriver - third_party/webrtc - third_party/widevine - third_party/woff2 - third_party/zlib/google - url/third_party/mozilla - v8/src/third_party/valgrind - v8/third_party/inspector_protocol - - # gyp -> 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 -} - -bootstrap_gn() { - if tc-is-cross-compiler; then - local -x AR=${BUILD_AR} - local -x CC=${BUILD_CC} - local -x CXX=${BUILD_CXX} - local -x NM=${BUILD_NM} - local -x CFLAGS=${BUILD_CFLAGS} - local -x CXXFLAGS=${BUILD_CXXFLAGS} - local -x LDFLAGS=${BUILD_LDFLAGS} - fi - einfo "Building GN..." - set -- tools/gn/bootstrap/bootstrap.py -s -v --no-clean - echo "$@" - "$@" || die -} - -src_configure() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - local myconf_gn="" - - # 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)" - - 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 (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 - # 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+=" 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_gconf=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" - - if tc-is-clang; then - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" - else - myconf_gn+=" is_clang=false" - fi - - # 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)" - 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 - 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 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" - - # 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 - - # Make sure the build system will use the right tools, bug #340795. - tc-export AR CC CXX NM - - # 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 - - # https://bugs.gentoo.org/588596 - append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks) - - # Bug 491582. - export TMPDIR="${WORKDIR}/temp" - mkdir -p -m 755 "${TMPDIR}" || die - - if ! use system-ffmpeg; 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 - - bootstrap_gn - - einfo "Configuring Chromium..." - set -- out/Release/gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release - echo "$@" - "$@" || die -} - -src_compile() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - # 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 - - # Work around circular dep issue - # https://chromium-review.googlesource.com/c/chromium/src/+/617768 - eninja -C out/Release gen/ui/accessibility/ax_enums.h - - # 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 -} - -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 - - if use widevine; then - # These will be provided by chrome-binary-plugins - rm out/Release/libwidevinecdm*.so || die - fi - - 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 - - insinto "${CHROMIUM_HOME}/swiftshader" - doins out/Release/swiftshader/*.so - - # Install icons and desktop entry. - local branding size - for size in 16 22 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 - - readme.gentoo_create_doc -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postrm() { - gnome2_icon_cache_update - xdg_desktop_database_update -} - -pkg_postinst() { - gnome2_icon_cache_update - xdg_desktop_database_update - readme.gentoo_print_elog -} diff --git a/www-client/chromium/chromium-64.0.3282.85.ebuild b/www-client/chromium/chromium-64.0.3282.85.ebuild new file mode 100644 index 000000000000..f9d0c892ec16 --- /dev/null +++ b/www-client/chromium/chromium-64.0.3282.85.ebuild @@ -0,0 +1,678 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" +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 eutils gnome2-utils flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs versionator 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 ~arm ~arm64 ~x86" +IUSE="component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" +RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" + +COMMON_DEPEND=" + app-accessibility/at-spi2-atk:2 + app-arch/bzip2:= + cups? ( >=net-print/cups-1.3.11:= ) + dev-libs/atk + dev-libs/expat:= + dev-libs/glib:2 + system-icu? ( >=dev-libs/icu-59:= ) + >=dev-libs/libxml2-2.9.4-r3:=[icu] + dev-libs/libxslt:= + dev-libs/nspr:= + >=dev-libs/nss-3.26:= + >=dev-libs/re2-0.2016.05.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-1.5.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-3:= + || ( + media-video/ffmpeg[-samba] + >=net-fs/samba-4.5.10-r1[-debug(-)] + ) + !=net-fs/samba-4.5.12 + 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} + !=www-client/chromium-9999 + !=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" && + has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" && + has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]" +} + +if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then + EBUILD_DEATH_HOOKS+=" chromium_pkg_die"; +fi + +DISABLE_AUTOFORMATTING="yes" +DOC_CONTENTS=" +Some web pages may require additional fonts to display properly. +Try installing some of the following packages if some characters +are not displayed properly: +- media-fonts/arphicfonts +- media-fonts/bitstream-cyberbit +- media-fonts/droid +- media-fonts/ipamonafont +- media-fonts/noto +- media-fonts/ja-ipafonts +- media-fonts/takao-fonts +- media-fonts/wqy-microhei +- media-fonts/wqy-zenhei + +To fix broken icons on the Downloads page, you should install an icon +theme that covers the appropriate MIME types, and configure this as your +GTK+ icon theme. +" + +PATCHES=( + "${FILESDIR}/chromium-widevine-r1.patch" + "${FILESDIR}/chromium-FORTIFY_SOURCE-r2.patch" + "${FILESDIR}/chromium-webrtc-r0.patch" + "${FILESDIR}/chromium-memcpy-r0.patch" + "${FILESDIR}/chromium-cups-r0.patch" + "${FILESDIR}/chromium-clang-r2.patch" + "${FILESDIR}/chromium-angle-r0.patch" +) + +pre_build_checks() { + if [[ ${MERGE_TYPE} != binary ]]; then + local -x CPP="$(tc-getCXX) -E" + if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then + # bugs: #601654 + die "At least clang 3.9.1 is required" + fi + if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then + # bugs: #535730, #525374, #518668, #600288, #627356 + die "At least gcc 5.0 is required" + fi + fi + + # Check build requirements, bug #541816 and bug #471810 . + CHECKREQS_MEMORY="3G" + CHECKREQS_DISK_BUILD="5G" + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + CHECKREQS_DISK_BUILD="25G" + if ! use component-build; then + CHECKREQS_MEMORY="16G" + fi + fi + eshopts_pop + check-reqs_pkg_setup +} + +pkg_pretend() { + pre_build_checks +} + +pkg_setup() { + pre_build_checks + + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + default + + mkdir -p third_party/node/linux/node-linux-x64/bin || die + ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die + + local keeplibs=( + base/third_party/dmg_fp + base/third_party/dynamic_annotations + base/third_party/icu + base/third_party/nspr + base/third_party/superfasthash + base/third_party/symbolize + base/third_party/valgrind + base/third_party/xdg_mime + base/third_party/xdg_user_dirs + chrome/third_party/mozilla_security_manager + courgette/third_party + net/third_party/mozilla_security_manager + net/third_party/nss + third_party/WebKit + third_party/analytics + third_party/angle + third_party/angle/src/common/third_party/base + third_party/angle/src/common/third_party/smhasher + third_party/angle/src/third_party/compiler + third_party/angle/src/third_party/libXNVCtrl + third_party/angle/src/third_party/trace_event + third_party/blink + third_party/boringssl + third_party/boringssl/src/third_party/fiat + third_party/breakpad + third_party/breakpad/breakpad/src/third_party/curl + third_party/brotli + third_party/cacheinvalidation + third_party/catapult + third_party/catapult/common/py_vulcanize/third_party/rcssmin + third_party/catapult/common/py_vulcanize/third_party/rjsmin + third_party/catapult/third_party/polymer + third_party/catapult/tracing/third_party/d3 + third_party/catapult/tracing/third_party/gl-matrix + third_party/catapult/tracing/third_party/jszip + third_party/catapult/tracing/third_party/mannwhitneyu + third_party/catapult/tracing/third_party/oboe + third_party/catapult/tracing/third_party/pako + third_party/ced + third_party/cld_3 + third_party/crc32c + third_party/cros_system_api + third_party/devscripts + third_party/dom_distiller_js + third_party/fips181 + third_party/flatbuffers + third_party/flot + third_party/freetype + third_party/glslang-angle + third_party/google_input_tools + third_party/google_input_tools/third_party/closure_library + third_party/google_input_tools/third_party/closure_library/third_party/closure + third_party/googletest + third_party/hunspell + third_party/iccjpeg + third_party/inspector_protocol + third_party/jinja2 + third_party/jstemplate + third_party/khronos + third_party/leveldatabase + third_party/libXNVCtrl + third_party/libaddressinput + third_party/libjingle + third_party/libphonenumber + third_party/libsecret + third_party/libsrtp + third_party/libudev + third_party/libwebm + third_party/libxml/chromium + third_party/libyuv + third_party/lss + third_party/lzma_sdk + third_party/markupsafe + third_party/mesa + third_party/metrics_proto + third_party/modp_b64 + third_party/mt19937ar + third_party/node + third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2 + third_party/openmax_dl + third_party/ots + third_party/pdfium + third_party/pdfium/third_party/agg23 + third_party/pdfium/third_party/base + third_party/pdfium/third_party/build + third_party/pdfium/third_party/bigint + third_party/pdfium/third_party/freetype + third_party/pdfium/third_party/lcms + third_party/pdfium/third_party/libopenjpeg20 + third_party/pdfium/third_party/libpng16 + third_party/pdfium/third_party/libtiff + third_party/ply + third_party/polymer + third_party/protobuf + third_party/protobuf/third_party/six + third_party/qcms + third_party/sfntly + third_party/skia + third_party/skia/third_party/gif + third_party/skia/third_party/vulkan + third_party/smhasher + third_party/spirv-headers + third_party/spirv-tools-angle + third_party/sqlite + third_party/swiftshader + third_party/swiftshader/third_party/llvm-subzero + third_party/swiftshader/third_party/subzero + third_party/usrsctp + third_party/vulkan + third_party/vulkan-validation-layers + third_party/web-animations-js + third_party/webdriver + third_party/webrtc + third_party/widevine + third_party/woff2 + third_party/zlib/google + url/third_party/mozilla + v8/src/third_party/valgrind + v8/third_party/inspector_protocol + + # gyp -> 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 +} + +bootstrap_gn() { + if tc-is-cross-compiler; then + local -x AR=${BUILD_AR} + local -x CC=${BUILD_CC} + local -x CXX=${BUILD_CXX} + local -x NM=${BUILD_NM} + local -x CFLAGS=${BUILD_CFLAGS} + local -x CXXFLAGS=${BUILD_CXXFLAGS} + local -x LDFLAGS=${BUILD_LDFLAGS} + fi + einfo "Building GN..." + set -- tools/gn/bootstrap/bootstrap.py -s -v --no-clean + echo "$@" + "$@" || die +} + +src_configure() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + local myconf_gn="" + + # 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 (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 + # 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+=" 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_gconf=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" + + if tc-is-clang; then + myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" + else + myconf_gn+=" is_clang=false" + fi + + # 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)" + 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 + 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 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" + + # 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 + + # Make sure the build system will use the right tools, bug #340795. + tc-export AR CC CXX NM + + # 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 + + # https://bugs.gentoo.org/588596 + append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks) + + # Bug 491582. + export TMPDIR="${WORKDIR}/temp" + mkdir -p -m 755 "${TMPDIR}" || die + + if ! use system-ffmpeg; 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 + + bootstrap_gn + + einfo "Configuring Chromium..." + set -- out/Release/gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release + echo "$@" + "$@" || die +} + +src_compile() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + # 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 + + # Work around circular dep issue + # https://chromium-review.googlesource.com/c/chromium/src/+/617768 + eninja -C out/Release gen/ui/accessibility/ax_enums.h + + # 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 +} + +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 + + if use widevine; then + # These will be provided by chrome-binary-plugins + rm out/Release/libwidevinecdm*.so || die + fi + + 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 22 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 + + readme.gentoo_create_doc +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postrm() { + gnome2_icon_cache_update + xdg_desktop_database_update +} + +pkg_postinst() { + gnome2_icon_cache_update + xdg_desktop_database_update + readme.gentoo_print_elog +} diff --git a/www-client/chromium/chromium-65.0.3294.5.ebuild b/www-client/chromium/chromium-65.0.3294.5.ebuild deleted file mode 100644 index 92ee58d2d8ea..000000000000 --- a/www-client/chromium/chromium-65.0.3294.5.ebuild +++ /dev/null @@ -1,676 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" -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 eutils gnome2-utils flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs versionator 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 ~arm ~arm64 ~x86" -IUSE="component-build cups gnome-keyring +hangouts kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" -RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" - -COMMON_DEPEND=" - app-arch/bzip2:= - cups? ( >=net-print/cups-1.3.11:= ) - dev-libs/expat:= - dev-libs/glib:2 - system-icu? ( >=dev-libs/icu-59:= ) - >=dev-libs/libxml2-2.9.4-r3:=[icu] - dev-libs/libxslt:= - dev-libs/nspr:= - >=dev-libs/nss-3.14.3:= - >=dev-libs/re2-0.2016.05.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-1.5.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-3:= - || ( - media-video/ffmpeg[-samba] - >=net-fs/samba-4.5.10-r1[-debug(-)] - ) - !=net-fs/samba-4.5.12 - 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} - !=www-client/chromium-9999 - !=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" && - has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" && - has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]" -} - -if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then - EBUILD_DEATH_HOOKS+=" chromium_pkg_die"; -fi - -DISABLE_AUTOFORMATTING="yes" -DOC_CONTENTS=" -Some web pages may require additional fonts to display properly. -Try installing some of the following packages if some characters -are not displayed properly: -- media-fonts/arphicfonts -- media-fonts/bitstream-cyberbit -- media-fonts/droid -- media-fonts/ipamonafont -- media-fonts/noto -- media-fonts/ja-ipafonts -- media-fonts/takao-fonts -- media-fonts/wqy-microhei -- media-fonts/wqy-zenhei - -To fix broken icons on the Downloads page, you should install an icon -theme that covers the appropriate MIME types, and configure this as your -GTK+ icon theme. -" - -PATCHES=( - "${FILESDIR}/chromium-widevine-r1.patch" - "${FILESDIR}/chromium-FORTIFY_SOURCE-r2.patch" - "${FILESDIR}/chromium-webrtc-r0.patch" - "${FILESDIR}/chromium-memcpy-r0.patch" - "${FILESDIR}/chromium-clang-r2.patch" -) - -pre_build_checks() { - if [[ ${MERGE_TYPE} != binary ]]; then - local -x CPP="$(tc-getCXX) -E" - tc-is-clang || die "Build currently fails with gcc, please use clang" - if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then - # bugs: #601654 - die "At least clang 3.9.1 is required" - fi - if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then - # bugs: #535730, #525374, #518668, #600288, #627356 - die "At least gcc 5.0 is required" - fi - fi - - # Check build requirements, bug #541816 and bug #471810 . - CHECKREQS_MEMORY="3G" - CHECKREQS_DISK_BUILD="5G" - eshopts_push -s extglob - if is-flagq '-g?(gdb)?([1-9])'; then - CHECKREQS_DISK_BUILD="25G" - if ! use component-build; then - CHECKREQS_MEMORY="16G" - fi - fi - eshopts_pop - check-reqs_pkg_setup -} - -pkg_pretend() { - pre_build_checks -} - -pkg_setup() { - pre_build_checks - - chromium_suid_sandbox_check_kernel_config -} - -src_prepare() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - default - - mkdir -p third_party/node/linux/node-linux-x64/bin || die - ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die - - local keeplibs=( - base/third_party/dmg_fp - base/third_party/dynamic_annotations - base/third_party/icu - base/third_party/nspr - base/third_party/superfasthash - base/third_party/symbolize - base/third_party/valgrind - base/third_party/xdg_mime - base/third_party/xdg_user_dirs - chrome/third_party/mozilla_security_manager - courgette/third_party - net/third_party/mozilla_security_manager - net/third_party/nss - third_party/WebKit - third_party/analytics - third_party/angle - third_party/angle/src/common/third_party/base - third_party/angle/src/common/third_party/smhasher - third_party/angle/src/third_party/compiler - third_party/angle/src/third_party/libXNVCtrl - third_party/angle/src/third_party/trace_event - third_party/blink - third_party/boringssl - third_party/boringssl/src/third_party/fiat - third_party/breakpad - third_party/breakpad/breakpad/src/third_party/curl - third_party/brotli - third_party/cacheinvalidation - third_party/catapult - third_party/catapult/common/py_vulcanize/third_party/rcssmin - third_party/catapult/common/py_vulcanize/third_party/rjsmin - third_party/catapult/third_party/polymer - third_party/catapult/tracing/third_party/d3 - third_party/catapult/tracing/third_party/gl-matrix - third_party/catapult/tracing/third_party/jszip - third_party/catapult/tracing/third_party/mannwhitneyu - third_party/catapult/tracing/third_party/oboe - third_party/catapult/tracing/third_party/pako - third_party/ced - third_party/cld_3 - third_party/crc32c - third_party/cros_system_api - third_party/devscripts - third_party/dom_distiller_js - third_party/fips181 - third_party/flatbuffers - third_party/flot - third_party/freetype - third_party/glslang-angle - third_party/google_input_tools - third_party/google_input_tools/third_party/closure_library - third_party/google_input_tools/third_party/closure_library/third_party/closure - third_party/googletest - third_party/hunspell - third_party/iccjpeg - third_party/inspector_protocol - third_party/jinja2 - third_party/jstemplate - third_party/khronos - third_party/leveldatabase - third_party/libXNVCtrl - third_party/libaddressinput - third_party/libaom - third_party/libaom/source/libaom/third_party/x86inc - third_party/libjingle - third_party/libphonenumber - third_party/libsecret - third_party/libsrtp - third_party/libudev - third_party/libwebm - third_party/libxml/chromium - third_party/libyuv - third_party/lss - third_party/lzma_sdk - third_party/markupsafe - third_party/mesa - third_party/metrics_proto - third_party/modp_b64 - third_party/mt19937ar - third_party/node - third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2 - third_party/openmax_dl - third_party/ots - third_party/pdfium - third_party/pdfium/third_party/agg23 - third_party/pdfium/third_party/base - third_party/pdfium/third_party/build - third_party/pdfium/third_party/bigint - third_party/pdfium/third_party/freetype - third_party/pdfium/third_party/lcms - third_party/pdfium/third_party/libopenjpeg20 - third_party/pdfium/third_party/libpng16 - third_party/pdfium/third_party/libtiff - third_party/ply - third_party/polymer - third_party/protobuf - third_party/protobuf/third_party/six - third_party/qcms - third_party/s2cellid - third_party/sfntly - third_party/skia - third_party/skia/third_party/gif - third_party/skia/third_party/vulkan - third_party/smhasher - third_party/spirv-headers - third_party/spirv-tools-angle - third_party/sqlite - third_party/swiftshader - third_party/swiftshader/third_party/llvm-subzero - third_party/swiftshader/third_party/subzero - third_party/usrsctp - third_party/vulkan - third_party/vulkan-validation-layers - third_party/web-animations-js - third_party/webdriver - third_party/webrtc - third_party/widevine - third_party/woff2 - third_party/zlib/google - url/third_party/mozilla - v8/src/third_party/valgrind - v8/src/third_party/utf8-decoder - v8/third_party/inspector_protocol - - # gyp -> 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 -} - -bootstrap_gn() { - if tc-is-cross-compiler; then - local -x AR=${BUILD_AR} - local -x CC=${BUILD_CC} - local -x CXX=${BUILD_CXX} - local -x NM=${BUILD_NM} - local -x CFLAGS=${BUILD_CFLAGS} - local -x CXXFLAGS=${BUILD_CXXFLAGS} - local -x LDFLAGS=${BUILD_LDFLAGS} - fi - einfo "Building GN..." - set -- tools/gn/bootstrap/bootstrap.py -s -v --no-clean - echo "$@" - "$@" || die -} - -src_configure() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - local myconf_gn="" - - # 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)" - - 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 (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 - # https://chromium.googlesource.com/chromium/src/+/4f1a60552748d150783655ee6f7b6f7084e3af95 - #fontconfig - # 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+=" 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_gconf=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" - - if tc-is-clang; then - myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" - else - myconf_gn+=" is_clang=false" - fi - - # 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)" - 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 - 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 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" - - # 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 - - # Make sure the build system will use the right tools, bug #340795. - tc-export AR CC CXX NM - - # 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 - - # https://bugs.gentoo.org/588596 - append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks) - - # Bug 491582. - export TMPDIR="${WORKDIR}/temp" - mkdir -p -m 755 "${TMPDIR}" || die - - if ! use system-ffmpeg; 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 - - bootstrap_gn - - einfo "Configuring Chromium..." - set -- out/Release/gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release - echo "$@" - "$@" || die -} - -src_compile() { - # Calling this here supports resumption via FEATURES=keepwork - python_setup - - # 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 - - # Work around circular dep issue - # https://chromium-review.googlesource.com/c/chromium/src/+/617768 - eninja -C out/Release gen/ui/accessibility/ax_enums.h - - # 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 -} - -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 - - if use widevine; then - # These will be provided by chrome-binary-plugins - rm out/Release/libwidevinecdm*.so || die - fi - - 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 - - insinto "${CHROMIUM_HOME}/swiftshader" - doins out/Release/swiftshader/*.so - - # Install icons and desktop entry. - local branding size - for size in 16 22 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 - - readme.gentoo_create_doc -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postrm() { - gnome2_icon_cache_update - xdg_desktop_database_update -} - -pkg_postinst() { - gnome2_icon_cache_update - xdg_desktop_database_update - readme.gentoo_print_elog -} diff --git a/www-client/chromium/chromium-65.0.3315.3.ebuild b/www-client/chromium/chromium-65.0.3315.3.ebuild new file mode 100644 index 000000000000..b8011501a833 --- /dev/null +++ b/www-client/chromium/chromium-65.0.3315.3.ebuild @@ -0,0 +1,682 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" +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 eutils gnome2-utils flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs versionator 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 ~arm ~arm64 ~x86" +IUSE="component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine" +RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )" + +COMMON_DEPEND=" + app-accessibility/at-spi2-atk:2 + app-arch/bzip2:= + cups? ( >=net-print/cups-1.3.11:= ) + dev-libs/atk + dev-libs/expat:= + dev-libs/glib:2 + system-icu? ( >=dev-libs/icu-59:= ) + >=dev-libs/libxml2-2.9.4-r3:=[icu] + dev-libs/libxslt:= + dev-libs/nspr:= + >=dev-libs/nss-3.26:= + >=dev-libs/re2-0.2016.05.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-1.6.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-3:= + || ( + media-video/ffmpeg[-samba] + >=net-fs/samba-4.5.10-r1[-debug(-)] + ) + !=net-fs/samba-4.5.12 + 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} + !=www-client/chromium-9999 + !=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" && + has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" && + has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]" +} + +if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then + EBUILD_DEATH_HOOKS+=" chromium_pkg_die"; +fi + +DISABLE_AUTOFORMATTING="yes" +DOC_CONTENTS=" +Some web pages may require additional fonts to display properly. +Try installing some of the following packages if some characters +are not displayed properly: +- media-fonts/arphicfonts +- media-fonts/bitstream-cyberbit +- media-fonts/droid +- media-fonts/ipamonafont +- media-fonts/noto +- media-fonts/ja-ipafonts +- media-fonts/takao-fonts +- media-fonts/wqy-microhei +- media-fonts/wqy-zenhei + +To fix broken icons on the Downloads page, you should install an icon +theme that covers the appropriate MIME types, and configure this as your +GTK+ icon theme. +" + +PATCHES=( + "${FILESDIR}/chromium-widevine-r1.patch" + "${FILESDIR}/chromium-FORTIFY_SOURCE-r2.patch" + "${FILESDIR}/chromium-webrtc-r0.patch" + "${FILESDIR}/chromium-memcpy-r0.patch" + "${FILESDIR}/chromium-clang-r2.patch" + "${FILESDIR}/chromium-gn-r0.patch" + "${FILESDIR}/chromium-vulkan-r0.patch" + "${FILESDIR}/chromium-gcc-r0.patch" +) + +pre_build_checks() { + if [[ ${MERGE_TYPE} != binary ]]; then + local -x CPP="$(tc-getCXX) -E" + if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then + # bugs: #601654 + die "At least clang 3.9.1 is required" + fi + if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then + # bugs: #535730, #525374, #518668, #600288, #627356 + die "At least gcc 5.0 is required" + fi + fi + + # Check build requirements, bug #541816 and bug #471810 . + CHECKREQS_MEMORY="3G" + CHECKREQS_DISK_BUILD="5G" + eshopts_push -s extglob + if is-flagq '-g?(gdb)?([1-9])'; then + CHECKREQS_DISK_BUILD="25G" + if ! use component-build; then + CHECKREQS_MEMORY="16G" + fi + fi + eshopts_pop + check-reqs_pkg_setup +} + +pkg_pretend() { + pre_build_checks +} + +pkg_setup() { + pre_build_checks + + chromium_suid_sandbox_check_kernel_config +} + +src_prepare() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + default + + mkdir -p third_party/node/linux/node-linux-x64/bin || die + ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die + + local keeplibs=( + base/third_party/dmg_fp + base/third_party/dynamic_annotations + base/third_party/icu + base/third_party/nspr + base/third_party/superfasthash + base/third_party/symbolize + base/third_party/valgrind + base/third_party/xdg_mime + base/third_party/xdg_user_dirs + chrome/third_party/mozilla_security_manager + courgette/third_party + net/third_party/mozilla_security_manager + net/third_party/nss + third_party/WebKit + third_party/analytics + third_party/angle + third_party/angle/src/common/third_party/base + third_party/angle/src/common/third_party/smhasher + third_party/angle/src/third_party/compiler + third_party/angle/src/third_party/libXNVCtrl + third_party/angle/src/third_party/trace_event + third_party/blink + third_party/boringssl + third_party/boringssl/src/third_party/fiat + third_party/breakpad + third_party/breakpad/breakpad/src/third_party/curl + third_party/brotli + third_party/cacheinvalidation + third_party/catapult + third_party/catapult/common/py_vulcanize/third_party/rcssmin + third_party/catapult/common/py_vulcanize/third_party/rjsmin + third_party/catapult/third_party/polymer + third_party/catapult/tracing/third_party/d3 + third_party/catapult/tracing/third_party/gl-matrix + third_party/catapult/tracing/third_party/jszip + third_party/catapult/tracing/third_party/mannwhitneyu + third_party/catapult/tracing/third_party/oboe + third_party/catapult/tracing/third_party/pako + third_party/ced + third_party/cld_3 + third_party/crc32c + third_party/cros_system_api + third_party/devscripts + third_party/dom_distiller_js + third_party/fips181 + third_party/flatbuffers + third_party/flot + third_party/freetype + third_party/glslang-angle + third_party/google_input_tools + third_party/google_input_tools/third_party/closure_library + third_party/google_input_tools/third_party/closure_library/third_party/closure + third_party/googletest + third_party/hunspell + third_party/iccjpeg + third_party/inspector_protocol + third_party/jinja2 + third_party/jstemplate + third_party/khronos + third_party/leveldatabase + third_party/libXNVCtrl + third_party/libaddressinput + third_party/libaom + third_party/libaom/source/libaom/third_party/x86inc + third_party/libjingle + third_party/libphonenumber + third_party/libsecret + third_party/libsrtp + third_party/libudev + third_party/libwebm + third_party/libxml/chromium + third_party/libyuv + third_party/lss + third_party/lzma_sdk + third_party/markupsafe + third_party/mesa + third_party/metrics_proto + third_party/modp_b64 + third_party/mt19937ar + third_party/node + third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2 + third_party/openmax_dl + third_party/ots + third_party/pdfium + third_party/pdfium/third_party/agg23 + third_party/pdfium/third_party/base + third_party/pdfium/third_party/build + third_party/pdfium/third_party/bigint + third_party/pdfium/third_party/freetype + third_party/pdfium/third_party/lcms + third_party/pdfium/third_party/libopenjpeg20 + third_party/pdfium/third_party/libpng16 + third_party/pdfium/third_party/libtiff + third_party/ply + third_party/polymer + third_party/protobuf + third_party/protobuf/third_party/six + third_party/qcms + third_party/s2cellid + third_party/sfntly + third_party/skia + third_party/skia/third_party/gif + third_party/skia/third_party/vulkan + third_party/smhasher + third_party/spirv-headers + third_party/spirv-tools-angle + third_party/sqlite + third_party/swiftshader + third_party/swiftshader/third_party/llvm-subzero + third_party/swiftshader/third_party/subzero + third_party/usrsctp + third_party/vulkan + third_party/vulkan-validation-layers + third_party/web-animations-js + third_party/webdriver + third_party/webrtc + third_party/widevine + third_party/woff2 + third_party/zlib/google + url/third_party/mozilla + v8/src/third_party/valgrind + v8/src/third_party/utf8-decoder + v8/third_party/inspector_protocol + + # gyp -> 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 +} + +bootstrap_gn() { + if tc-is-cross-compiler; then + local -x AR=${BUILD_AR} + local -x CC=${BUILD_CC} + local -x CXX=${BUILD_CXX} + local -x NM=${BUILD_NM} + local -x CFLAGS=${BUILD_CFLAGS} + local -x CXXFLAGS=${BUILD_CXXFLAGS} + local -x LDFLAGS=${BUILD_LDFLAGS} + fi + einfo "Building GN..." + set -- tools/gn/bootstrap/bootstrap.py -s -v --no-clean + echo "$@" + "$@" || die +} + +src_configure() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + local myconf_gn="" + + # 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+=" 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" + + if tc-is-clang; then + myconf_gn+=" is_clang=true clang_use_chrome_plugins=false" + else + myconf_gn+=" is_clang=false" + fi + + # 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)" + 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 + 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 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" + + # 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 + + # Make sure the build system will use the right tools, bug #340795. + tc-export AR CC CXX NM + + # 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 + + # https://bugs.gentoo.org/588596 + append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks) + + # Bug 491582. + export TMPDIR="${WORKDIR}/temp" + mkdir -p -m 755 "${TMPDIR}" || die + + if ! use system-ffmpeg; 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 + + bootstrap_gn + + einfo "Configuring Chromium..." + set -- out/Release/gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release + echo "$@" + "$@" || die +} + +src_compile() { + # Calling this here supports resumption via FEATURES=keepwork + python_setup + + # 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 + + # Work around circular dep issue + # https://chromium-review.googlesource.com/c/chromium/src/+/617768 + eninja -C out/Release gen/ui/accessibility/ax_enums.h + + # 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 +} + +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 + + if use widevine; then + # These will be provided by chrome-binary-plugins + rm out/Release/libwidevinecdm*.so || die + fi + + 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 + + insinto "${CHROMIUM_HOME}/swiftshader" + doins out/Release/swiftshader/*.so + + # Install icons and desktop entry. + local branding size + for size in 16 22 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 + + readme.gentoo_create_doc +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postrm() { + gnome2_icon_cache_update + xdg_desktop_database_update +} + +pkg_postinst() { + gnome2_icon_cache_update + xdg_desktop_database_update + readme.gentoo_print_elog +} diff --git a/www-client/chromium/files/chromium-gcc-r0.patch b/www-client/chromium/files/chromium-gcc-r0.patch new file mode 100644 index 000000000000..b0aaae8de558 --- /dev/null +++ b/www-client/chromium/files/chromium-gcc-r0.patch @@ -0,0 +1,55 @@ +From 353219b1d808a8980af93eff5412ec2863557e35 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz +Date: Wed, 10 Jan 2018 15:34:25 +0000 +Subject: [PATCH] GCC fixes: avoid symbol collision between Element::ComputedAccessibleNode and ComputedAccessibleNode. + +GCC at least fails to compile if the method has the same name of the class. To avoid +this we rename the getter method to be prefixed with Get. + +Change-Id: I7f7ac2ecf0947718f72e78ccef019c3239c9b921 +Reviewed-on: https://chromium-review.googlesource.com/857716 +Reviewed-by: Daniel Cheng +Reviewed-by: Hayato Ito +Commit-Queue: José Dapena Paz +Cr-Commit-Position: refs/heads/master@{#528322} +--- + +diff --git a/third_party/WebKit/Source/core/dom/Element.cpp b/third_party/WebKit/Source/core/dom/Element.cpp +index 4f50b7d..d0fa7b1 100644 +--- a/third_party/WebKit/Source/core/dom/Element.cpp ++++ b/third_party/WebKit/Source/core/dom/Element.cpp +@@ -1276,7 +1276,7 @@ + return rare_data.EnsureAccessibleNode(this); + } + +-ComputedAccessibleNode* Element::ComputedAccessibleNode() { ++ComputedAccessibleNode* Element::GetComputedAccessibleNode() { + if (!RuntimeEnabledFeatures::AccessibilityObjectModelEnabled()) + return nullptr; + +diff --git a/third_party/WebKit/Source/core/dom/Element.h b/third_party/WebKit/Source/core/dom/Element.h +index 733596b..986e31a 100644 +--- a/third_party/WebKit/Source/core/dom/Element.h ++++ b/third_party/WebKit/Source/core/dom/Element.h +@@ -295,7 +295,7 @@ + AccessibleNode* ExistingAccessibleNode() const; + AccessibleNode* accessibleNode(); + +- ComputedAccessibleNode* ComputedAccessibleNode(); ++ ComputedAccessibleNode* GetComputedAccessibleNode(); + + void DidMoveToNewDocument(Document&) override; + +diff --git a/third_party/WebKit/Source/core/frame/LocalDOMWindow.cpp b/third_party/WebKit/Source/core/frame/LocalDOMWindow.cpp +index 642f55f..f6a8d8e 100644 +--- a/third_party/WebKit/Source/core/frame/LocalDOMWindow.cpp ++++ b/third_party/WebKit/Source/core/frame/LocalDOMWindow.cpp +@@ -1110,7 +1110,7 @@ + Element* element) { + DCHECK(element); + ComputedAccessibleNode* computed_accessible_node = +- element->ComputedAccessibleNode(); ++ element->GetComputedAccessibleNode(); + return computed_accessible_node->ComputePromiseProperty(script_state); + } + diff --git a/www-client/chromium/files/chromium-gn-r0.patch b/www-client/chromium/files/chromium-gn-r0.patch new file mode 100644 index 000000000000..8f01e864ce5e --- /dev/null +++ b/www-client/chromium/files/chromium-gn-r0.patch @@ -0,0 +1,33 @@ +From 47b25a1f83f8166c6cd5cf1f13bf6dcce125511a Mon Sep 17 00:00:00 2001 +From: Tom Anderson +Date: Tue, 9 Jan 2018 15:23:14 -0800 +Subject: [PATCH] Fix gn bootstrap + +BUG=800553 +R=dpranke@chromium.org + +Change-Id: I5c1cfeb7542bf990c59451aabcae7c120cbf09c0 +Reviewed-on: https://chromium-review.googlesource.com/858276 +Reviewed-by: Dirk Pranke +Commit-Queue: Thomas Anderson +Cr-Commit-Position: refs/heads/master@{#528197} +--- + tools/gn/bootstrap/bootstrap.py | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py +index a0f32ad31df0..5376c6253a32 100755 +--- a/tools/gn/bootstrap/bootstrap.py ++++ b/tools/gn/bootstrap/bootstrap.py +@@ -178,6 +178,11 @@ def build_gn_with_ninja_manually(tempdir, options): + root_gen_dir = os.path.join(tempdir, 'gen') + mkdir_p(root_gen_dir) + ++ write_buildflag_header_manually( ++ root_gen_dir, ++ 'base/synchronization/synchronization_flags.h', ++ {'ENABLE_MUTEX_PRIORITY_INHERITANCE': 'false'}) ++ + write_buildflag_header_manually(root_gen_dir, 'base/allocator/features.h', + {'USE_ALLOCATOR_SHIM': 'true' if is_linux else 'false'}) + diff --git a/www-client/chromium/files/chromium-vulkan-r0.patch b/www-client/chromium/files/chromium-vulkan-r0.patch new file mode 100644 index 000000000000..4553bb766679 --- /dev/null +++ b/www-client/chromium/files/chromium-vulkan-r0.patch @@ -0,0 +1,120 @@ +From 949b4f07fd1ef5b208136fe38327c28c95f18928 Mon Sep 17 00:00:00 2001 +From: Jamie Madill +Date: Mon, 08 Jan 2018 11:15:38 -0500 +Subject: [PATCH] Vulkan: Allow for no .git directory in build. + +The SPIRV-Tools 'external revision generate' script is coded such that +it assumes a .git folder is present. This causes a problem for the +tarball build. We can fix this by using the same tooling we use for +ANGLE's commit id script to check if the .git directory is present +before running the generator. If it is missing, we insert a hard-coded +dummy header. Also use the 'DEPS' file as a placeholder for .git/HEAD +to check if the current revision needs updating. + +Bug: chromium:799620 +Bug: angleproject:2237 +Change-Id: Icea8e9c66f1600df7dca2aaa45fe449f687f5b55 +Reviewed-on: https://chromium-review.googlesource.com/854255 +Reviewed-by: Jamie Madill +Commit-Queue: Jamie Madill +--- + +diff --git a/third_party/angle/src/commit_id.py b/third_party/angle/src/commit_id.py +index bbdb810..57651a5 100644 +--- a/third_party/angle/src/commit_id.py ++++ b/third_party/angle/src/commit_id.py +@@ -23,6 +23,9 @@ + print("0") + sys.exit(0) + ++if len(sys.argv) < 4 or operation != 'gen': ++ sys.exit(usage) ++ + output_file = sys.argv[3] + commit_id_size = 12 + +diff --git a/third_party/angle/src/vulkan_support/BUILD.gn b/third_party/angle/src/vulkan_support/BUILD.gn +index fe61826..24f5a3a 100644 +--- a/third_party/angle/src/vulkan_support/BUILD.gn ++++ b/third_party/angle/src/vulkan_support/BUILD.gn +@@ -145,21 +145,40 @@ + } + } + +-# This could be generalized to a foreach if other revisions are added. +-action("spirv_tools_external_revision_generate") { +- script = "$vulkan_layers_dir/scripts/external_revision_generator.py" +- inputs = [ +- "$spirv_tools_dir/.git/HEAD", +- "$spirv_tools_dir/.git/index", +- ] +- outputs = [ +- "$vulkan_gen_dir/spirv_tools_commit_id.h", +- ] +- args = [ +- "$raw_spirv_tools_dir", +- "SPIRV_TOOLS_COMMIT_ID", +- "$raw_vulkan_gen_dir/spirv_tools_commit_id.h", +- ] ++spirv_git_is_present = exec_script("$angle_root/src/commit_id.py", ++ [ ++ "check", ++ raw_spirv_tools_dir, ++ ], ++ "value") ++ ++spirv_use_commit_id = spirv_git_is_present == 1 ++ ++if (spirv_use_commit_id) { ++ # This could be generalized to a foreach if other revisions are added. ++ action("spirv_tools_external_revision_generate") { ++ script = "$vulkan_layers_dir/scripts/external_revision_generator.py" ++ inputs = [ ++ "$angle_root/DEPS", ++ ] ++ outputs = [ ++ "$vulkan_gen_dir/spirv_tools_commit_id.h", ++ ] ++ args = [ ++ "$raw_spirv_tools_dir", ++ "SPIRV_TOOLS_COMMIT_ID", ++ "$raw_vulkan_gen_dir/spirv_tools_commit_id.h", ++ ] ++ } ++} else { ++ copy("spirv_tools_external_revision_generate") { ++ sources = [ ++ "dummy_spirv_tools_commit_id.h", ++ ] ++ outputs = [ ++ "$vulkan_gen_dir/spirv_tools_commit_id.h", ++ ] ++ } + } + + config("vulkan_generate_helper_files_config") { +@@ -864,7 +883,7 @@ + sources += [ "$vulkan_layers_dir/layers/VkLayer_$name.def" ] + } + if (is_linux) { +- ldflags = [ "-Wl,-Bsymbolic,--exclude-libs,ALL" ] ++ ldflags = [ "-Wl,-Bsymbolic,--exclude-libs,ALL" ] + } + } + } +diff --git a/third_party/angle/src/vulkan_support/dummy_spirv_tools_commit_id.h b/third_party/angle/src/vulkan_support/dummy_spirv_tools_commit_id.h +new file mode 100644 +index 0000000..e1793bd +--- /dev/null ++++ b/third_party/angle/src/vulkan_support/dummy_spirv_tools_commit_id.h +@@ -0,0 +1,10 @@ ++// ++// Copyright 2018 The ANGLE Project Authors. All rights reserved. ++// Use of this source code is governed by a BSD-style license that can be ++// found in the LICENSE file. ++// ++// This file is a dummy file to enable building SPIRV tools when git is absent. ++ ++#pragma once ++ ++#define SPIRV_TOOLS_COMMIT_ID "0000000000000000000000000000000000000000" diff --git a/www-client/google-chrome-beta/Manifest b/www-client/google-chrome-beta/Manifest index f197e7f49f12..22f63a390243 100644 --- a/www-client/google-chrome-beta/Manifest +++ b/www-client/google-chrome-beta/Manifest @@ -1,3 +1,3 @@ -DIST google-chrome-beta_64.0.3282.71-1_amd64.deb 52841228 BLAKE2B 109c2986bae1c419fbd262548b05ed1dc27d829becc2c2f3a8114ca58c6f1a876e7bd888d7e8e63e6e1214c556883d0481eb39e9bdb44ec28a763a84a8b73d03 SHA512 b5e8b6cfa95a98a19bf666d48abddc534bee7e40e04c0504a6d45c3aa09cf8709579508037d087fb9d6d96432041c73e67188153f7f90005ecd5a65d07c6dd5e -EBUILD google-chrome-beta-64.0.3282.71.ebuild 3593 BLAKE2B bc6a87fae269cce9f7fc44957ec4bf9b0d410204a1e3cc7774c4301ef5b804de042f69ac7e5e89adb3f64ee24fb320115f207317e1046bfcf2e8515ed7f6469c SHA512 c8267d0725d52f925bd923e172e2d73651112a5992e1716ae057cd021a39fc6d291f1c92e13ed19b807bfaa6696b9572699a5088e27c686001cdf9556f73802a +DIST google-chrome-beta_64.0.3282.85-1_amd64.deb 52867444 BLAKE2B 987842fb8b525ae3996ef9136bc4feb75b459ae959f21e6fe0fc8ad9267a7b479bac2a78621b9f76c445afa7f442debc35fb03142615efa9f970a48cd7687ec0 SHA512 39527aaf1f36df32bf461d2ddd3a3025ab5627aa7eb950be70eb3c73b60a2cf57b733b14b014ac10ab47c8514045c6d8b1c36b5c59e6425c4f54c65d5adaa0d5 +EBUILD google-chrome-beta-64.0.3282.85.ebuild 3593 BLAKE2B bc6a87fae269cce9f7fc44957ec4bf9b0d410204a1e3cc7774c4301ef5b804de042f69ac7e5e89adb3f64ee24fb320115f207317e1046bfcf2e8515ed7f6469c SHA512 c8267d0725d52f925bd923e172e2d73651112a5992e1716ae057cd021a39fc6d291f1c92e13ed19b807bfaa6696b9572699a5088e27c686001cdf9556f73802a MISC metadata.xml 517 BLAKE2B dfd840aa3f7845f67c8d6cca488d89845ca7c259eb4df00f8458ae48b1962df91ca8299ef34785f635dcab25b445246e999fbbfef3bdd7117a4ee1b14beca420 SHA512 837becd9e41aca24694cd10a7bddbc5ca501aca983832daccb4c091a7712267ef20051e7a19af02bc3b48eed89c9e18aa0d46ca2411e1d58d045ceb732a180af diff --git a/www-client/google-chrome-beta/google-chrome-beta-64.0.3282.71.ebuild b/www-client/google-chrome-beta/google-chrome-beta-64.0.3282.71.ebuild deleted file mode 100644 index de7c15f9a485..000000000000 --- a/www-client/google-chrome-beta/google-chrome-beta-64.0.3282.71.ebuild +++ /dev/null @@ -1,156 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="6" - -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 readme.gentoo-r1 chromium-2 eutils gnome2-utils pax-utils unpacker xdg-utils - -DESCRIPTION="The web browser from Google" -HOMEPAGE="https://www.google.com/chrome" - -if [[ ${PN} == google-chrome ]]; then - MY_PN=${PN}-stable -else - MY_PN=${PN} -fi - -MY_P="${MY_PN}_${PV}-1" - -SRC_URI="https://dl.google.com/linux/chrome/deb/pool/main/g/${MY_PN}/${MY_P}_amd64.deb" - -LICENSE="google-chrome" -SLOT="0" -KEYWORDS="-* ~amd64" -IUSE="+plugins" -RESTRICT="bindist mirror strip" - -DEPEND="" -RDEPEND=" - app-accessibility/at-spi2-atk:2 - app-arch/bzip2 - app-misc/ca-certificates - dev-libs/atk - dev-libs/expat - dev-libs/glib:2 - dev-libs/nspr - >=dev-libs/nss-3.26 - media-libs/alsa-lib - media-libs/fontconfig - media-libs/freetype:2 - net-print/cups - sys-apps/dbus - sys-libs/libcap - x11-libs/cairo - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - >=x11-libs/libX11-1.5.0 - x11-libs/libXcomposite - x11-libs/libXcursor - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXi - x11-libs/libXrandr - x11-libs/libXrender - x11-libs/libXScrnSaver - x11-libs/libXtst - x11-libs/libxcb - x11-libs/pango - x11-misc/xdg-utils -" - -QA_PREBUILT="*" -QA_DESKTOP_FILE="usr/share/applications/google-chrome.*\\.desktop" -S=${WORKDIR} -CHROME_HOME="opt/google/chrome${PN#google-chrome}" - -DISABLE_AUTOFORMATTING="yes" -DOC_CONTENTS=" -Some web pages may require additional fonts to display properly. -Try installing some of the following packages if some characters -are not displayed properly: -- media-fonts/arphicfonts -- media-fonts/bitstream-cyberbit -- media-fonts/droid -- media-fonts/ipamonafont -- media-fonts/ja-ipafonts -- media-fonts/takao-fonts -- media-fonts/wqy-microhei -- media-fonts/wqy-zenhei - -Depending on your desktop environment, you may need -to install additional packages to get icons on the Downloads page. - -For KDE, the required package is kde-frameworks/oxygen-icons. - -For other desktop environments, try one of the following: -- x11-themes/gnome-icon-theme -- x11-themes/tango-icon-theme - -Please notice the bundled flash player (PepperFlash). -You can (de)activate all flash plugins via chrome://plugins -" - -pkg_nofetch() { - eerror "Please wait 24 hours and sync your tree before reporting a bug for google-chrome fetch failures." -} - -pkg_pretend() { - # Protect against people using autounmask overzealously - use amd64 || die "google-chrome only works on amd64" -} - -pkg_setup() { - chromium_suid_sandbox_check_kernel_config -} - -src_unpack() { - : -} - -src_install() { - dodir / - cd "${ED}" || die - unpacker - - rm -r etc usr/share/menu || die - mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die - - pushd "${CHROME_HOME}/locales" > /dev/null || die - chromium_remove_language_paks - popd > /dev/null || die - - if use plugins ; then - local plugins="--extra-plugin-dir=/usr/$(get_libdir)/nsbrowser/plugins" - sed -e "/^exec/ i set -- \"${plugins}\" \"\$@\"" \ - -i "${CHROME_HOME}/${PN}" || die - fi - - local size - for size in 16 22 24 32 48 64 128 256 ; do - newicon -s ${size} "${CHROME_HOME}/product_logo_${size}_beta.png" ${PN}.png - done - - pax-mark m "${CHROME_HOME}/chrome" - - readme.gentoo_create_doc -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postrm() { - gnome2_icon_cache_update - xdg_desktop_database_update -} - -pkg_postinst() { - gnome2_icon_cache_update - xdg_desktop_database_update - readme.gentoo_print_elog -} diff --git a/www-client/google-chrome-beta/google-chrome-beta-64.0.3282.85.ebuild b/www-client/google-chrome-beta/google-chrome-beta-64.0.3282.85.ebuild new file mode 100644 index 000000000000..de7c15f9a485 --- /dev/null +++ b/www-client/google-chrome-beta/google-chrome-beta-64.0.3282.85.ebuild @@ -0,0 +1,156 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +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 readme.gentoo-r1 chromium-2 eutils gnome2-utils pax-utils unpacker xdg-utils + +DESCRIPTION="The web browser from Google" +HOMEPAGE="https://www.google.com/chrome" + +if [[ ${PN} == google-chrome ]]; then + MY_PN=${PN}-stable +else + MY_PN=${PN} +fi + +MY_P="${MY_PN}_${PV}-1" + +SRC_URI="https://dl.google.com/linux/chrome/deb/pool/main/g/${MY_PN}/${MY_P}_amd64.deb" + +LICENSE="google-chrome" +SLOT="0" +KEYWORDS="-* ~amd64" +IUSE="+plugins" +RESTRICT="bindist mirror strip" + +DEPEND="" +RDEPEND=" + app-accessibility/at-spi2-atk:2 + app-arch/bzip2 + app-misc/ca-certificates + dev-libs/atk + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + >=dev-libs/nss-3.26 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype:2 + net-print/cups + sys-apps/dbus + sys-libs/libcap + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + >=x11-libs/libX11-1.5.0 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXScrnSaver + x11-libs/libXtst + x11-libs/libxcb + x11-libs/pango + x11-misc/xdg-utils +" + +QA_PREBUILT="*" +QA_DESKTOP_FILE="usr/share/applications/google-chrome.*\\.desktop" +S=${WORKDIR} +CHROME_HOME="opt/google/chrome${PN#google-chrome}" + +DISABLE_AUTOFORMATTING="yes" +DOC_CONTENTS=" +Some web pages may require additional fonts to display properly. +Try installing some of the following packages if some characters +are not displayed properly: +- media-fonts/arphicfonts +- media-fonts/bitstream-cyberbit +- media-fonts/droid +- media-fonts/ipamonafont +- media-fonts/ja-ipafonts +- media-fonts/takao-fonts +- media-fonts/wqy-microhei +- media-fonts/wqy-zenhei + +Depending on your desktop environment, you may need +to install additional packages to get icons on the Downloads page. + +For KDE, the required package is kde-frameworks/oxygen-icons. + +For other desktop environments, try one of the following: +- x11-themes/gnome-icon-theme +- x11-themes/tango-icon-theme + +Please notice the bundled flash player (PepperFlash). +You can (de)activate all flash plugins via chrome://plugins +" + +pkg_nofetch() { + eerror "Please wait 24 hours and sync your tree before reporting a bug for google-chrome fetch failures." +} + +pkg_pretend() { + # Protect against people using autounmask overzealously + use amd64 || die "google-chrome only works on amd64" +} + +pkg_setup() { + chromium_suid_sandbox_check_kernel_config +} + +src_unpack() { + : +} + +src_install() { + dodir / + cd "${ED}" || die + unpacker + + rm -r etc usr/share/menu || die + mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die + + pushd "${CHROME_HOME}/locales" > /dev/null || die + chromium_remove_language_paks + popd > /dev/null || die + + if use plugins ; then + local plugins="--extra-plugin-dir=/usr/$(get_libdir)/nsbrowser/plugins" + sed -e "/^exec/ i set -- \"${plugins}\" \"\$@\"" \ + -i "${CHROME_HOME}/${PN}" || die + fi + + local size + for size in 16 22 24 32 48 64 128 256 ; do + newicon -s ${size} "${CHROME_HOME}/product_logo_${size}_beta.png" ${PN}.png + done + + pax-mark m "${CHROME_HOME}/chrome" + + readme.gentoo_create_doc +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postrm() { + gnome2_icon_cache_update + xdg_desktop_database_update +} + +pkg_postinst() { + gnome2_icon_cache_update + xdg_desktop_database_update + readme.gentoo_print_elog +} diff --git a/www-client/otter/Manifest b/www-client/otter/Manifest index 1f391012c960..dce54d04e767 100644 --- a/www-client/otter/Manifest +++ b/www-client/otter/Manifest @@ -1,4 +1,6 @@ DIST otter-0.9.91.tar.gz 4422341 BLAKE2B bdf1efbee982bbdd4890c6c45cc82c804066b9e2af67d8ace9da387cf9fabb591320880d5394de9fa7004fba0bebbc30d24fd0dcb9e3c5cdf8b00d0d467a8bca SHA512 d7a98c5a9ef8dc2cd134ca20885c4332f96ef5ebb31bee968d132ca6cc6f30786e382be42decd10e4b0d85f7ddd67fb6dd008ac130d4ba4cf5cbb7423ce9f63d +DIST otter-0.9.94.tar.gz 4585316 BLAKE2B 7fd450b1cb0102006680964fa9f858b5bed12094e076b4ab5a0cfdb9f790f5627b67d1521d2715919ff3d469b7c953680833e0f091be1320dade9cfc4ea844a4 SHA512 33943c145d40b9fed0afdfa90cf46d2604978347421ac39bfa7d1e9a90c61542fcd8899d039a4b68fc4e7cd6f9175ac9381966e3bc4a822d45ca70a66b6e9f95 EBUILD otter-0.9.91-r1.ebuild 1546 BLAKE2B d24608ab0196febb78fc30c83ef3d38812f08baedf912c0a23b36093bb04dc9e6c7451fb8b9829a689e4337d193ade1dbd4ed2e48a22c7992785c9a6fc000991 SHA512 f50badc13ee4d80046d9297eb517974e2fa10c06388692a45af3f449b8f15221c3c80f8a7eca833ed80480f1ab8e9f5d989bba8caf9f0f1de00f7e11396194d3 +EBUILD otter-0.9.94.ebuild 1546 BLAKE2B e65b7c8c6616a68c377eac9117167b3de7226be22aa74fe38814d952ec1419032e7836c4f83143697bf19f367861386af9e5ae4bb018c7c65c5e0ee1ad4a5509 SHA512 6a53e5efbd4a6c1fd3c4965b1db558e5a9ff755edaee6866de67fd50f206231b71f5e7c2ffe53c9412969da80cef97c37572219db18b89ebded681e43e853123 EBUILD otter-9999.ebuild 1439 BLAKE2B ce1243c228b0a16c7a36ac5fbddf427cb21ee4fc25365b46f9737961468032c73c9e6c320b580e7a773e3d84f24b325e3337a1fd0c397a78e530881f7e8205b6 SHA512 7c573c6345f86856cc963f75586d28ed4d00af58d927186155376c8cb0e910ecf5d1ba4c92e26b022013a25fbe804298045bc8af2434b41f29502648fa3b3fe8 MISC metadata.xml 320 BLAKE2B abca9b58563d140145b8fe8927675138d15746ce226d0e07e0a666f272019dcfcb1b34c806b503850e68df20c41d8e18e01d91b9621b87f80c0d99236cef0ced SHA512 54633afce956f33df7b286e0ff6c765f0a9e08b7a79d154d25b93ab6a5a38475b6b377d40f9456aa5dc245c23654933ddbb02bd5fca8fdf090350f83f48ff3c8 diff --git a/www-client/otter/otter-0.9.94.ebuild b/www-client/otter/otter-0.9.94.ebuild new file mode 100644 index 000000000000..ba2a9c83403d --- /dev/null +++ b/www-client/otter/otter-0.9.94.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit eutils cmake-utils gnome2-utils xdg-utils + +DESCRIPTION="Project aiming to recreate classic Opera (12.x) UI using Qt5" +HOMEPAGE="http://otter-browser.org/" +SRC_URI="https://github.com/OtterBrowser/${PN}-browser/archive/v${PV/_p/-dev}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc64 ~x86" +IUSE="spell" + +DEPEND=" + dev-qt/qtconcurrent:5 + dev-qt/qtcore:5 + dev-qt/qtdbus:5 + dev-qt/qtdeclarative:5 + dev-qt/qtgui:5 + dev-qt/qtmultimedia:5 + dev-qt/qtnetwork:5[ssl] + dev-qt/qtprintsupport:5 + dev-qt/qtscript:5 + dev-qt/qtsql:5 + dev-qt/qtsvg:5 + dev-qt/qtwebkit:5 + dev-qt/qtwidgets:5 + dev-qt/qtxmlpatterns:5 + spell? ( kde-frameworks/sonnet ) +" +RDEPEND=" + ${DEPEND} +" + +S=${WORKDIR}/${PN}-browser-${PV/_p/-dev} +DOCS=( CHANGELOG CONTRIBUTING.md TODO ) + +src_prepare() { + cmake-utils_src_prepare + + if [[ -n ${LINGUAS} ]]; then + local lingua + for lingua in resources/translations/*.qm; do + lingua=$(basename ${lingua}) + lingua=${lingua/otter-browser_/} + lingua=${lingua/.qm/} + if ! has ${lingua} ${LINGUAS}; then + rm resources/translations/otter-browser_${lingua}.qm || die + fi + done + fi + + if ! use spell; then + sed -i -e '/find_package(KF5Sonnet)/d' CMakeLists.txt || die + fi +} + +src_install() { + cmake-utils_src_install + domenu ${PN}-browser.desktop +} + +pkg_postinst() { + gnome2_icon_cache_update + xdg_desktop_database_update +} + +pkg_postrm() { + gnome2_icon_cache_update + xdg_desktop_database_update +} diff --git a/www-client/qutebrowser/Manifest b/www-client/qutebrowser/Manifest index ccf78de62d4f..844e41a89972 100644 --- a/www-client/qutebrowser/Manifest +++ b/www-client/qutebrowser/Manifest @@ -1,8 +1,6 @@ -DIST qutebrowser-1.0.2.tar.gz 3272237 BLAKE2B 24a1e81678e99a1bf4d3c444e4da91898caa5b1bce7176ae59a34583bf476a24446f9d34d83e4c939697405454bf866071d18756d32d6cafad255fc175dd333b SHA512 a2b548dd7577064000845e696b87d65e0d7452053741832036c6a89f5f3d1cf03a241e4c8c202c57bf87ecc843a7003dd3d5eb32169a32420345ff46e9cf3186 -DIST qutebrowser-1.0.3-1.tar.gz 3289802 BLAKE2B 80b9f3e2f7cf9fc96ccaab752cc311135788c69f6ba3ca750570c919846aab46b92e8742c6400c01283e6d33fdccda2d94c3b136890cb0cb0dfbab03686e4324 SHA512 66bd486ddeee7e1a81a30175d7703d47947d9cbfea62e229f6886665039d68ef34cffd78a3ae9535fe77fcbc298d5a0cab5357d37705f25b40f91d3fc05dbf4c DIST qutebrowser-1.0.4.tar.gz 3354132 BLAKE2B 272372eee5e59f4f53ab53b535bdc504176e9ae91181ea96063bac3be827bf681539bab52af0be5bc55da4663c4f5b83edc7aa99d54dccd848c3c7bd38b48759 SHA512 197188e1145dcd59089efe4162e471c4d947e84aff2b0dd30582e19d0045a442e81d388e154335e5cce62dd132d379353db932825dbd2cd041372cca795f3e77 -EBUILD qutebrowser-1.0.2.ebuild 2262 BLAKE2B 0a6ee485987e402eb1cc32ccc0cef6c9a52da9389dc6378e47ac74fe17d57550b0073fbff101fd5581716b85369327605c77bc0b1d047b82867ff18f6ff36876 SHA512 df7effaa910eb1c98e40dd5f55436ec76d3c6a1e153c860e77af69b38d2fc79e1e6308edbd410bd5d0560327397a9f030da3e41cff7cae80b1f7b5de21e56569 -EBUILD qutebrowser-1.0.3.ebuild 2007 BLAKE2B a64dbf0fe8234a91caf78c059dc88bb15c8dc655f143b52c06c13d3fbcf2a9b8f75c34a547bd67961d5192560b383dab63be8ab3c325160a8467f082700a847a SHA512 461efe93b386dec158e1b2d2db45e153f563993bbdaf4ed2d148d631bd1cf813843cceb76184493694c042a75a8c8a4636b5b33aab5a732e7e39c88e67b62c77 +DIST qutebrowser-1.1.0.tar.gz 3468120 BLAKE2B fbde2b6ae685c8d9f2ac9e15a6454f6015351d96bd0886dddfa3e58a1d54a6cedead58cea8dc0a7e95cc504771ad62c74145f547a0a778a4194c2d6b1650862b SHA512 6f14869c787c6140716c0686f9e3abfb44303dd3b04d9d0443c672065c1585c108d87f088ca7254926c077a916e891242ae53c36a2bb6028921462955d083571 EBUILD qutebrowser-1.0.4.ebuild 2005 BLAKE2B 03a01c10c1d39b85b98fd500a52ebdc62367f046bfafbae315827711f09501ccb9125f68124949844518ff3c1e8127a46742f70d4b02fc1e1f4ae4c6e4e248bd SHA512 51821081bdfc9a4650343c99fea14fdb7599f1691cd22014933a04303e92947aa73d9016531b21ca8a601374cd7a7b2a46c9bb18ca0841c9ac0915aef698d247 +EBUILD qutebrowser-1.1.0.ebuild 2005 BLAKE2B 330559c2ca17ccba51df27f172f9b304186cf895d5eae00b7e0b0876057377fd4aff859f7e72ae7b7fae1a81c00485be8511ff501973915bc1962914b3d60793 SHA512 b7de83ed4059748b04d6f65bdc1456f9c2211f1ba8e1a81f998b5bcf659ad7d790a1584c88ab811768b2862d257714f81164b9f10b5952855c818662475c0e36 EBUILD qutebrowser-9999.ebuild 2005 BLAKE2B 03a01c10c1d39b85b98fd500a52ebdc62367f046bfafbae315827711f09501ccb9125f68124949844518ff3c1e8127a46742f70d4b02fc1e1f4ae4c6e4e248bd SHA512 51821081bdfc9a4650343c99fea14fdb7599f1691cd22014933a04303e92947aa73d9016531b21ca8a601374cd7a7b2a46c9bb18ca0841c9ac0915aef698d247 MISC metadata.xml 445 BLAKE2B 11eed2c826838fbdf314c3c1a070bf152fd440891896e5adf6614c29685a4a4c4f5bf46e767de31ef7fbe3ee057ae752f12cfa078c5dda41860cf41708844d2e SHA512 441a63c005894a6527b1521de85b2a26ba107c79fd0663521250808381fe2264972049d14585f153ba3a81d026d715f604382c40489da72398d9eb0fbfd5a6ed diff --git a/www-client/qutebrowser/qutebrowser-1.0.2.ebuild b/www-client/qutebrowser/qutebrowser-1.0.2.ebuild deleted file mode 100644 index 68396ff73a44..000000000000 --- a/www-client/qutebrowser/qutebrowser-1.0.2.ebuild +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -PYTHON_COMPAT=( python{3_5,3_6} ) - -inherit distutils-r1 eutils gnome2-utils xdg-utils - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="https://github.com/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~x86" -fi - -DESCRIPTION="A keyboard-driven, vim-like browser based on PyQt5 and QtWebEngine" -HOMEPAGE="https://www.qutebrowser.org/ https://github.com/qutebrowser/qutebrowser" - -LICENSE="GPL-3" -SLOT="0" -IUSE="test" - -COMMON_DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" -DEPEND="${COMMON_DEPEND} - app-text/asciidoc - test? ( dev-python/pytest[${PYTHON_USEDEP}] )" -RDEPEND="${COMMON_DEPEND} - dev-python/attrs[${PYTHON_USEDEP}] - >=dev-python/jinja-2.8[${PYTHON_USEDEP}] - >=dev-python/pygments-2.1.3[${PYTHON_USEDEP}] - >=dev-python/pypeg2-2.15.2[${PYTHON_USEDEP}] - >=dev-python/PyQt5-5.7.1[${PYTHON_USEDEP},declarative,gui,network,opengl,printsupport,sql,webengine,widgets] - >=dev-python/pyyaml-3.12[${PYTHON_USEDEP}] -" - -if [[ ${PV} == "9999" ]] ; then - # Highlighting needed to create help files. Alternatively, - # scripts/asciidoc2html.py could be patched to optionally set - # '--attribute pygments' when calling asciidoc - DEPEND="${DEPEND} - dev-util/source-highlight" -fi - -# Tests restricted as the deplist (misc/requirements/requirements-tests.txt) -# isn't complete and X11 is required in order to start up qutebrowser. -RESTRICT="test" - -python_compile_all() { - if [[ ${PV} == "9999" ]]; then - "${PYTHON}" scripts/asciidoc2html.py || die "Failed generating docs" - fi - - a2x -f manpage doc/${PN}.1.asciidoc || die "Failed generating man page" -} - -python_test() { - py.test tests || die "Tests failed with ${EPYTHON}" -} - -python_install_all() { - doman doc/${PN}.1 - - domenu misc/${PN}.desktop - doicon -s scalable icons/${PN}.svg - - distutils-r1_python_install_all -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postinst() { - optfeature "PDF display support" www-plugins/pdfjs - xdg_desktop_database_update - xdg_mimeinfo_database_update - gnome2_icon_cache_update -} - -pkg_postrm() { - xdg_desktop_database_update - xdg_mimeinfo_database_update - gnome2_icon_cache_update -} diff --git a/www-client/qutebrowser/qutebrowser-1.0.3.ebuild b/www-client/qutebrowser/qutebrowser-1.0.3.ebuild deleted file mode 100644 index 389a61a8d828..000000000000 --- a/www-client/qutebrowser/qutebrowser-1.0.3.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -PYTHON_COMPAT=( python{3_5,3_6} ) - -inherit distutils-r1 eutils gnome2-utils xdg-utils - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="https://github.com/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}-1.tar.gz" - KEYWORDS="~amd64 ~x86" -fi - -DESCRIPTION="A keyboard-driven, vim-like browser based on PyQt5 and QtWebEngine" -HOMEPAGE="https://www.qutebrowser.org/ https://github.com/qutebrowser/qutebrowser" - -LICENSE="GPL-3" -SLOT="0" -IUSE="test" - -COMMON_DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" -DEPEND="${COMMON_DEPEND} - app-text/asciidoc - test? ( dev-python/pytest[${PYTHON_USEDEP}] )" -RDEPEND="${COMMON_DEPEND} - dev-python/attrs[${PYTHON_USEDEP}] - >=dev-python/jinja-2.8[${PYTHON_USEDEP}] - >=dev-python/pygments-2.1.3[${PYTHON_USEDEP}] - >=dev-python/pypeg2-2.15.2[${PYTHON_USEDEP}] - >=dev-python/PyQt5-5.7.1[${PYTHON_USEDEP},declarative,gui,network,opengl,printsupport,sql,webengine,widgets] - >=dev-python/pyyaml-3.12[${PYTHON_USEDEP}] -" - -# Tests restricted as the deplist (misc/requirements/requirements-tests.txt) -# isn't complete and X11 is required in order to start up qutebrowser. -RESTRICT="test" - -python_compile_all() { - if [[ ${PV} == "9999" ]]; then - "${PYTHON}" scripts/asciidoc2html.py || die "Failed generating docs" - fi - - a2x -f manpage doc/${PN}.1.asciidoc || die "Failed generating man page" -} - -python_test() { - py.test tests || die "Tests failed with ${EPYTHON}" -} - -python_install_all() { - doman doc/${PN}.1 - domenu misc/${PN}.desktop - doicon -s scalable icons/${PN}.svg - - distutils-r1_python_install_all -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postinst() { - optfeature "PDF display support" www-plugins/pdfjs - xdg_desktop_database_update - xdg_mimeinfo_database_update - gnome2_icon_cache_update -} - -pkg_postrm() { - xdg_desktop_database_update - xdg_mimeinfo_database_update - gnome2_icon_cache_update -} diff --git a/www-client/qutebrowser/qutebrowser-1.1.0.ebuild b/www-client/qutebrowser/qutebrowser-1.1.0.ebuild new file mode 100644 index 000000000000..e7535337c44e --- /dev/null +++ b/www-client/qutebrowser/qutebrowser-1.1.0.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python{3_5,3_6} ) + +inherit distutils-r1 eutils gnome2-utils xdg-utils + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://github.com/${PN}/${PN}.git" + inherit git-r3 +else + SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="A keyboard-driven, vim-like browser based on PyQt5 and QtWebEngine" +HOMEPAGE="https://www.qutebrowser.org/ https://github.com/qutebrowser/qutebrowser" + +LICENSE="GPL-3" +SLOT="0" +IUSE="test" + +COMMON_DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +DEPEND="${COMMON_DEPEND} + app-text/asciidoc + test? ( dev-python/pytest[${PYTHON_USEDEP}] )" +RDEPEND="${COMMON_DEPEND} + dev-python/attrs[${PYTHON_USEDEP}] + >=dev-python/jinja-2.8[${PYTHON_USEDEP}] + >=dev-python/pygments-2.1.3[${PYTHON_USEDEP}] + >=dev-python/pypeg2-2.15.2[${PYTHON_USEDEP}] + >=dev-python/PyQt5-5.7.1[${PYTHON_USEDEP},declarative,gui,network,opengl,printsupport,sql,webengine,widgets] + >=dev-python/pyyaml-3.12[${PYTHON_USEDEP}] +" + +# Tests restricted as the deplist (misc/requirements/requirements-tests.txt) +# isn't complete and X11 is required in order to start up qutebrowser. +RESTRICT="test" + +python_compile_all() { + if [[ ${PV} == "9999" ]]; then + "${PYTHON}" scripts/asciidoc2html.py || die "Failed generating docs" + fi + + a2x -f manpage doc/${PN}.1.asciidoc || die "Failed generating man page" +} + +python_test() { + py.test tests || die "Tests failed with ${EPYTHON}" +} + +python_install_all() { + doman doc/${PN}.1 + domenu misc/${PN}.desktop + doicon -s scalable icons/${PN}.svg + + distutils-r1_python_install_all +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + optfeature "PDF display support" www-plugins/pdfjs + xdg_desktop_database_update + xdg_mimeinfo_database_update + gnome2_icon_cache_update +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_mimeinfo_database_update + gnome2_icon_cache_update +} diff --git a/www-client/w3m/Manifest b/www-client/w3m/Manifest index 453982207611..aa9119ccc746 100644 --- a/www-client/w3m/Manifest +++ b/www-client/w3m/Manifest @@ -2,5 +2,5 @@ AUX w3m-0.5.3-fix-missing-time.patch 308 BLAKE2B a9df10a5d61c43d2f02817588aeba17 AUX w3m-0.5.3-underlinking.patch 790 BLAKE2B 8739298c6773395d1f240ab23a09333922f0a37098a6a23dfddfb4a48ce4d46bf6ae1c8262e0ce4ad395a3d71d5e275b3c78038a284b229b3e8e405607c4983f SHA512 a9848610fbaf124453dc77640617785f5a3b3eb3f3c761cf0e29ea26c9481156339ef6d9efa4977d8dc0b28696bda8b5a2bef87150f86a0f516fa93e4efa2ee8 AUX w3m.mailcap 44 BLAKE2B ae8bde48a638a61bcac9c6b3a0e001666e0c17a3e6fff2d2b4da870fde8a5fc0eb8314d9b818399ae502209a2fa4fbdf4bfb07e56e29a275cb2133656da52dfc SHA512 a66ef535a62f593910c1c99865363e7fc8af1815d24f2ccda86a72c0b777ff388100677f0e14e6f57a6786fdbde62cfc3fea554e659d54663f44cfba3e5c67d2 DIST w3m-0.5.3.git20161120.tar.gz 2177917 BLAKE2B 48e7d9fee00431d65e4ae486d1cf5a376542fb0655215d95455d6f0e3ba63a6dfb243a858e0bb5e745ac75713091b17fa5c5a63c91a3e837c911ef1f576ce497 SHA512 81ecf9e5d9067a82efa5464e5f9396327a6333f9e414458a972b2b7bff138bd17c490b5258e34cb1e338c7a6c0dd6105a1bfd1e0d02edfadead79caa39106a5c -EBUILD w3m-0.5.3-r9.ebuild 3217 BLAKE2B 383177eb681ef2fa13e2df70804a43f9638997f2b97216f5247b48fda90436f00e97eba06ba6b1b4ff45b7e209cb0511ad993657656199117c731e44acf4a774 SHA512 ffec9bd251b7b8fc6d5b32435beaca4200ffa9051cc2fbf1573270dba8a394ebeaac7ffde3ea61d7a7cfda6ec2f15cf0ea992f8d7560a1e00a0a04cf1e7366a7 +EBUILD w3m-0.5.3-r9.ebuild 3219 BLAKE2B d7877ab94c11f4011e5a3734b253a12fd259a34c8ab173458236026c10114398eba0fc908d1e6ac6bd3c054213b8433df4d53b72b547de8c7d2c2fb18f3c2f18 SHA512 f159b03a9c50276b4f90bd3655d108cbd49d8f6f67c7445261e1511d14c6c5ac15cd132221fa436fde13c913a15e00a5992933bd378c7a54a01021be692bfd4b MISC metadata.xml 439 BLAKE2B 07628d4420012e2d592a6e53a530aba00b8659dcfa5fb440b0ad4ef42013608842d6bf9ef7f7253e4d05da73e1f1390afccf2e7f559bea1a544841b0864b04f4 SHA512 a51eb2e908d9f231b0817f237bb40e42e9e39c0a9f07dc8e7ffbd054ba3ae3a8b6b1a4c443eeef0b28a13008134a20764e6d3234df9215f35f0359fefb8dc67b diff --git a/www-client/w3m/w3m-0.5.3-r9.ebuild b/www-client/w3m/w3m-0.5.3-r9.ebuild index cb8054271746..9fef12101d50 100644 --- a/www-client/w3m/w3m-0.5.3-r9.ebuild +++ b/www-client/w3m/w3m-0.5.3-r9.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -20,7 +20,7 @@ IUSE="X fbcon gpm gtk imlib libressl lynxkeymap nls nntp ssl unicode xface l10n_ # allow us to build w/o X, so we have to give up framebuffer w3mimg.... RDEPEND=">=sys-libs/ncurses-5.2-r3:0= >=sys-libs/zlib-1.1.3-r2 - >=dev-libs/boehm-gc-6.2 + >=dev-libs/boehm-gc-6.2:= X? ( x11-libs/libXext x11-libs/libXdmcp ) gtk? ( x11-libs/gdk-pixbuf ) !gtk? ( imlib? ( >=media-libs/imlib2-1.1.0[X] ) ) -- cgit v1.2.3