You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/sys-block/sas3flash/sas3flash-16.ebuild

109 lines
3.9 KiB

# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit mount-boot
DESCRIPTION="Flash utility for LSI MPT-SAS3 controller"
HOMEPAGE="https://www.broadcom.com/products/storage/host-bus-adapters/sas-9300-8e#downloads"
LICENSE="LSI"
SLOT="0"
KEYWORDS="~amd64 ~ppc64 ~x86 ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="doc efi"
RESTRICT="strip fetch mirror"
BDEPEND="app-arch/unzip"
QA_PREBUILT="opt/lsi/sas3flash boot/efi/sas3flash.efi"
SRC_URI_BASE="https://docs.broadcom.com/docs-and-downloads"
SRC_URI_PREFIX="${SRC_URI_BASE}/host-bus-adapters/host-bus-adapters-common-files/sas_sata_12g_p${PV}_point_release"
SRC_URI_LINUX="${SRC_URI_PREFIX}/Installer_P${PV}_for_Linux.zip"
SRC_URI_FREEBSD="${SRC_URI_PREFIX}/Installer_P${PV}_for_FreeBSD.zip"
SRC_URI_SOLARIS="${SRC_URI_PREFIX}/Installer_P${PV}_for_Solaris.zip"
SRC_URI_UEFI="${SRC_URI_PREFIX}/Installer_P${PV}_for_UEFI.zip"
DISTFILE_BINS=( "${SRC_URI_LINUX##*/}" "${SRC_URI_FREEBSD##*/}" "${SRC_URI_SOLARIS##*/}" "${SRC_URI_UEFI##*/}" )
DISTFILE_DOC=sas3Flash_quickRefGuide_rev1-0.pdf
SRC_URI="
amd64? ( ${SRC_URI_LINUX} )
x86? ( ${SRC_URI_LINUX} )
ppc64? ( ${SRC_URI_LINUX} )
amd64-fbsd? ( ${SRC_URI_FREEBSD} )
x86-fbsd? ( ${SRC_URI_FREEBSD} )
x64-solaris? ( ${SRC_URI_SOLARIS} )
x86-solaris? ( ${SRC_URI_SOLARIS} )
sparc-solaris? ( ${SRC_URI_SOLARIS} )
efi? ( ${SRC_URI_UEFI} )
doc? ( "${SRC_URI_BASE}/oracle/files/${DISTFILE_DOC}" )"
S="${WORKDIR}"
pkg_nofetch() {
elog "Broadcom has a mandatory click-through license on their binaries."
elog "Please visit ${HOMEPAGE} and download ${DISTFILE_BINS[@]} from the Mangement Software section."
elog "After downloading, move ${DISTFILE_BINS[@]} into your DISTDIR directory."
if use doc; then
elog "Please also download 'SAS3Flash Utility Quick Reference Guide' (${DISTFILE_DOC}) "
elog "and also place it into your DISTDIR directory."
fi
einfo "${SRC_URI}"
}
supportedcards() {
elog "This binary supports should support ALL cards, including, but not"
elog "limited to the following series:"
elog ""
elog "LSI SAS 3004"
elog "LSI SAS 3008"
elog "LSI SAS 3108"
elog "LSI SAS 3116"
elog "LSI SAS 3208"
elog "LSI SAS 3308"
}
src_install() {
# The second number is some sort of internal revision that is inconsistent between releases.
local DOCS=( Installer_P"${PV}"_for_Linux/{FLASH_MPT_GEN3_Phase"${PV}".0-*.pdf,sas3Flash_quickRefGuide_rev1-0.pdf} )
if use doc; then
DOCS+=( "${DISTDIR}/${DISTFILE_DOC}" )
fi
exeinto /opt/lsi/
if use amd64; then
doexe Installer_P16_for_Linux/sas3flash_linux_x64_rel/sas3flash
DOCS+=( Installer_P"${PV}"_for_Linux/README_Installer_P"${PV}"_Linux.txt )
elif use x86; then
doexe Installer_P16_for_Linux/sas3flash_linux_i386_rel/sas3flash
DOCS+=( Installer_P"${PV}"_for_Linux/README_Installer_P"${PV}"_Linux.txt )
elif use ppc64; then
doexe Installer_P16_for_Linux/sas3flash_linux_ppc64_rel/sas3flash
DOCS+=( Installer_P"${PV}"_for_Linux/README_Installer_P"${PV}"_Linux.txt )
elif use amd64-fbsd; then
doexe Installer_P16_for_FreeBSD/sas3flash_freebsd_amd64_rel/sas3flash
DOCS+=( Installer_P"${PV}"_for_FreeBSD/README_Installer_P"${PV}"_FreeBSD.txt )
elif use x86-fbsd; then
doexe Installer_P16_for_FreeBSD/sas3flash_freebsd_i386_rel/sas3flash
DOCS+=( Installer_P"${PV}"_for_FreeBSD/README_Installer_P"${PV}"_FreeBSD.txt )
elif use x64-solaris || use x86-solaris; then
doexe Installer_P16_for_Solaris/sas3flash_solaris_x86_rel/sas3flash
DOCS+=( Installer_P"${PV}"_for_Solaris/README_Installer_P"${PV}"_Solaris.txt )
elif use sparc-solaris; then
doexe Installer_P16_for_Solaris/sas3flash_solaris_sparc_rel/sas3flash
DOCS+=( Installer_P"${PV}"_for_Solaris/README_Installer_P"${PV}"_Solaris.txt )
fi
if use efi; then
exeinto /boot/efi/
DOCS+=( Installer_P"${PV}"_for_UEFI/README_Installer_P"${PV}"_UEFI.txt )
if use amd64; then
doexe Installer_P"${PV}"_for_UEFI/sas3flash_udk_uefi_x64_rel/sas3flash.efi
fi
fi
default
}