pmaports/main/devicepkg-dev/downstreamkernel_prepare.sh
Robert Yang da08bebb0b
devicepkg-dev: Make downstreamkernel_prepare callable from any folder
Removes the need to cd $builddir before calling downstreamkernel_prepare
in a kernel APKBUILD prepare function.
2018-11-27 07:47:11 +01:00

29 lines
856 B
Bash

#!/bin/sh
srcdir=$1
builddir=$2
_config=$3
_carch=$4
HOSTCC=$5
if [ -z "$srcdir" ] || [ -z "$builddir" ] || [ -z "$_config" ] ||
[ -z "$_carch" ] || [ -z "$HOSTCC" ]; then
echo "ERROR: missing argument!"
echo "Please call downstreamkernel_prepare() with \$srcdir, \$builddir,"
echo "\$_config, \$_carch and \$HOSTCC as arguments."
exit 1
fi
# support newer GCC versions
cp -v "/usr/share/devicepkg-dev/compiler-gcc.h" "$builddir/include/linux/"
# Remove -Werror from all makefiles
makefiles="$(find "$builddir" -type f -name Makefile)
$(find "$builddir" -type f -name Kbuild)"
for i in $makefiles; do
sed -i 's/-Werror-/-W/g' "$i"
sed -i 's/-Werror//g' "$i"
done
# Prepare kernel config ('yes ""' for kernels lacking olddefconfig)
cp "$srcdir/$_config" "$builddir"/.config
yes "" | make -C "$builddir" ARCH="$_carch" HOSTCC="$HOSTCC" oldconfig