www-plugins/adobe-flash: Version bump (bug #561076).
authorJeroen Roovers <jer@gentoo.org>
Wed, 23 Sep 2015 04:30:48 +0000 (06:30 +0200)
committerJeroen Roovers <jer@gentoo.org>
Wed, 23 Sep 2015 04:30:48 +0000 (06:30 +0200)
Package-Manager: portage-2.2.20.1

www-plugins/adobe-flash/Manifest
www-plugins/adobe-flash/adobe-flash-11.2.202.521.ebuild [new file with mode: 0644]

index 0f6e9d16934e26887ad6342702a447147683b5c4..e2b718be011f05d05a99d7bb44b2791c114cc12e 100644 (file)
@@ -1,3 +1,6 @@
 DIST adobe-flash-11.2.202.508-debug.i386.tar.gz 7427656 SHA256 f5f2e714d7023133bcb90cd88c941089a60331bb37ce4e9d82a83a0af738c4bb SHA512 9a94eaf9274f268467d9233667f86083001581dad3e4701aaefdbaa977d65e613d4e50443a5a7b5a5abe3fa679f843c2b346db9e43ed8aa3f8c529c76164e945 WHIRLPOOL fa0e0686e1d21916d8084a5476f47812bac7fe5c9e740022ca7ae032d451859a5968fbf1219ab3f1cabf2f521a3542bbc0820d396f7007a812185d5a77f2cff1
 DIST adobe-flash-11.2.202.508.i386.tar.gz 6947080 SHA256 2a263957676a1d5f3f7ff28fc119e41bc24c6187fc948759d890554f465c0391 SHA512 702fc60b786671b408cd58a743a9feab8af49458ed7465bd55b908fb2ccb9ae9d4f86249a065c2865e3b2e4510b3e5ec04e87db399f5ca868f2ed93bc6b59db0 WHIRLPOOL 5ec2907c0b3dcf00ee11049a989df5088108eaee7a6c357ab2caba4f1e5ecefdc1503044585726d99ca70345d1397c45b2652e3964e6dce6c165b2e7107a710f
 DIST adobe-flash-11.2.202.508.x86_64.tar.gz 7266504 SHA256 e5bcd57d4d453c56da8c46fc738de79ebfb3bd9461f25439eb97a46f770003c4 SHA512 75ef86f769ee28599a305ed5ada05261050eaf896fd4e86cdc6d0a879444bbbe20ba2139cfb258f477f656fdac485e2b80dadefdbd4f91579370f329aff7929c WHIRLPOOL fec28a4895bd2d7b8c542cd609f6686192901b8dbdd3c276014fdda2f9a7c174bdcaf2982dd9532363eb5a29650d3b6f16b7ec2f3696600d967089d7c3697877
+DIST adobe-flash-11.2.202.521-debug.i386.tar.gz 7429513 SHA256 c0d8ec7e6b450f2cefe18a4c202d6c6b77446b78fa1485fc711b176398d230a2 SHA512 b87d697ccb8c561b16d33f013483f4c2cfdb253dc9cbddbf479c1dc25b63b20b604617dfc53a39d63eaa3821c7e6ea19272b23de019e03dbffe2dcb24af406fc WHIRLPOOL 800caa1cfbab03ce043cb15118fe02897cbe92a9baa9f8e64c90eb0f37cd34c2ca22c932c18f2d34db06b0db311393ad5fa51cd6f852d0b3123013adf694960b
+DIST adobe-flash-11.2.202.521.i386.tar.gz 6949779 SHA256 628fab20b9592b2be903d40d42507d09ade2064aa44be59313eb60d2ac10a129 SHA512 aa5e34e670003763da0595f0e16f003e77ec983f65e595ea9a1264a9e4f7607d1c3735c117c4468938146733f3bd6a8cbec735251ddde9937e9896e98b78089c WHIRLPOOL 565a41bea61d8546893d093325dd1f0f72f1f18a89134e36341d312939ca36012afeba1aec6eb4fe91d160d4b3ddd3f51a9d7a1e57acbfc5c6d2ab6efb0dcb8a
+DIST adobe-flash-11.2.202.521.x86_64.tar.gz 7264084 SHA256 2dee7fa213d5dfc8cce497736144f271ef2393e9e164595ef03b1f2fafaa93b9 SHA512 e0b618a1979f679c211c2a94e7a324da594d964e6f2b5f07d9630ac81ee035ee910335039f57f7f6a201d343fa544665bce96ea92bab5a0a18f460dd0ee76a7d WHIRLPOOL 41f7b59404b3409500fa175b69ecf7debab144b79c2f80c56e8d75b26617f4ae432315c83d7eafaa2107e0c8d36c3739669e01898ec3274cc37ba404c83cbb79
diff --git a/www-plugins/adobe-flash/adobe-flash-11.2.202.521.ebuild b/www-plugins/adobe-flash/adobe-flash-11.2.202.521.ebuild
new file mode 100644 (file)
index 0000000..162eb06
--- /dev/null
@@ -0,0 +1,234 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit nsplugins toolchain-funcs versionator multilib multilib-minimal
+
+DESCRIPTION="Adobe Flash Player"
+HOMEPAGE="
+       http://www.adobe.com/products/flashplayer.html
+       http://get.adobe.com/flashplayer/
+"
+
+AF_URI="http://fpdownload.macromedia.com/get/flashplayer/pdc"
+AF_DB_URI="http://fpdownload.macromedia.com/pub/flashplayer/updaters"
+PV_M=$(get_major_version)
+AF_32_URI="${AF_URI}/${PV}/install_flash_player_${PV_M}_linux.i386.tar.gz -> ${P}.i386.tar.gz"
+AF_64_URI="${AF_URI}/${PV}/install_flash_player_${PV_M}_linux.x86_64.tar.gz -> ${P}.x86_64.tar.gz"
+AF_32_DB_URI="${AF_DB_URI}/${PV_M}/flashplayer_${PV_M}_plugin_debug.i386.tar.gz -> ${P}-debug.i386.tar.gz"
+
+SRC_URI="
+       abi_x86_32? (
+               !debug? ( ${AF_32_URI} )
+               debug? ( ${AF_32_DB_URI} )
+       )
+       abi_x86_64? ( ${AF_64_URI} )
+"
+IUSE="debug kde selinux cpu_flags_x86_sse2"
+REQUIRED_USE="
+       cpu_flags_x86_sse2
+       debug? ( abi_x86_32 )
+       || ( abi_x86_64 abi_x86_32 )
+"
+SLOT="0"
+
+KEYWORDS="-* ~amd64 ~x86"
+LICENSE="AdobeFlash-11.x"
+RESTRICT="strip mirror"
+
+S="${WORKDIR}"
+
+NATIVE_DEPS="
+       dev-libs/atk
+       dev-libs/glib:2
+       dev-libs/nspr
+       dev-libs/nss
+       kde? (
+               dev-qt/qtcore:4
+               dev-qt/qtdbus:4
+               dev-qt/qtgui:4
+               dev-qt/qtsvg:4
+               kde-base/kdelibs
+               x11-libs/libICE
+               x11-libs/libSM
+               x11-libs/libXau
+               x11-libs/libXdmcp
+               x11-libs/libXext
+               x11-libs/libXft
+               x11-libs/libXpm
+       )
+       media-libs/fontconfig
+       media-libs/freetype
+       >=sys-libs/glibc-2.4
+       x11-libs/cairo
+       x11-libs/gdk-pixbuf
+       x11-libs/gtk+:2
+       x11-libs/libX11
+       x11-libs/libXcursor
+       x11-libs/libXext
+       x11-libs/libXrender
+       x11-libs/libXt
+       x11-libs/pango
+"
+
+DEPEND="
+       amd64? ( abi_x86_32? ( !abi_x86_64? ( www-plugins/nspluginwrapper ) ) )
+"
+RDEPEND="
+       ${DEPEND}
+       abi_x86_64? ( ${NATIVE_DEPS} )
+       abi_x86_32? (
+               amd64? (
+                       >=dev-libs/atk-2.10.0[abi_x86_32(-)]
+                       >=dev-libs/glib-2.34.3:2[abi_x86_32(-)]
+                       >=dev-libs/nspr-4.10.4[abi_x86_32(-)]
+                       >=dev-libs/nss-3.15.4[abi_x86_32(-)]
+                       >=media-libs/fontconfig-2.10.92[abi_x86_32(-)]
+                       >=media-libs/freetype-2.5.0.1[abi_x86_32(-)]
+                       >=x11-libs/cairo-1.12.14-r4[abi_x86_32(-)]
+                       >=x11-libs/gdk-pixbuf-2.30.7[abi_x86_32(-)]
+                       >=x11-libs/gtk+-2.24.23:2[abi_x86_32(-)]
+                       >=x11-libs/libX11-1.6.2[abi_x86_32(-)]
+                       >=x11-libs/libXcursor-1.1.14[abi_x86_32(-)]
+                       >=x11-libs/libXext-1.3.2[abi_x86_32(-)]
+                       >=x11-libs/libXrender-0.9.8[abi_x86_32(-)]
+                       >=x11-libs/libXt-1.1.4[abi_x86_32(-)]
+                       >=x11-libs/pango-1.36.3[abi_x86_32(-)]
+               )
+               x86? ( ${NATIVE_DEPS} )
+       )
+       || ( media-fonts/liberation-fonts media-fonts/corefonts )
+       selinux? ( sec-policy/selinux-flash )
+"
+
+# Ignore QA warnings in these closed-source binaries, since we can't fix them:
+QA_PREBUILT="usr/*"
+
+any_cpu_missing_flag() {
+       local value=${1}
+       grep '^flags' /proc/cpuinfo | grep -qv "${value}"
+}
+
+pkg_setup() {
+       unset need_lahf_wrapper
+       if use abi_x86_64 && any_cpu_missing_flag 'lahf_lm'; then
+               export need_lahf_wrapper=1
+       fi
+}
+
+src_unpack() {
+       local files=( ${A} )
+
+       multilib_src_unpack() {
+               mkdir -p "${BUILD_DIR}" || die
+               cd "${BUILD_DIR}" || die
+
+               # we need to filter out the other archive(s)
+               local other_abi
+               [[ ${ABI} == amd64 ]] && other_abi=i386 || other_abi=x86_64
+               unpack ${files[@]//*${other_abi}*/}
+       }
+
+       multilib_parallel_foreach_abi multilib_src_unpack
+}
+
+src_configure() { :; }
+
+multilib_src_compile() {
+       if [[ ${ABI} == amd64 && ${need_lahf_wrapper} ]]; then
+               # This experimental wrapper, from Maks Verver via bug #268336 should
+               # emulate the missing lahf instruction affected platforms.
+               set -- $(tc-getCC) -fPIC -shared -nostdlib -lc \
+                       -oflashplugin-lahf-fix.so  "${FILESDIR}/flashplugin-lahf-fix.c"
+               echo "${@}" >&2
+               "${@}" || die "Compile of flashplugin-lahf-fix.so failed"
+       fi
+}
+
+multilib_src_install() {
+       # PLUGINS_DIR comes from nsplugins.eclass
+       exeinto /usr/$(get_libdir)/${PLUGINS_DIR}
+       doexe libflashplayer.so
+
+       if [[ ${ABI} == amd64 && ${need_lahf_wrapper} ]]; then
+               # This experimental wrapper, from Maks Verver via bug #268336 should
+               # emulate the missing lahf instruction affected platforms.
+               doexe flashplugin-lahf-fix.so
+       fi
+
+       if multilib_is_native_abi; then
+               if use kde; then
+                       local pkglibdir=lib
+                       [[ -d usr/lib64 ]] && pkglibdir=lib64
+
+                       exeinto /usr/$(get_libdir)/kde4
+                       doexe usr/${pkglibdir}/kde4/kcm_adobe_flash_player.so
+                       insinto /usr/share/kde4/services
+                       doins usr/share/kde4/services/kcm_adobe_flash_player.desktop
+               else
+                       # No KDE applet, so allow the GTK utility to show up in KDE:
+                       sed -i usr/share/applications/flash-player-properties.desktop \
+                               -e "/^NotShowIn=KDE;/d" || die "sed of .desktop file failed"
+               fi
+
+               # The userland 'flash-player-properties' standalone app:
+               dobin usr/bin/flash-player-properties
+
+               # Icon and .desktop for 'flash-player-properties'
+               insinto /usr/share
+               doins -r usr/share/{icons,applications}
+               dosym ../icons/hicolor/48x48/apps/flash-player-properties.png \
+                       /usr/share/pixmaps/flash-player-properties.png
+       fi
+
+       # The magic config file!
+       insinto "/etc/adobe"
+       doins "${FILESDIR}/mms.cfg"
+}
+
+unregister_pluginwrapper() {
+       # TODO: Perhaps parse the output of 'nspluginwrapper -l'
+       # TODO: However, the 64b flash plugin makes
+       # TODO: 'nspluginwrapper -l' segfault.
+       local FLASH_WRAPPER="${ROOT}/usr/lib64/${PLUGINS_DIR}/npwrapper.libflashplayer.so"
+       if has_version 'www-plugins/nspluginwrapper' && [[ -f ${FLASH_WRAPPER} ]]; then
+               einfo "Removing 32-bit plugin wrapper"
+               nspluginwrapper -r "${FLASH_WRAPPER}"
+       fi
+}
+
+pkg_postinst() {
+       if use amd64 ; then
+               if [[ ${need_lahf_wrapper} ]]; then
+                       ewarn "Your processor does not support the 'lahf' instruction which is used"
+                       ewarn "by Adobe's 64-bit flash binary. We have installed a wrapper which"
+                       ewarn "should allow this plugin to run. If you encounter problems, please"
+                       ewarn "adjust your USE flags to install only the 32-bit version and reinstall:"
+                       ewarn " ${CATEGORY}/${PN}[abi_x86_32,-abi_x86_64]"
+                       elog
+               fi
+               # needed to clean up upgrades from older installs
+               if use abi_x86_64 && [[ -n ${REPLACING_VERSIONS} ]]; then
+                       unregister_pluginwrapper
+               fi
+               if has_version 'www-plugins/nspluginwrapper'; then
+                       if use abi_x86_32 && ! use abi_x86_64; then
+                               einfo "nspluginwrapper detected: Installing plugin wrapper"
+                               local oldabi="${ABI}"
+                               ABI="x86"
+                               local FLASH_SOURCE="${ROOT}/usr/lib32/${PLUGINS_DIR}/libflashplayer.so"
+                               nspluginwrapper -i "${FLASH_SOURCE}"
+                               ABI="${oldabi}"
+                       fi
+               elif use abi_x86_32; then
+                       elog "To use the 32-bit flash player in a native 64-bit browser,"
+                       elog "you must install www-plugins/nspluginwrapper"
+               fi
+       fi
+}
+
+pkg_prerm() {
+       use amd64 && use abi_x86_32 && ! use abi_x86_64 && \
+               unregister_pluginwrapper
+}