mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-30 06:06:43 +00:00
Merge pull request #2485 from MilhouseVH/le90_kernel_config_path
functions: add helper function to locate linux config
This commit is contained in:
commit
e6a0d51cff
@ -182,6 +182,35 @@ kernel_version() {
|
||||
get_pkg_version linux
|
||||
}
|
||||
|
||||
kernel_config_path() {
|
||||
local cfg pkg_linux_dir pkg_linux_version config_name
|
||||
|
||||
# avoid infinite recursion if this is called by linux
|
||||
if [ "$PKG_NAME" = "linux" ]; then
|
||||
pkg_linux_version="$PKG_VERSION"
|
||||
pkg_linux_dir="$PKG_DIR"
|
||||
else
|
||||
pkg_linux_version="$(get_pkg_version linux)"
|
||||
pkg_linux_dir="$(get_pkg_directory linux)"
|
||||
fi
|
||||
|
||||
config_name="linux.${TARGET_PATCH_ARCH:-$TARGET_ARCH}.conf"
|
||||
|
||||
for cfg in $PROJECT_DIR/$PROJECT/devices/$DEVICE/linux/$pkg_linux_version/$config_name \
|
||||
$PROJECT_DIR/$PROJECT/devices/$DEVICE/linux/$LINUX/$config_name \
|
||||
$PROJECT_DIR/$PROJECT/devices/$DEVICE/linux/$config_name \
|
||||
$PROJECT_DIR/$PROJECT/linux/$pkg_linux_version/$config_name \
|
||||
$PROJECT_DIR/$PROJECT/linux/$LINUX/$config_name \
|
||||
$PROJECT_DIR/$PROJECT/linux/$config_name \
|
||||
$pkg_linux_dir/config/$pkg_linux_version/$config_name \
|
||||
$pkg_linux_dir/config/$LINUX/$config_name \
|
||||
$pkg_linux_dir/config/$config_name \
|
||||
; do
|
||||
[[ $cfg =~ /devices//linux/ ]] && continue
|
||||
[ -f "$cfg" ] && echo "$cfg" && break
|
||||
done
|
||||
}
|
||||
|
||||
# get kernel module dir
|
||||
get_module_dir() {
|
||||
if [ -n "${_CACHED_KERNEL_MODULE_DIR}" ]; then
|
||||
|
@ -29,32 +29,6 @@ PKG_SHORTDESC="linux26: The Linux kernel 2.6 precompiled kernel binary image and
|
||||
PKG_LONGDESC="This package contains a precompiled kernel image and the modules."
|
||||
PKG_IS_KERNEL_PKG="yes"
|
||||
|
||||
PKG_CFG_FILE="$PKG_NAME.${TARGET_PATCH_ARCH:-$TARGET_ARCH}.conf"
|
||||
if [ -n "$DEVICE" -a -f $PROJECT_DIR/$PROJECT/devices/$DEVICE/$PKG_NAME/$PKG_VERSION/$PKG_CFG_FILE ]; then
|
||||
PKG_KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/devices/$DEVICE/$PKG_NAME/$PKG_VERSION/$PKG_CFG_FILE
|
||||
elif [ -n "$DEVICE" -a -f $PROJECT_DIR/$PROJECT/devices/$DEVICE/$PKG_NAME/$LINUX/$PKG_CFG_FILE ]; then
|
||||
PKG_KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/devices/$DEVICE/$PKG_NAME/$LINUX/$PKG_CFG_FILE
|
||||
elif [ -n "$DEVICE" -a -f $PROJECT_DIR/$PROJECT/devices/$DEVICE/$PKG_NAME/$PKG_CFG_FILE ]; then
|
||||
PKG_KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/devices/$DEVICE/$PKG_NAME/$PKG_CFG_FILE
|
||||
elif [ -f $PROJECT_DIR/$PROJECT/$PKG_NAME/$PKG_VERSION/$PKG_CFG_FILE ]; then
|
||||
PKG_KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/$PKG_NAME/$PKG_VERSION/$PKG_CFG_FILE
|
||||
elif [ -f $PROJECT_DIR/$PROJECT/$PKG_NAME/$LINUX/$PKG_CFG_FILE ]; then
|
||||
PKG_KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/$PKG_NAME/$LINUX/$PKG_CFG_FILE
|
||||
elif [ -f $PROJECT_DIR/$PROJECT/$PKG_NAME/$PKG_CFG_FILE ]; then
|
||||
PKG_KERNEL_CFG_FILE=$PROJECT_DIR/$PROJECT/$PKG_NAME/$PKG_CFG_FILE
|
||||
elif [ -f $PKG_DIR/config/$PKG_VERSION/$PKG_CFG_FILE ]; then
|
||||
PKG_KERNEL_CFG_FILE=$PKG_DIR/config/$PKG_VERSION/$PKG_CFG_FILE
|
||||
elif [ -f $PKG_DIR/config/$LINUX/$PKG_CFG_FILE ]; then
|
||||
PKG_KERNEL_CFG_FILE=$PKG_DIR/config/$LINUX/$PKG_CFG_FILE
|
||||
else
|
||||
PKG_KERNEL_CFG_FILE=$PKG_DIR/config/$PKG_CFG_FILE
|
||||
fi
|
||||
|
||||
if [ "$DEVTOOLS" = "yes" ] && grep -q ^CONFIG_PERF_EVENTS= $PKG_KERNEL_CFG_FILE ; then
|
||||
PKG_BUILD_PERF="yes"
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET binutils elfutils libunwind zlib openssl"
|
||||
fi
|
||||
|
||||
case "$LINUX" in
|
||||
amlogic-3.10)
|
||||
PKG_VERSION="02fdb27"
|
||||
@ -80,6 +54,13 @@ case "$LINUX" in
|
||||
;;
|
||||
esac
|
||||
|
||||
PKG_KERNEL_CFG_FILE=$(kernel_config_path)
|
||||
|
||||
if [ "$DEVTOOLS" = "yes" ] && grep -q ^CONFIG_PERF_EVENTS= $PKG_KERNEL_CFG_FILE ; then
|
||||
PKG_BUILD_PERF="yes"
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET binutils elfutils libunwind zlib openssl"
|
||||
fi
|
||||
|
||||
if [ "$TARGET_KERNEL_ARCH" = "arm64" -a "$TARGET_ARCH" = "arm" ]; then
|
||||
PKG_DEPENDS_HOST="$PKG_DEPENDS_HOST gcc-linaro-aarch64-linux-gnu:host"
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET gcc-linaro-aarch64-linux-gnu:host"
|
||||
|
Loading…
x
Reference in New Issue
Block a user