adobe-flash: this update works, not with a grsec/pax kernel but it works in 64 bit

This commit is contained in:
Zero_Chaos 2010-10-03 02:05:50 +00:00
parent eb3674f2ad
commit 91152d3772
3 changed files with 209 additions and 62 deletions

View file

@ -1,2 +1,3 @@
DIST install_flash_player_9.tar.gz 3057910 RMD160 efd3ddf118af41963ebb9a76c75383e4f5d27372 SHA1 b0b70bdba1a91e3954a509e8ea252d556cf4f3c9 SHA256 c2581cf5034a9adb9393acfd646d50608ab3a6a229c6f36a77ca9a8d8c5c6f07
EBUILD adobe-flash-9.0.159.0.ebuild 1847 RMD160 447acbe83660e8e9e01d93e9dc96a93dd58cb405 SHA1 16a28daef4f8a5869c17ca2c7fb417175c4804f4 SHA256 58d0852d6c1222884a6ecf8b18e567b434b99eb4d7247f2ffc328ecd79707d9e
DIST flashplayer_square_p2_32bit_linux_092710.tar.gz 4263232 RMD160 5b301be5701a08c9d244419b61071340726534af SHA1 93ca107a3de296b83c3e52890ba27754048d290c SHA256 9d821c3619a0a7f1f5769d6a7c57684d83a1c565896c354f9fcd7fb3f3620eec
DIST flashplayer_square_p2_64bit_linux_092710.tar.gz 4307850 RMD160 278067e783021f4dee86b89410102b08abbff602 SHA1 b862dcee9ac2118d2836e76b8a4f56e6cc241593 SHA256 fdaaed681883636a3bba59a189986f5dda72e3c65613fce1e066e56111b00da1
EBUILD adobe-flash-10.2.161.22_pre20100927.ebuild 6419 RMD160 1cf8fef29fa5ba7d5a7b098ee61e3aeaeead1703 SHA1 f4285096b1e36379bdab5d6726792bde89c852f2 SHA256 bd2dd5f4b9a04166e0f216bb6b6c725a8df7febe9000fab8b44304b533eef6e4

View file

@ -0,0 +1,206 @@
# 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.22_pre20100915.ebuild,v 1.2 2010/09/17 18:25:17 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/flashplayer_square_p2_32bit_linux_${DATE_SUFFIX}.tar.gz"
MY_64B_URI="http://download.macromedia.com/pub/labs/flashplayer10/flashplayer_square_p2_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 library USE flag (32bit or 64bit)"
die "No library version selected [-32bit -64bit]"
fi
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
else
unset need_lahf_wrapper
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 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
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
fi
if [[ $amd64_32bit ]]; then
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}"
ewarn "Using adobe-flash-10.1 in a 64-bit browser is unstable:"
ewarn " http://bugs.gentoo.org/324365"
ewarn "The recommended configuration is to use the 32-bit plugin"
ewarn "in a 32-bit browser such as www-client/firefox-bin"
elog
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"
}

View file

@ -1,60 +0,0 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/www-plugins/adobe-flash/adobe-flash-9.0.159.0.ebuild,v 1.1 2009/04/10 13:14:04 ulm Exp $
inherit nsplugins
DESCRIPTION="Adobe Flash Player"
SRC_URI="http://download.macromedia.com/pub/flashplayer/installers/current/9/install_flash_player_9.tar.gz"
HOMEPAGE="http://www.adobe.com/go/kb406791"
IUSE=""
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
LICENSE="AdobeFlash-9.0.31.0"
RESTRICT="strip mirror"
S=${WORKDIR}
RDEPEND="amd64? ( app-emulation/emul-linux-x86-baselibs
app-emulation/emul-linux-x86-gtklibs
app-emulation/emul-linux-x86-soundlibs
app-emulation/emul-linux-x86-xlibs )
x86? ( x11-libs/libXext
x11-libs/libX11
x11-libs/libXt
=x11-libs/gtk+-2*
media-libs/freetype
media-libs/fontconfig )
|| ( media-fonts/freefont-ttf media-fonts/corefonts )"
pkg_setup() {
# This is a binary x86 package => ABI=x86
# Please keep this in future versions
# Danny van Dyk <kugelfang@gentoo.org> 2005/03/26
has_multilib_profile && ABI="x86"
}
src_install() {
cd "${S}/install_flash_player_9_linux/"
exeinto /opt/netscape/plugins
doexe libflashplayer.so
inst_plugin /opt/netscape/plugins/libflashplayer.so
}
pkg_postinst() {
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."
if has_version 'www-client/mozilla-firefox'; then
elog "The firefox 'flashblock' extension may help:"
elog " https://addons.mozilla.org/en-US/firefox/addon/433"
fi
if has_version 'kde-base/konqueror'; then
elog "Konqueror users: You may need to follow the instructions here:"
elog " http://dev.gentoo.org/~lack/konqueror-flash.xml"
elog "For flash to work with your browser."
fi
}