-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathdriver-map-all.sh
executable file
·75 lines (68 loc) · 1.57 KB
/
driver-map-all.sh
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!/bin/ksh
#
# SPDX-License-Identifier: CDDL-1.0
#
# {{{ CDDL HEADER
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source. A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
# }}}
#
# Copyright 2024 Peter Tribble
#
#
# generate a map of device alias to driver package name
#
# these ought to be args
#
THOME=${THOME:-/packages/localsrc/Tribblix}
GATEDIR=/export/home/ptribble/Illumos/illumos-gate
MYREPO="redist"
usage() {
echo "Usage: $0 [-T THOME] [-G date_directory] [-R repo_name]"
exit 2
}
#
# locations and variables should be passed as arguments
#
while getopts "T:G:R:" opt; do
case $opt in
T)
THOME="$OPTARG"
;;
G)
GATEDIR="$OPTARG"
;;
R)
MYREPO="$OPTARG"
;;
*)
usage
;;
esac
done
shift $((OPTIND-1))
ARCH=$(uname -p)
REPODIR=${GATEDIR}/packages/${ARCH}/nightly-nd/repo.${MYREPO}
if [ ! -d "${REPODIR}" ]; then
REPODIR=${GATEDIR}/packages/${ARCH}/nightly/repo.${MYREPO}
fi
if [ ! -d "${REPODIR}/pkg" ]; then
echo "Error: cannot find package repo in ${GATEDIR}"
exit 1
fi
cd "$REPODIR/pkg" || exit 1
CMD=${THOME}/tribblix-build/driver-map.sh
PNAME=${THOME}/tribblix-build/pkg_name.sh
for file in *
do
IPKG=$($PNAME "$file")
$CMD -T "$THOME" -G "$GATEDIR" -R "$MYREPO" "$file" "${IPKG}"
done