--- /usr/portage/www-client/firefox-bin/firefox-bin-29.0.1.ebuild 2014-05-09 20:16:17.000000000 -0600 +++ firefox-bin-29.0.1.ebuild 2014-05-14 11:33:08.606030281 -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-29.0.1.ebuild,v 1.1 2014/05/10 02:16:17 anarchy 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,13 +21,13 @@ # 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" @@ -47,36 +47,64 @@ >=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 x86 || echo 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}-icon.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