From 3b49446990e4938bb0f202d83afd91bdc669adfd Mon Sep 17 00:00:00 2001 From: Alexey Shvetsov Date: Thu, 18 Sep 2014 01:10:51 +0400 Subject: Update ebuild to multilib support Package-Manager: portage-2.2.13 --- app-text/acroread/acroread-9.4.1.ebuild | 276 ++++++++++++++------------------ app-text/acroread/metadata.xml | 3 + 2 files changed, 122 insertions(+), 157 deletions(-) diff --git a/app-text/acroread/acroread-9.4.1.ebuild b/app-text/acroread/acroread-9.4.1.ebuild index a25335e..87fde13 100644 --- a/app-text/acroread/acroread-9.4.1.ebuild +++ b/app-text/acroread/acroread-9.4.1.ebuild @@ -1,55 +1,75 @@ -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-text/acroread/acroread-9.4.2.ebuild,v 1.6 2011/06/25 07:40:18 zmedico Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-text/acroread/acroread-9.5.5.ebuild,v 1.7 2014/06/18 19:03:13 mgorny Exp $ -EAPI="1" +EAPI=5 inherit eutils gnome2-utils nsplugins DESCRIPTION="Adobe's PDF reader" +SRC_URI="http://ardownload.adobe.com/pub/adobe/reader/unix/9.x/${PV}/enu/AdbeRdr${PV}-1_i486linux_enu.tar.bz2" HOMEPAGE="http://www.adobe.com/products/reader/" -IUSE="cups ldap minimal nsplugin" - -SRC_HEAD="http://ardownload.adobe.com/pub/adobe/reader/unix/9.x/${PV}" -SRC_FOOT=".tar.bz2" - -# languages not available yet: de:deu fr:fra it:ita es:esp ja:jpn pt:ptb sv:sve zh_CN:chs zh_TW:cht fi:suo nb:nor nl:nld ko:kor da:dan -LINGUA_LIST="en:enu" -DEFAULT_URI="${SRC_HEAD}/enu/AdbeRdr${PV}-1_i486linux_enu${SRC_FOOT}" -for ll in ${LINGUA_LIST} ; do - iuse_l="linguas_${ll/:*}" - src_l=${ll/*:} - IUSE="${IUSE} ${iuse_l}" - DEFAULT_URI="!${iuse_l}? ( ${DEFAULT_URI} )" - SRC_URI="${SRC_URI} - ${iuse_l}? ( ${SRC_HEAD}/${src_l}/AdbeRdr${PV}-1_i486linux_${src_l}${SRC_FOOT} )" -done -SRC_URI="${SRC_URI} - ${DEFAULT_URI}" LICENSE="Adobe" +KEYWORDS="-* amd64 x86 ~amd64-linux ~x86-linux" SLOT="0" -KEYWORDS="-* amd64 x86" +IUSE="cups html ldap nsplugin" +# asian fonts from separate package: +IUSE+=" linguas_zh_CN linguas_zh_TW linguas_ja linguas_ko" + RESTRICT="strip mirror" -# mozilla-firefox-bin won't work because it doesn't have gtkembedmoz.so +DEPEND="dev-util/bsdiff" RDEPEND="media-libs/fontconfig - x86? ( =dev-libs/openssl-0.9.8* ) cups? ( net-print/cups ) - x86? ( x11-libs/gtk+:2 - ldap? ( net-nds/openldap ) - !minimal? ( || ( net-libs/xulrunner - www-client/firefox - www-client/seamonkey ) ) ) - amd64? ( app-emulation/emul-linux-x86-gtklibs )" - -QA_EXECSTACK="opt/Adobe/Reader9/Reader/intellinux/bin/acroread + x86? ( + =dev-libs/openssl-0.9.8* + x11-libs/gtk+:2 + net-dns/libidn + || ( x11-libs/pangox-compat =x11-libs/gtk+-2.24.23:2[abi_x86_32(-)] + || ( + >=x11-libs/pangox-compat-0.0.2[abi_x86_32(-)] + =net-dns/libidn-1.28[abi_x86_32(-)] + ldap? ( >=net-nds/openldap-2.4.38-r1[abi_x86_32(-)] ) + ) + ) + ) + linguas_zh_CN? ( media-fonts/acroread-asianfonts[linguas_zh_CN] ) + linguas_ja? ( media-fonts/acroread-asianfonts[linguas_ja] ) + linguas_zh_TW? ( media-fonts/acroread-asianfonts[linguas_zh_TW] ) + linguas_ko? ( media-fonts/acroread-asianfonts[linguas_ko] )" + +QA_EXECSTACK=" + opt/Adobe/Reader9/Reader/intellinux/bin/acroread opt/Adobe/Reader9/Reader/intellinux/lib/libauthplay.so.0.0.0 opt/Adobe/Reader9/Reader/intellinux/lib/libsccore.so opt/Adobe/Reader9/Reader/intellinux/lib/libcrypto.so.0.9.8 - opt/Adobe/Reader9/Reader/intellinux/plug_ins/PPKLite.api" - -QA_DT_HASH="opt/Adobe/Reader9/Reader/intellinux/plug_ins3d/.*.x3d + opt/Adobe/Reader9/Reader/intellinux/plug_ins/PPKLite.api +" +QA_FLAGS_IGNORED=" + opt/Adobe/Reader9/Reader/intellinux/plug_ins3d/.*.x3d opt/Adobe/Reader9/Reader/intellinux/lib/lib.* opt/Adobe/Reader9/Reader/intellinux/bin/SynchronizerApp-binary opt/Adobe/Reader9/Reader/intellinux/bin/acroread @@ -60,100 +80,35 @@ QA_DT_HASH="opt/Adobe/Reader9/Reader/intellinux/plug_ins3d/.*.x3d opt/Adobe/Reader9/Reader/intellinux/plug_ins/.*.api opt/Adobe/Reader9/Reader/intellinux/sidecars/.*.DEU opt/Adobe/Reader9/Browser/intellinux/nppdf.so - opt/netscape/plugins/nppdf.so" + opt/netscape/plugins/nppdf.so +" +QA_TEXTRELS=" + opt/Adobe/Reader9/Reader/intellinux/lib/libextendscript.so + opt/Adobe/Reader9/Reader/intellinux/lib/libsccore.so +" INSTALLDIR=/opt S="${WORKDIR}/AdobeReader" -# Actually, ahv segfaults when run standalone so presumably -# it isn't intended for direct use - so the only launcher is -# acroread after all. -LAUNCHERS="Adobe/Reader9/bin/acroread" -# Adobe/HelpViewer/1.0/intellinux/bin/ahv" +# remove bundled libs to force use of system version, bug 340527 +REMOVELIBS="libcrypto libssl" pkg_setup() { # x86 binary package, ABI=x86 has_multilib_profile && ABI="x86" } -# Determine lingua from filename -acroread_get_ll() { - local f_src_l ll lingua src_l - f_src_l=${1/${SRC_FOOT}} - f_src_l=${f_src_l/*_} - for ll in ${LINGUA_LIST} ; do - lingua=${ll/:*} - src_l=${ll/*:} - if [[ ${src_l} == ${f_src_l} ]] ; then - echo ${lingua} - return - fi - done - die "Failed to match file $1 to a LINGUA; please report." -} - src_unpack() { - local ll linguas fl launcher - # Unpack all into the same place; overwrite common files. - fl="" - for pkg in ${A} ; do - cd "${WORKDIR}" - unpack ${pkg} - cd "${S}" - tar xf ILINXR.TAR || die "Failed to unpack ILINXR.TAR." - tar xf COMMON.TAR || die "Failed to unpack COMMON.TAR." - ll=$(acroread_get_ll ${pkg}) - for launcher in ${LAUNCHERS} ; do - mv ${launcher} ${launcher}.${ll} - done - if [[ -z ${fl} ]] ; then - fl=${ll} - linguas="${ll}" - else - linguas="${linguas} ${ll}" - fi - done - if [[ ${linguas} == ${fl} ]] ; then - # Only one lingua selected - skip building the wrappers - for launcher in ${LAUNCHERS} ; do - mv ${launcher}.${fl} ${launcher} || - die "Failed to put ${launcher}.${fl} back to ${launcher}; please report." - done - else - # Build wrappers. Launch the acroread for the environment variable - # LANG (matched with a trailing * so that for example 'de_DE' matches - # 'de', 'en_GB' matches 'en' etc). - # - # HelpViewer is new - We don't know if Adobe are likely to - # internationalize it or not. - for launcher in ${LAUNCHERS} ; do - cat > ${launcher} <<-EOF - #!/bin/bash - # Copyright 1999-2009 Gentoo Foundation - # Distributed under the terms of the GNU General Public License v2 - # - # Automatically generated by ${CATEGORY}/${PF} - - # Exec the acroread script for the language chosen in - # LC_ALL/LC_MESSAGES/LANG (first found takes precedence, as in glibc) - L=\${LC_ALL} - L=\${L:-\${LC_MESSAGES}} - L=\${L:-\${LANG}} - case \${L} in - EOF - for ll in ${linguas} ; do - echo "${ll}*) exec ${INSTALLDIR}/${launcher}.${ll} \"\$@\";;" >> ${launcher} - done - # default to English (in particular for LANG=C) - cat >> ${launcher} <<-EOF - *) exec ${INSTALLDIR}/${launcher}.${fl} "\$@";; - esac - EOF - chmod 755 ${launcher} - done - fi + unpack ${A} + cd "${S}" + # lowercase tar extension required for unpack, bug 476734 + mv ./ILINXR.TAR ./ILINXR.tar || die + mv ./COMMON.TAR ./COMMON.tar || die + unpack ./ILINXR.tar ./COMMON.tar +} +src_prepare() { # remove cruft rm "${S}"/Adobe/Reader9/bin/UNINSTALL rm "${S}"/Adobe/Reader9/Browser/install_browser_plugin @@ -165,49 +120,71 @@ src_unpack() { -e "/acrogre.conf/r ${FILESDIR}/gentoo_config" -e //N \ "${binfile}" || die "sed configuration settings failed." done + + # fix erroneous Exec entry in .desktop + sed -i \ + -e 's/^Exec=acroread[[:space:]]*$/Exec=acroread %U/' \ + "${S}"/Adobe/Reader9/Resource/Support/AdobeReader.desktop \ + ||die "sed .desktop fix failed" + + # fix braindead error in nppdf.so (bug 412051) + base64 -d > "${WORKDIR}/nppdf.so.patch" << ENDOFFILE +QlNESUZGNDBIAAAAAAAAAC8AAAAAAAAAYL0CAAAAAABCWmg5MUFZJlNZFBL6EAAAFvBh+DwgDAgQ +QAAAEABAIAAgACICaGjJtQoaaYAFPzpGDIjiUXSFYEuGy1ix8XckU4UJAUEvoQBCWmg5MUFZJlNZ +jrYrlQABYGAAwAAIAAAIIAAwzAUppgKbECni7kinChIR1sVyoEJaaDkxQVkmU1kzGPRGAAAAEYAA +AIYFAwAgACIHqbUIYAdBF8XckU4UJAzGPRGA +ENDOFFILE + einfo "Patching nppdf.so" + mv Adobe/Reader9/Browser/intellinux/nppdf.so Adobe/Reader9/Browser/intellinux/nppdf.so.orig || die + bspatch Adobe/Reader9/Browser/intellinux/nppdf.so.orig Adobe/Reader9/Browser/intellinux/nppdf.so "${WORKDIR}/nppdf.so.patch" || die + rm Adobe/Reader9/Browser/intellinux/nppdf.so.orig || die } src_install() { + local LAUNCHER="Adobe/Reader9/bin/acroread" + # Install desktop files - domenu Adobe/Reader9/Resource/Support/AdobeReader.desktop || die "Installing desktop files failed." + domenu Adobe/Reader9/Resource/Support/AdobeReader.desktop # Install commonly used icon sizes for res in 16x16 22x22 32x32 48x48 64x64 128x128 ; do insinto /usr/share/icons/hicolor/${res}/apps - doins Adobe/Reader9/Resource/Icons/${res}/* || die "Installing icons failed." + doins Adobe/Reader9/Resource/Icons/${res}/* done - dodir /opt || die "Creating directory failed." + dodir /opt chown -R --dereference -L root:0 Adobe - cp -dpR Adobe "${D}"opt/ + cp -dpR Adobe "${ED}"opt/ || die - doman Adobe/Reader9/Resource/Shell/acroread.1.gz || die "Installing manpage failed." + # remove some bundled libs + for mylib in ${REMOVELIBS}; do + einfo Removing bundled ${mylib} + rm -v "${ED}"/opt/Adobe/Reader9/Reader/intellinux/lib/${mylib}* + done + + doman Adobe/Reader9/Resource/Shell/acroread.1.gz - if use nsplugin ; then + if use nsplugin; then exeinto /opt/netscape/plugins - doexe Adobe/Reader9/Browser/intellinux/nppdf.so || die "Installing the browser plugin failed." + doexe Adobe/Reader9/Browser/intellinux/nppdf.so inst_plugin /opt/netscape/plugins/nppdf.so fi - dodir /opt/bin || die "Creating directory failed." - for launcher in ${LAUNCHERS} ; do - dosym /opt/${launcher} /opt/bin/${launcher/*bin\/} || die "Installing launcher symlinks failed." - done + dodir /opt/bin + dosym /opt/${LAUNCHER} /opt/bin/${LAUNCHER/*bin\/} # We need to set a MOZILLA_COMP_PATH for seamonkey and firefox since # they don't install a configuration file for libgtkembedmoz.so - # detection in /etc/gre.d/ like xulrunner does. - if ! use minimal ; then - if use x86 ; then - for lib in /opt/seamonkey /usr/lib/seamonkey /usr/lib/mozilla-firefox ; do - if [[ -f ${lib}/libgtkembedmoz.so ]] ; then - echo "MOZILLA_COMP_PATH=${lib}" >> "${D}"${INSTALLDIR}/Adobe/Reader9/Reader/GlobalPrefs/mozilla_config - elog "Adobe Reader depends on libgtkembedmoz.so, which I've found on" - elog "your system in ${lib}, and configured in ${INSTALLDIR}/Adobe/Reader9/Reader/GlobalPrefs/mozilla_config." - break # don't search any more libraries - fi - done - fi + # detection in /etc/gre.d/ like xulrunner did. + if use x86 && use html; then + for lib in /opt/seamonkey /usr/lib/seamonkey /usr/lib/mozilla-firefox; do + if [[ -f ${lib}/libgtkembedmoz.so ]] ; then + echo "MOZILLA_COMP_PATH=${lib}" >> "${ED}"${INSTALLDIR}/Adobe/Reader9/Reader/GlobalPrefs/mozilla_config + elog "Adobe Reader depends on libgtkembedmoz.so, which I've found on" + elog "your system in ${lib}, and configured in ${INSTALLDIR}/Adobe/Reader9/Reader/GlobalPrefs/mozilla_config." + break # don't search any more libraries + fi + done fi } @@ -216,29 +193,14 @@ pkg_preinst() { } pkg_postinst () { - local ll lc - lc=0 - for ll in ${LINGUA_LIST} ; do - use linguas_${ll/:*} && (( lc = ${lc} + 1 )) - done - if [[ ${lc} > 1 ]] ; then - echo - elog "Multiple languages have been installed, selected via a wrapper script." - elog "The language is selected according to the LANG environment variable" - elog "(defaulting to English if LANG is not set, or no matching language" - elog "version is installed). Users may need to remove their preferences in" - elog "~/.adobe to switch languages." - echo - fi - - if use minimal ; then + if use x86 && ! use html; then echo ewarn "If you want html support and/or view the Adobe Reader help you have" - ewarn "to re-emerge acroread with USE=\"-minimal\"." + ewarn "to re-emerge acroread with USE=\"html\"." echo fi - if use nsplugin ; then + if use amd64 && use nsplugin && ! has_version www-plugins/nspluginwrapper; then echo elog "If you're running a 64bit browser you may also want to install" elog "\"www-plugins/nspluginwrapper\" to be able to use the Adobe Reader" diff --git a/app-text/acroread/metadata.xml b/app-text/acroread/metadata.xml index 1fa0ca5..a799f70 100644 --- a/app-text/acroread/metadata.xml +++ b/app-text/acroread/metadata.xml @@ -2,4 +2,7 @@ printing + + HTML support and help reading capability (only for x86). + -- cgit v1.2.3-65-gdbad