Install only listed firmware files
The current make-install procedure leaves lots of garbage files that aren't really firmware files in /lib/firmware. Instead of copy-all-and-prune approach, copy only the listed files and links in WHENCE by make-install for assuring only the proper firmware files. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Josh Boyer <jwboyer@kernel.org>
This commit is contained in:
parent
5621bfcde3
commit
07b925b450
5
Makefile
5
Makefile
|
@ -10,7 +10,4 @@ check:
|
||||||
|
|
||||||
install:
|
install:
|
||||||
mkdir -p $(DESTDIR)$(FIRMWAREDIR)
|
mkdir -p $(DESTDIR)$(FIRMWAREDIR)
|
||||||
cp -r * $(DESTDIR)$(FIRMWAREDIR)
|
./copy-firmware.sh $(DESTDIR)$(FIRMWAREDIR)
|
||||||
rm -rf $(DESTDIR)$(FIRMWAREDIR)/usbdux
|
|
||||||
find $(DESTDIR)$(FIRMWAREDIR) \( -name 'WHENCE' -or -name 'LICENSE.*' -or \
|
|
||||||
-name 'LICENCE.*' \) -exec rm -- {} \;
|
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
#
|
||||||
|
# Copy firmware files based on WHENCE list
|
||||||
|
#
|
||||||
|
|
||||||
|
verbose=:
|
||||||
|
if [ x"$1" = x"-v" ]; then
|
||||||
|
verbose=echo
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
|
||||||
|
destdir="$1"
|
||||||
|
|
||||||
|
grep '^File:' WHENCE | sed -e's/^File: *//g' -e's/"//g' | while read f; do
|
||||||
|
test -f "$f" || continue
|
||||||
|
$verbose "copying file $f"
|
||||||
|
mkdir -p $destdir/$(dirname "$f")
|
||||||
|
cp -d "$f" $destdir/"$f"
|
||||||
|
done
|
||||||
|
|
||||||
|
grep -E '^Link:' WHENCE | sed -e's/^Link: *//g' -e's/-> //g' | while read f d; do
|
||||||
|
test -L "$f" || continue
|
||||||
|
test -f "$destdir/$f" && continue
|
||||||
|
$verbose "copying link $f"
|
||||||
|
mkdir -p $destdir/$(dirname "$f")
|
||||||
|
cp -d "$f" $destdir/"$f"
|
||||||
|
done
|
||||||
|
|
||||||
|
exit 0
|
Loading…
Reference in New Issue