|
|
@@ -46,7 +46,10 @@ jobs:
|
|
|
|
|
|
- name: Set CONFIG Environment Variable
|
|
|
run: |
|
|
|
+ # Set CONFIG dynamically based on inputs values
|
|
|
CONFIG="${{ inputs.android_version }}-${{ inputs.kernel_version }}-${{ inputs.sub_level }}"
|
|
|
+
|
|
|
+ # Set CONFIG as an environment variable for future steps
|
|
|
echo "CONFIG=$CONFIG" >> $GITHUB_ENV
|
|
|
|
|
|
- name: Setup Build Environment
|
|
|
@@ -131,6 +134,8 @@ jobs:
|
|
|
|
|
|
- name: Apply glibc 2.38 Compatibility Fix
|
|
|
run: |
|
|
|
+ # Use ACTUAL_SUBLEVEL for LTS builds, otherwise use the input sub_level
|
|
|
+
|
|
|
if ([[ "${{ inputs.android_version }}" == "android13" ]] && [[ "${{ inputs.kernel_version }}" == "5.10" ]] && (( $ACTUAL_SUBLEVEL <= 186 ))) ||
|
|
|
([[ "${{ inputs.android_version }}" == "android13" ]] && [[ "${{ inputs.kernel_version }}" == "5.15" ]] && (( $ACTUAL_SUBLEVEL <= 119 ))) ||
|
|
|
([[ "${{ inputs.android_version }}" == "android14" ]] && [[ "${{ inputs.kernel_version }}" == "5.15" ]] && (( $ACTUAL_SUBLEVEL <= 110 ))) ||
|
|
|
@@ -180,6 +185,8 @@ jobs:
|
|
|
- name: Apply SUSFS Patches for KernelSU Variants
|
|
|
run: |
|
|
|
cd "$CONFIG"
|
|
|
+
|
|
|
+ # Apply compatibility fixes
|
|
|
SUSFS_VERSION="1.5.12"
|
|
|
|
|
|
cp ../susfs4ksu/kernel_patches/fs/* ./common/fs/
|
|
|
@@ -189,10 +196,21 @@ jobs:
|
|
|
cp ../susfs4ksu/kernel_patches/50_add_susfs_in_gki-${{ inputs.android_version }}-${{ inputs.kernel_version }}.patch ./common/
|
|
|
cd common
|
|
|
|
|
|
- patch -p1 < 50_add_susfs_in_gki-${{ inputs.android_version }}-${{ inputs.kernel_version }}.patch || exit 1
|
|
|
+ # Pre-SUSFS sed safeguards removed; moved below core patch
|
|
|
|
|
|
- sed -i 's/goto show_pad;/goto show_pad_susfs;/' fs/proc/task_mmu.c 2>/dev/null || true
|
|
|
+ # Apply SUSFS core patch
|
|
|
+ patch -p1 < 50_add_susfs_in_gki-${{ inputs.android_version }}-${{ inputs.kernel_version }}.patch || true
|
|
|
|
|
|
+ # Post-SUSFS sed safeguards for task_mmu.c 'goto show_pad' handling
|
|
|
+ if ( ( [[ "${{ inputs.android_version }}" == "android12" ]] && [[ "${{ inputs.kernel_version }}" == "5.10" ]] && (( $ACTUAL_SUBLEVEL <= 209 )) ) \
|
|
|
+ || ( [[ "${{ inputs.android_version }}" == "android13" ]] && [[ "${{ inputs.kernel_version }}" == "5.10" ]] && [[ "${{ inputs.os_patch_level }}" != "2024-05" ]] && (( $ACTUAL_SUBLEVEL <= 209 )) ) \
|
|
|
+ || ( [[ "${{ inputs.android_version }}" == "android13" ]] && [[ "${{ inputs.kernel_version }}" == "5.15" ]] && [[ "${{ inputs.os_patch_level }}" != "2024-05" ]] && (( $ACTUAL_SUBLEVEL <= 148 )) ) \
|
|
|
+ || ( [[ "${{ inputs.android_version }}" == "android14" ]] && [[ "${{ inputs.kernel_version }}" == "5.15" ]] && [[ "${{ inputs.os_patch_level }}" != "2024-05" ]] && (( $ACTUAL_SUBLEVEL <= 148 )) ) \
|
|
|
+ || ( [[ "${{ inputs.android_version }}" == "android14" ]] && [[ "${{ inputs.kernel_version }}" == "6.1" ]] && [[ "${{ inputs.os_patch_level }}" != "2024-05" ]] && (( $ACTUAL_SUBLEVEL <= 75 )) ) ); then
|
|
|
+ sed -i -e 's/goto show_pad;/return 0;/' ./fs/proc/task_mmu.c
|
|
|
+ fi
|
|
|
+
|
|
|
+ # Apply additional SUSFS patches for Android 13 5.15 compatibility
|
|
|
if [[ "${{ inputs.android_version }}" == "android13" ]] && [[ "${{ inputs.kernel_version }}" == "5.15" ]] && (( ${{ inputs.sub_level }} <= 41 )); then
|
|
|
cp ../../kernel_patches/wild/susfs_fix_patches/v${SUSFS_VERSION}/fix_fdinfo.c.patch ./
|
|
|
patch -p1 < fix_fdinfo.c.patch || true
|
|
|
@@ -203,11 +221,7 @@ jobs:
|
|
|
sed -i 's/i_uid_into_mnt(i_user_ns(inode), inode)/i_uid_into_mnt(inode->i_sb->s_user_ns, inode)/g' fs/susfs.c
|
|
|
fi
|
|
|
|
|
|
- SUBLEVEL_FOR_NAME="${{ inputs.sub_level }}"
|
|
|
- if [ -n "$ACTUAL_SUBLEVEL" ]; then
|
|
|
- SUBLEVEL_FOR_NAME="$ACTUAL_SUBLEVEL"
|
|
|
- fi
|
|
|
-
|
|
|
+ # Use ACTUAL_SUBLEVEL for LTS or actual kernel sublevel if available
|
|
|
if ( [[ "${{ inputs.android_version }}" == "android12" ]] && [[ "${{ inputs.kernel_version }}" == "5.10" ]] && (( $ACTUAL_SUBLEVEL <= 43 )) ) \
|
|
|
|| ( [[ "${{ inputs.android_version }}" == "android14" ]] && [[ "${{ inputs.kernel_version }}" == "6.1" ]] && (( $ACTUAL_SUBLEVEL >= 145 )) ) \
|
|
|
|| ( [[ "${{ inputs.android_version }}" == "android15" ]] && [[ "${{ inputs.kernel_version }}" == "6.6" ]] && (( $ACTUAL_SUBLEVEL >= 98 )) ); then
|
|
|
@@ -225,6 +239,7 @@ jobs:
|
|
|
patch -p1 < fix_task_mmu.c.patch || true
|
|
|
fi
|
|
|
|
|
|
+ # Apply KSU integration patches
|
|
|
cd ../Wild_KSU
|
|
|
cp ../../susfs4ksu/kernel_patches/KernelSU/10_enable_susfs_for_ksu.patch .
|
|
|
patch -p1 < 10_enable_susfs_for_ksu.patch || true
|
|
|
@@ -425,7 +440,7 @@ jobs:
|
|
|
# echo "sound/drivers/snd-aloop.ko" >> common/android/gki_aarch64_modules
|
|
|
#else
|
|
|
# sed -i '/_COMMON_GKI_MODULES_LIST = \\[/,/\\]/ s/\\]/ "sound\/drivers\/snd-aloop.ko",\\n&/' common/modules.bzl
|
|
|
- #fi
|
|
|
+ 3fi
|
|
|
|
|
|
# Add symbols to abi_gki_aarch64
|
|
|
#SYMBOL_LIST=common/android/abi_gki_aarch64
|
|
|
@@ -469,7 +484,13 @@ jobs:
|
|
|
|
|
|
- name: Set file name
|
|
|
run: |
|
|
|
- ARTIFACT_BASE="${{ inputs.kernel_version }}.$ACTUAL_SUBLEVEL-${{ inputs.android_version }}-${{ inputs.os_patch_level }}-${{ matrix.apply_bypass == 'bypass' && 'Bypass' || 'Normal' }}"
|
|
|
+ # Set artifact name base for consistent naming
|
|
|
+ # Prepare sublevel for naming
|
|
|
+ SUBLEVEL_FOR_NAME="${{ inputs.sub_level }}"
|
|
|
+ if [ -n "$ACTUAL_SUBLEVEL" ]; then
|
|
|
+ SUBLEVEL_FOR_NAME="$ACTUAL_SUBLEVEL"
|
|
|
+ fi
|
|
|
+ ARTIFACT_BASE="${{ inputs.kernel_version }}.${SUBLEVEL_FOR_NAME}-${{ inputs.android_version }}-${{ inputs.os_patch_level }}-${{ matrix.apply_bypass == 'bypass' && 'Bypass' || 'Normal' }}"
|
|
|
echo "ARTIFACT_BASE=$ARTIFACT_BASE" >> $GITHUB_ENV
|
|
|
echo "FILE_NAME=$ARTIFACT_BASE" >> $GITHUB_ENV
|
|
|
|