summaryrefslogtreecommitdiff
blob: 520977c3787e78b77d3272af0871fe7b0ee7881f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

DESCRIPTION="QLogic Linux Fibre Channel HBA Firmware for ql2xxx cards"
HOMEPAGE="ftp://ftp.qlogic.com/outgoing/linux/firmware/"
SRC_URI="mirror://gentoo/${P}.tar.bz2"

LICENSE="qlogic-fibre-channel-firmware"
SLOT="0"
KEYWORDS="amd64 ppc ppc64 sparc x86"
IUSE=""

# really depends on absolutely nothing
DEPEND=""
RDEPEND="!sys-kernel/linux-firmware"

src_install() {
	# We must install this, say QLogic's people.
	# They have claimed to me that the /license/ directory isn't sufficient, as
	# there is no guarantee it will be on a system - and it would not be in any
	# binpkg either. If you do something else with the firmware blobs, you are
	# thus strongly encouraged to keep a copy of the LICENSE file with them on
	# the system.
	dodoc LICENSE
	dodoc README.* CURRENT_VERSIONS
	insinto /lib/firmware
	# some older firmware are always provided by upstream
	# for reasons documented in CURRENT_VERSIONS.

	# Please see README.* as to why we do not use the MID/MIDX versions by
	# default if they are newer.
	# TODO: Provide a means to get them for people that really want them.
	local f fw_basename=( ql2100_fw.bin ql2200_fw.bin ql2300_fw.bin ql2322_fw.bin ql2400_fw.bin ql2500_fw.bin ql6312_fw.bin )
	for f in "${fw_basename[@]}"; do
		doins "${f}".*
		latest_f="$(ls ${f}.* | grep -v MID | sort -n | tail -n1)"
		dosym "${latest_f}" /lib/firmware/"${f}"
	done
}