summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Ramsay <lack@gentoo.org>2010-12-01 13:51:02 +0000
committerJim Ramsay <lack@gentoo.org>2010-12-01 13:51:02 +0000
commit5043aad1eec6e4b58dfcefbadd11e0bf0008fc31 (patch)
treefc13e9f1a5b606dc1dbccf378a97e22c33ab9d91 /www-plugins
parentnew license for openproj-bin (diff)
downloadgentoo-2-5043aad1eec6e4b58dfcefbadd11e0bf0008fc31.tar.gz
gentoo-2-5043aad1eec6e4b58dfcefbadd11e0bf0008fc31.tar.bz2
gentoo-2-5043aad1eec6e4b58dfcefbadd11e0bf0008fc31.zip
Next prerelease is released (Bug #347363)
(Portage version: 2.1.9.14/cvs/Linux i686)
Diffstat (limited to 'www-plugins')
-rw-r--r--www-plugins/adobe-flash/ChangeLog12
-rw-r--r--www-plugins/adobe-flash/adobe-flash-10.2.161.23_pre20101117.ebuild199
2 files changed, 210 insertions, 1 deletions
diff --git a/www-plugins/adobe-flash/ChangeLog b/www-plugins/adobe-flash/ChangeLog
index ff5b87b67adf..71c2329b8928 100644
--- a/www-plugins/adobe-flash/ChangeLog
+++ b/www-plugins/adobe-flash/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for www-plugins/adobe-flash
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-plugins/adobe-flash/ChangeLog,v 1.58 2010/11/15 18:16:35 lack Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-plugins/adobe-flash/ChangeLog,v 1.59 2010/12/01 13:51:02 lack Exp $
+
+*adobe-flash-10.2.161.23_pre20101117 (01 Dec 2010)
+
+ 01 Dec 2010; Jim Ramsay <lack@gentoo.org>
+ +adobe-flash-10.2.161.23_pre20101117.ebuild:
+ Next prerelease is ready (11-17-2010). Unfortunately Adobe has split up
+ the versions so the 32-bit version is actually internally versioned as
+ 10.2.151.49 (went down) while the 64-bit version is now 10.3.162.29 (went
+ way up). So I'm keeping the ebulid version number the same (10.2.161.23)
+ and just bumping the prerelease version number for this one.
*adobe-flash-9.0.289.0 (15 Nov 2010)
diff --git a/www-plugins/adobe-flash/adobe-flash-10.2.161.23_pre20101117.ebuild b/www-plugins/adobe-flash/adobe-flash-10.2.161.23_pre20101117.ebuild
new file mode 100644
index 000000000000..f24b811b34f9
--- /dev/null
+++ b/www-plugins/adobe-flash/adobe-flash-10.2.161.23_pre20101117.ebuild
@@ -0,0 +1,199 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-plugins/adobe-flash/adobe-flash-10.2.161.23_pre20101117.ebuild,v 1.1 2010/12/01 13:51:02 lack Exp $
+
+EAPI=3
+inherit nsplugins multilib toolchain-funcs versionator
+
+# Specal version parsing for date-based 'square' releases
+# For proper date ordering in the ebuild we are using preCCYYMMDD whereas Adobe
+# uses MMDDYY
+EBUILD_DATE=$(get_version_component_range $(get_version_component_count))
+DATE_SUFFIX=${EBUILD_DATE: -4}${EBUILD_DATE:5:2}
+MY_32B_URI="http://download.macromedia.com/pub/labs/flashplayer10/flashplayer10_2_p2_32bit_linux_${DATE_SUFFIX}.tar.gz"
+MY_64B_URI="http://download.macromedia.com/pub/labs/flashplayer10/flashplayer10_2_p3_64bit_linux_${DATE_SUFFIX}.tar.gz"
+
+DESCRIPTION="Adobe Flash Player"
+SRC_URI="x86? ( ${MY_32B_URI} )
+amd64? (
+ multilib? (
+ 32bit? ( ${MY_32B_URI} )
+ 64bit? ( ${MY_64B_URI} )
+ )
+ !multilib? ( ${MY_64B_URI} )
+)"
+#HOMEPAGE="http://www.adobe.com/"
+HOMEPAGE="http://labs.adobe.com/technologies/flashplayer10/"
+IUSE="multilib nspluginwrapper +32bit +64bit"
+SLOT="0"
+
+KEYWORDS="-* ~amd64 ~x86"
+LICENSE="AdobeFlash-10.1"
+RESTRICT="strip mirror"
+
+S="${WORKDIR}"
+
+NATIVE_DEPS="x11-libs/gtk+:2
+ media-libs/fontconfig
+ dev-libs/nss
+ net-misc/curl
+ >=sys-libs/glibc-2.4"
+
+EMUL_DEPS=">=app-emulation/emul-linux-x86-gtklibs-20100409-r1
+ app-emulation/emul-linux-x86-soundlibs"
+
+DEPEND="amd64? ( multilib? ( 32bit? ( nspluginwrapper? (
+ www-plugins/nspluginwrapper ) ) ) )"
+RDEPEND="x86? ( $NATIVE_DEPS )
+ amd64? (
+ multilib? (
+ 64bit? ( $NATIVE_DEPS )
+ 32bit? ( $EMUL_DEPS )
+ )
+ !multilib? ( $NATIVE_DEPS )
+ )
+ || ( media-fonts/liberation-fonts media-fonts/corefonts )
+ ${DEPEND}"
+
+# Where should this all go? (Bug #328639)
+INSTALL_BASE="opt/Adobe/flash-player"
+
+# Ignore QA warnings in these binary closed-source libraries, since we can't fix
+# them:
+QA_EXECSTACK="${INSTALL_BASE}32/libflashplayer.so
+ ${INSTALL_BASE}/libflashplayer.so"
+
+QA_DT_HASH="${INSTALL_BASE}32/libflashplayer.so
+ ${INSTALL_BASE}/libflashplayer.so"
+
+pkg_setup() {
+ einfo "Date is $EBUILD_DATE suffix is $DATE_SUFFIX"
+ if use x86; then
+ export native_install=1
+ elif use amd64; then
+ # amd64 users may unselect the native 64bit binary, if they choose
+ if ! use multilib || use 64bit; then
+ export native_install=1
+ else
+ unset native_install
+ fi
+
+ if use multilib && use 32bit; then
+ export amd64_32bit=1
+ else
+ unset amd64_32bit
+ fi
+
+ if use multilib && ! use 32bit && ! use 64bit; then
+ eerror "You must select at least one architecture USE flag (32bit or 64bit)"
+ die "No library version selected [-32bit -64bit]"
+ fi
+
+ unset need_lahf_wrapper
+ if [[ $native_install ]]; then
+ # 64bit flash requires the 'lahf' instruction (bug #268336)
+ # Also, check if *any* of the processors are affected (bug #286159)
+ if grep '^flags' /proc/cpuinfo | grep -qv 'lahf_lm'; then
+ export need_lahf_wrapper=1
+ fi
+ fi
+ fi
+}
+
+src_unpack() {
+ # In this pre-release version, both tarballs have just 'libflashplayer.so'
+ # and no prefix directory, so put the 32-bit one somewhere else.
+ if [[ $amd64_32bit ]]; then
+ mkdir 32bit
+ pushd "${S}/32bit"
+ unpack $(basename $MY_32B_URI)
+ popd
+ unpack $(basename $MY_64B_URI)
+ else
+ default_src_unpack
+ fi
+}
+
+src_compile() {
+ if [[ $need_lahf_wrapper ]]; then
+ # This experimental wrapper, from Maks Verver via bug #268336 should
+ # emulate the missing lahf instruction affected platforms.
+ $(tc-getCC) -fPIC -shared -nostdlib -lc -oflashplugin-lahf-fix.so \
+ "${FILESDIR}/flashplugin-lahf-fix.c" \
+ || die "Compile of flashplugin-lahf-fix.so failed"
+ fi
+}
+
+src_install() {
+ if [[ $native_install ]]; then
+ exeinto /${INSTALL_BASE}
+ doexe libflashplayer.so
+ inst_plugin /${INSTALL_BASE}/libflashplayer.so
+ fi
+
+ if [[ $need_lahf_wrapper ]]; then
+ # This experimental wrapper, from Maks Verver via bug #268336 should
+ # emulate the missing lahf instruction affected platforms.
+ exeinto /${INSTALL_BASE}
+ doexe flashplugin-lahf-fix.so
+ inst_plugin /${INSTALL_BASE}/flashplugin-lahf-fix.so
+ fi
+
+ if [[ $amd64_32bit ]]; then
+ local oldabi="${ABI}"
+ ABI="x86"
+
+ # 32b plugin
+ pushd "${S}/32bit"
+ exeinto /${INSTALL_BASE}32
+ doexe libflashplayer.so
+ inst_plugin /${INSTALL_BASE}32/libflashplayer.so
+ popd
+
+ ABI="${oldabi}"
+ fi
+
+ # The magic config file!
+ insinto "/etc/adobe"
+ doins "${FILESDIR}/mms.cfg"
+}
+
+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[+32bit -64bit]"
+ elog
+ fi
+ if has_version 'www-plugins/nspluginwrapper'; then
+ if [[ $native_install ]]; then
+ # TODO: Perhaps parse the output of 'nspluginwrapper -l'
+ # However, the 64b flash plugin makes
+ # 'nspluginwrapper -l' segfault.
+ local FLASH_WRAPPER="${ROOT}/usr/lib64/nsbrowser/plugins/npwrapper.libflashplayer.so"
+ if [[ -f ${FLASH_WRAPPER} ]]; then
+ einfo "Removing duplicate 32-bit plugin wrapper: Native 64-bit plugin installed"
+ nspluginwrapper -r "${FLASH_WRAPPER}"
+ fi
+ else
+ einfo "nspluginwrapper detected: Installing plugin wrapper"
+ local oldabi="${ABI}"
+ ABI="x86"
+ local FLASH_SOURCE="${ROOT}/${INSTALL_BASE}32/libflashplayer.so"
+ nspluginwrapper -i "${FLASH_SOURCE}"
+ ABI="${oldabi}"
+ fi
+ elif [[ ! $native_install ]]; then
+ elog "To use the 32-bit flash player in a native 64-bit browser,"
+ elog "you must install www-plugins/nspluginwrapper"
+ fi
+ fi
+
+ ewarn "Flash player is closed-source, with a long history of security"
+ ewarn "issues. Please consider only running flash applets you know to"
+ ewarn "be safe. The 'flashblock' extension may help for mozilla users:"
+ ewarn " https://addons.mozilla.org/en-US/firefox/addon/433"
+}