diff --git a/metadata/me.bmax.apatch.yml b/metadata/me.bmax.apatch.yml index 898ce965df..9588e318f0 100644 --- a/metadata/me.bmax.apatch.yml +++ b/metadata/me.bmax.apatch.yml @@ -97,22 +97,29 @@ Builds: - versionName: '11039' versionCode: 11039 + disable: rebuild commit: 5fd71d6a70d404e9dcf91c490dac00796418e7de timeout: 30000 subdir: app sudo: - apt-get update - - apt-get install -y make cmake gcc autoconf automake libtool wget flex bison - autogen texinfo gawk libncurses5-dev dejagnu xz-utils python-is-python3 + - apt-get install -y g++ make pkg-config libssl-dev ninja-build cmake xz-utils + libflashrom-dev libnss3-dev zip libzstd-dev file binutils-dev bzip2 autoconf + automake libtool wget flex bison autogen texinfo gawk libncurses5-dev dejagnu + python-is-python3 clang-19 lld-19 - curl -Lo /usr/share/doc/git/contrib/workdir/git-new-workdir https://raw.githubusercontent.com/git/git/v2.39.2/contrib/workdir/git-new-workdir - ln -s /usr/share/doc/git/contrib/workdir/git-new-workdir /usr/local/bin/ - chmod +x /usr/local/bin/git-new-workdir - init: git checkout 10763 gradle: - yes srclibs: - - rustup@1.26.0 - - apatch-magisk@6122f80ecad5fc07df84bda6e07d4d477522288f + - rustup@1.27.1 + - ondk@r28.3 + - ndk-box-kitchen@14d189ea3070a8167b3576bf83fe070d4a3441af + - Busybox@1_36_1 + - SELinux-android@android-15.0.0_r3 + - pcre@android-15.0.0_r3 + - apatch-magisk@cc566cf1de7e029b77a34bad11838a3357f1263a - KernelPatch@0.10.7 - abe@5ad3b2cc5bc1376c323a68af6022603c1b75c145 prebuild: @@ -123,17 +130,16 @@ Builds: - echo "8eaf20bf7f002ae98176974ceb77c2c6225585e6b62eec2a4870c1bd894393f8 gcc-manifest.txt" | sha256sum -c - - cd .. - - sed -i -e 's|ndk_path = .*|ndk_path = "$$NDK$$"|' -e "s|rust_bin = .*|rust_bin - = \"$HOME/.cargo/bin/\"|" -e '/sys.exit/d' -e 's/ -Zthreads=.*/"/' -e 's/archs - = .*/archs = ["arm64-v8a"]/' -e '/triples =/,+5c triples = ["aarch64-linux-android"]' - $$apatch-magisk$$/build.py - - sed -i -e 's/armeabi-v7a.*/arm64-v8a/' $$apatch-magisk$$/native/src/Application.mk + - sed -i -e 's/-18/-19/' $$ondk$$/config.toml + - sed -i -e 's|https://.*download/{ndk_ver}|$$ondk$$/dist|' -e 's/urllib.request.urlopen(url)/open(url,"rb")/' + -e 's/ -Zthreads=.*/"/' $$apatch-magisk$$/build.py + - sed -i -e '/"src",/,/^]/c "src"]' $$ondk$$/config.toml + - sed -i -e 's/armeabi-v7a.*/arm64-v8a/' $$ndk-box-kitchen$$/jni/Application.mk - kernelPatchVersion=$(sed -n -E 's/.*"kernelPatchVersion", "([0-9.]+)".*/\1/p' ../build.gradle.kts) - git -C $$KernelPatch$$ checkout -f $kernelPatchVersion - sdkmanager 'platforms;android-33' - - $$rustup$$/rustup-init.sh -y --default-toolchain nightly-2024-02-04 -t aarch64-linux-android - -c rust-src + - $$rustup$$/rustup-init.sh -y --default-toolchain 1.85.1 -t aarch64-linux-android - source $HOME/.cargo/env - sed -i -e '/"cargo"/a environment("ANDROID_NDK_HOME", "$$NDK$$")' -e "s|\"cargo\"|\"$(which cargo)\"|" -e '/preBuild/,/^)/s/"download.*",//' -e '/jvmTarget/s/21/17/' @@ -142,39 +148,59 @@ Builds: -e '/JavaVersion/s/21/17/' ../build.gradle.kts - sed -i -e '/androidx.dev/d' ../settings.gradle.kts - sed -i -e '/prefs.getBoolean("check_update"/s/true/false/' src/main/java/me/bmax/apatch/ui/screen/Settings.kt + - sdkmanager 'cmake;3.31.6' scandelete: - app/libs/arm64-v8a build: - - pushd $$apatch-magisk$$ - - python3 ./build.py -rv binary target magiskboot magiskpolicy busybox resetprop + - pushd $$ondk$$ + - ./build.sh - popd - - for target in magiskboot magiskpolicy busybox resetprop; do mv $$apatch-magisk$$/native/out/arm64-v8a/$target + - pushd $$apatch-magisk$$ + - python3 ./build.py -rv ndk + - python3 ./build.py -rv native targets magiskboot magiskpolicy resetprop + - popd + - for target in magiskboot magiskpolicy resetprop; do mv $$apatch-magisk$$/native/out/arm64-v8a/$target libs/arm64-v8a/lib${target}.so; done + - pushd $$ndk-box-kitchen$$ + - cp -r $$Busybox$$ busybox + - cp -r $$SELinux-android$$ jni/selinux + - cp -r $$pcre$$ jni/pcre + - pushd busybox + - git config user.email test@test.com + - git config user.name test + - popd + - ./run.sh patch + - ./run.sh generate + - $$SDK$$/ndk/magisk/ndk-build -j$(nproc) + - popd + - mv $$ndk-box-kitchen$$/libs/arm64-v8a/busybox libs/arm64-v8a/libbusybox.so - cd gcc - $$abe$$/abe.sh --manifest gcc-manifest.txt --build all --disable make_docs > /dev/null - export TARGET_COMPILE=$(pwd)/builds/destdir/x86_64-pc-linux-gnu/bin/aarch64-none-elf- - cd .. - source $HOME/.cargo/env - - cargo install cargo-ndk --version 3.4.0 --locked + - cargo install cargo-ndk --version 3.5.4 --locked - pushd $$KernelPatch$$ - export ANDROID=1 - cd kernel - make - - cd ../user + - cd ../tools - cmake -DCMAKE_TOOLCHAIN_FILE=$$NDK$$/build/cmake/android.toolchain.cmake -DCMAKE_BUILD_TYPE=Release -DANDROID_PLATFORM=android-33 -DANDROID_ABI=arm64-v8a . - cmake --build . - - cd ../tools + - git checkout -f 0.10.7 + - cd ../kernel + - make hdr + - cd ../user - cmake -DCMAKE_TOOLCHAIN_FILE=$$NDK$$/build/cmake/android.toolchain.cmake -DCMAKE_BUILD_TYPE=Release -DANDROID_PLATFORM=android-33 -DANDROID_ABI=arm64-v8a . - cmake --build . - popd - mv $$KernelPatch$$/kernel/kpimg src/main/assets/kpimg - - mv $$KernelPatch$$/user/kpatch libs/arm64-v8a/libkpatch.so - - mv $$KernelPatch$$/user/libapjni.so libs/arm64-v8a/libapjni.so - mv $$KernelPatch$$/tools/kptools libs/arm64-v8a/libkptools.so - ndk: r26d + - mv $$KernelPatch$$/user/kpatch libs/arm64-v8a/libkpatch.so + ndk: r27c MaintainerNotes: | 1. git-new-workdir needs to be downloaded because it's stripped. diff --git a/srclibs/apatch-magisk.yml b/srclibs/apatch-magisk.yml index 7e06a79c11..fddc0e3dbb 100644 --- a/srclibs/apatch-magisk.yml +++ b/srclibs/apatch-magisk.yml @@ -1,4 +1,4 @@ RepoType: git -Repo: https://github.com/bmax121/Magisk +Repo: https://github.com/AndroidPatch/Magisk Prepare: git submodule update --init --recursive