Skip to content

Commit 086264c

Browse files
committed
Fix: Clang Detect
1 parent 443d352 commit 086264c

File tree

1 file changed

+20
-8
lines changed

1 file changed

+20
-8
lines changed

.github/actions/action.yml

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -332,26 +332,38 @@ runs:
332332
BUILDCONFIG="$KERNEL_PATH/common/build.config.gki"
333333
CONSTANTSCONFIG="$KERNEL_PATH/common/build.config.constants"
334334
CLANG_VERSION=""
335-
if grep -q '^CONFIG_CLANG_VERSION=' "$DEFCONFIG"; then
336-
CLANG_VERSION=$(grep '^CONFIG_CLANG_VERSION=' "$DEFCONFIG" | head -n1 | cut -d'=' -f2 | tr -d '"')
337-
elif grep -q '^CLANG_VERSION=' "$BUILDCONFIG"; then
338-
CLANG_VERSION=$(grep '^CLANG_VERSION=' "$BUILDCONFIG" | head -n1 | cut -d'=' -f2)
339-
elif grep -q '^CLANG_VERSION=' "$CONSTANTSCONFIG"; then
340-
CLANG_VERSION=$(grep '^CLANG_VERSION=' "$CONSTANTSCONFIG" | head -n1 | cut -d'=' -f2)
335+
CLANG_BIN_PATH=""
336+
if grep -q '^CONFIG_CLANG_VERSION=' "$DEFCONFIG" 2>/dev/null; then
337+
CLANG_VERSION=$(grep '^CONFIG_CLANG_VERSION=' "$DEFCONFIG" 2>/dev/null | head -n1 | cut -d'=' -f2 | tr -d '"' | xargs)
338+
elif grep -q '^CLANG_VERSION=' "$BUILDCONFIG" 2>/dev/null; then
339+
CLANG_VERSION=$(grep '^CLANG_VERSION=' "$BUILDCONFIG" 2>/dev/null | head -n1 | cut -d'=' -f2 | xargs)
340+
elif grep -q '^CLANG_VERSION=' "$CONSTANTSCONFIG" 2>/dev/null; then
341+
CLANG_VERSION=$(grep '^CLANG_VERSION=' "$CONSTANTSCONFIG" 2>/dev/null | head -n1 | cut -d'=' -f2 | xargs)
341342
CLANG_VERSION="clang-$CLANG_VERSION"
342343
else
343344
echo "No clang version found in config, will auto-detect in prebuilts."
344345
fi
345346
if [ -z "$CLANG_VERSION" ]; then
346347
if [ -d "$KERNEL_PATH/prebuilts/clang/host/linux-x86" ]; then
347-
CLANG_VERSION=$(ls -d "$KERNEL_PATH"/prebuilts/clang/host/linux-x86/*/ | head -n 1 | xargs basename)
348+
CLANG_VERSION=$(ls -d "$KERNEL_PATH"/prebuilts/clang/host/linux-x86/clang-r*/ | tail -n 1 | xargs basename)
349+
CLANG_BIN_PATH="$KERNEL_PATH/prebuilts/clang/host/linux-x86/$CLANG_VERSION/bin"
350+
elif [ -d "$KERNEL_PATH/prebuilts-master/clang/host/linux-x86" ]; then
351+
CLANG_VERSION=$(ls -d "$KERNEL_PATH"/prebuilts-master/clang/host/linux-x86/clang-r*/ | tail -n 1 | xargs basename)
352+
CLANG_BIN_PATH="$KERNEL_PATH/prebuilts-master/clang/host/linux-x86/$CLANG_VERSION/bin"
348353
else
349354
CLANG_VERSION="clang"
355+
CLANG_BIN_PATH="$KERNEL_PATH/prebuilts/clang/host/linux-x86/$CLANG_VERSION/bin" # dummy
356+
fi
357+
else
358+
if [ -d "$KERNEL_PATH/prebuilts/clang/host/linux-x86" ]; then
359+
CLANG_BIN_PATH="$KERNEL_PATH/prebuilts/clang/host/linux-x86/$CLANG_VERSION/bin"
360+
else
361+
CLANG_BIN_PATH="$KERNEL_PATH/prebuilts-master/clang/host/linux-x86/$CLANG_VERSION/bin"
350362
fi
351363
fi
352364
echo "Detected CLANG_VERSION: $CLANG_VERSION"
353365
echo "CLANG_VERSION=$CLANG_VERSION" >> $GITHUB_ENV
354-
echo "CLANG_BIN_PATH=$KERNEL_PATH/prebuilts/clang/host/linux-x86/$CLANG_VERSION/bin" >> $GITHUB_ENV
366+
echo "CLANG_BIN_PATH=$CLANG_BIN_PATH" >> $GITHUB_ENV
355367
356368
- name: Build Kernel
357369
shell: bash

0 commit comments

Comments
 (0)