scripts/update-linux-headers: Handle kernel license no longer being one file

The kernel has changed its license documentation, so instead of COPYING
being a stand-alone file that defines the license, it refers to various
other files under LICENSES/. This means we need to copy not just COPYING
but also these other files to our copy of the kernel headers.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20180525132755.21839-4-peter.maydell@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Peter Maydell 2018-05-25 14:27:52 +01:00 committed by Paolo Bonzini
parent c5022c31c2
commit f5bba4ca92

View File

@ -142,6 +142,20 @@ else
cp "$linux/COPYING" "$output/linux-headers" cp "$linux/COPYING" "$output/linux-headers"
fi fi
# Recent kernel sources split the copyright/license info into multiple
# files, which we need to copy. This set of licenses is the set that
# are referred to by SPDX lines in the headers we currently copy.
# We don't copy the Documentation/process/license-rules.rst which
# is also referred to by COPYING, since it's explanatory rather than license.
if [ -d "$linux/LICENSES" ]; then
mkdir -p "$output/linux-headers/LICENSES/preferred" \
"$output/linux-headers/LICENSES/exceptions"
for l in preferred/GPL-2.0 preferred/BSD-2-Clause preferred/BSD-3-Clause \
exceptions/Linux-syscall-note; do
cp "$linux/LICENSES/$l" "$output/linux-headers/LICENSES/$l"
done
fi
cat <<EOF >$output/linux-headers/linux/virtio_config.h cat <<EOF >$output/linux-headers/linux/virtio_config.h
#include "standard-headers/linux/virtio_config.h" #include "standard-headers/linux/virtio_config.h"
EOF EOF