--- /usr/portage/www-client/firefox-bin/firefox-bin-30.0.ebuild 2014-06-16 03:01:40.000000000 -0600 +++ firefox-bin-30.0.ebuild 2014-06-11 18:19:45.661853570 -0600 @@ -1,6 +1,6 @@ # Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/firefox-bin/firefox-bin-30.0.ebuild,v 1.3 2014/06/16 08:53:45 pacho Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/firefox-bin/firefox-bin-27.0.ebuild,v 1.1 2014/02/07 14:11:02 polynomial-c Exp $ EAPI="5" @@ -21,62 +21,90 @@ # We don't use the http mirror because it deletes old tarballs. MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/mozilla.org/${MOZ_PN}/releases/" -inherit eutils multilib pax-utils fdo-mime gnome2-utils mozlinguas nsplugins +inherit eutils pax-utils fdo-mime gnome2-utils mozlinguas nsplugins multilib-minimal DESCRIPTION="Firefox Web Browser" MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/mozilla.org/${MOZ_PN}/releases" SRC_URI="${SRC_URI} - amd64? ( ${MOZ_FTP_URI}/${MOZ_PV}/linux-x86_64/en-US/${MOZ_P}.tar.bz2 -> ${PN}_x86_64-${PV}.tar.bz2 ) - x86? ( ${MOZ_FTP_URI}/${MOZ_PV}/linux-i686/en-US/${MOZ_P}.tar.bz2 -> ${PN}_i686-${PV}.tar.bz2 )" + abi_x86_64? ( ${MOZ_FTP_URI}/${MOZ_PV}/linux-x86_64/en-US/${MOZ_P}.tar.bz2 -> ${PN}_x86_64-${PV}.tar.bz2 ) + abi_x86_32? ( ${MOZ_FTP_URI}/${MOZ_PV}/linux-i686/en-US/${MOZ_P}.tar.bz2 -> ${PN}_i686-${PV}.tar.bz2 )" HOMEPAGE="http://www.mozilla.com/firefox" RESTRICT="strip mirror" KEYWORDS="-* ~amd64 ~x86" SLOT="0" LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="selinux startup-notification" +IUSE="startup-notification" -DEPEND="app-arch/unzip - selinux? ( sec-policy/selinux-mozilla )" +DEPEND="app-arch/unzip" RDEPEND="dev-libs/dbus-glib virtual/freedesktop-icon-theme x11-libs/libXrender x11-libs/libXt x11-libs/libXmu - selinux? ( sec-policy/selinux-mozilla ) >=x11-libs/gtk+-2.2:2 >=media-libs/alsa-lib-1.0.16 + + !net-libs/libproxy[spidermonkey] + amd64? ( abi_x86_32? ( + || ( + ( + app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] + app-emulation/emul-linux-x86-xlibs[-abi_x86_32(-)] + app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)] + app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)] + ) + ( + dev-libs/dbus-glib[abi_x86_32(-)] + x11-libs/libXrender[abi_x86_32(-)] + x11-libs/libXt[abi_x86_32(-)] + x11-libs/libXmu[abi_x86_32(-)] + >=x11-libs/gtk+-2.2:2[abi_x86_32(-)] + >=media-libs/alsa-lib-1.0.16[abi_x86_32(-)] + ) + ) + ) ) " QA_PREBUILT=" - opt/${MOZ_PN}/*.so - opt/${MOZ_PN}/${MOZ_PN} - opt/${MOZ_PN}/${PN} - opt/${MOZ_PN}/crashreporter - opt/${MOZ_PN}/webapprt-stub - opt/${MOZ_PN}/plugin-container - opt/${MOZ_PN}/mozilla-xremote-client - opt/${MOZ_PN}/updater + opt/${MOZ_PN}*/*.so + opt/${MOZ_PN}*/${MOZ_PN} + opt/${MOZ_PN}*/${PN} + opt/${MOZ_PN}*/crashreporter + opt/${MOZ_PN}*/webapprt-stub + opt/${MOZ_PN}*/plugin-container + opt/${MOZ_PN}*/mozilla-xremote-client + opt/${MOZ_PN}*/updater " -S="${WORKDIR}/${MOZ_PN}" +S="${WORKDIR}" +BUILD_DIR="${S}/${MOZ_PN}" src_unpack() { - unpack ${A} + local i + for i in ${A} ; do + [[ $i = *.xpi ]] && continue + unpack "${i}" + mv "${MOZ_PN}" "${MOZ_PN}-$([[ $i = *i686* ]] && echo abi_x86_32.x86 || echo abi_x86_64.amd64)" || die + done # Unpack language packs mozlinguas_src_unpack } -src_install() { - declare MOZILLA_FIVE_HOME=/opt/${MOZ_PN} +multilib_src_install() { + local suffix= + multilib_is_native_abi || suffix="-${ABI}" + local MY_PN="${PN}${suffix}" + + declare MOZILLA_FIVE_HOME=/opt/${MOZ_PN}${suffix} local size sizes icon_path icon name sizes="16 32 48" - icon_path="${S}/browser/chrome/icons/default" - icon="${PN}" - name="Mozilla Firefox" + icon_path="${BUILD_DIR}/browser/chrome/icons/default" + icon="${PN}-icon" + name="Mozilla Firefox (bin/${ABI})" # Install icons and .desktop for menu entry for size in ${sizes}; do @@ -87,25 +115,27 @@ insinto "/usr/share/icons/hicolor/128x128/apps" newins "${icon_path}/../../../icons/mozicon128.png" "${icon}.png" || die # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs - newicon "${S}"/browser/chrome/icons/default/default48.png ${PN}.png - domenu "${FILESDIR}"/${PN}.desktop - sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \ - "${ED}/usr/share/applications/${PN}.desktop" || die + newicon "${BUILD_DIR}"/browser/chrome/icons/default/default48.png ${PN}-icon.png + newmenu "${FILESDIR}"/${PN}.desktop "${MY_PN}".desktop + sed -e "/^Name/s:=.*:=${name}:" \ + -e "/^Icon/s:=.*:=${icon}:" \ + -e "/^Exec/s:=.*:=/usr/bin/${MY_PN} %u:" \ + -i "${ED}/usr/share/applications/${MY_PN}.desktop" || die # Add StartupNotify=true bug 237317 if use startup-notification; then - echo "StartupNotify=true" >> "${D}"/usr/share/applications/${PN}.desktop + echo "StartupNotify=true" >> "${D}"/usr/share/applications/${MY_PN}.desktop fi # Install firefox in /opt dodir ${MOZILLA_FIVE_HOME%/*} - mv "${S}" "${D}"${MOZILLA_FIVE_HOME} || die + mv "${BUILD_DIR}" "${D}"${MOZILLA_FIVE_HOME} || die # Fix prefs that make no sense for a system-wide install insinto ${MOZILLA_FIVE_HOME}/defaults/pref/ doins "${FILESDIR}"/local-settings.js # Copy preferences file so we can do a simple rename. - cp "${FILESDIR}"/all-gentoo-1.js "${D}"${MOZILLA_FIVE_HOME}/all-gentoo.js + cp "${FILESDIR}"/all-gentoo-1.js "${D}"${MOZILLA_FIVE_HOME}/all-gentoo.js || die # Install language packs mozlinguas_src_install @@ -120,19 +150,19 @@ # Create /usr/bin/firefox-bin dodir /usr/bin/ - cat <<-EOF >"${D}"/usr/bin/${PN} + cat <<-EOF >"${D}"/usr/bin/${MY_PN} #!/bin/sh unset LD_PRELOAD - LD_LIBRARY_PATH="/opt/firefox/" - GTK_PATH=/usr/lib/gtk-2.0/ - exec /opt/${MOZ_PN}/${MOZ_PN} "\$@" + LD_LIBRARY_PATH="${MOZILLA_FIVE_HOME}" + GTK_PATH=/usr/$(get_libdir)/gtk-2.0/ + exec ${MOZILLA_FIVE_HOME}/${MOZ_PN} "\$@" EOF - fperms 0755 /usr/bin/${PN} + fperms 0755 /usr/bin/${MY_PN} # revdep-rebuild entry insinto /etc/revdep-rebuild - echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}" >> ${T}/10${PN} - doins "${T}"/10${PN} || die + echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}" >> ${T}/10${MY_PN} + doins "${T}"/10${MY_PN} || die # Plugins dir share_plugins_dir