Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 1 addition & 24 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,19 +34,6 @@ jobs:
echo ${{ secrets.KEY_STORE }} | base64 --decode > key.jks
fi

- name: Checkout libxposed/api
uses: actions/checkout@main
with:
repository: libxposed/api
path: libxposed/api
ref: 54582730315ba4a3d7cfaf9baf9d23c419e07006

- name: Checkout libxposed/service
uses: actions/checkout@main
with:
repository: libxposed/service
path: libxposed/service

- name: Setup Java
uses: actions/setup-java@v4
with:
Expand All @@ -68,20 +55,10 @@ jobs:
shell: bash
run: rm -rf $ANDROID_HOME/cmake

- name: Build dependencies with Gradle
working-directory: libxposed
run: |
cd api
echo 'org.gradle.jvmargs=-Xmx2048m' >> gradle.properties
./gradlew :api:publishApiPublicationToMavenLocal
cd ../service
echo 'org.gradle.jvmargs=-Xmx2048m' >> gradle.properties
./gradlew :interface:publishInterfacePublicationToMavenLocal

- name: Set short commit id
run: echo "commit=$(echo ${{ github.sha }} | cut -c-7)" > $GITHUB_ENV

- name: Build core with Gradle
- name: Build with Gradle
run: |
{
echo 'org.gradle.parallel=true'
Expand Down
14 changes: 0 additions & 14 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -240,17 +240,3 @@ subprojects {
configureBaseExtension()
}
}


project(":core") {
afterEvaluate {
if (property("android") is LibraryExtension) {
val android = property("android") as LibraryExtension
android.run {
buildTypes {
release { proguardFiles(rootProject.file("share/lspatch-rules.pro")) }
}
}
}
}
}
2 changes: 1 addition & 1 deletion core
Submodule core updated 61 files
+6 −31 .github/workflows/core.yml
+1 −2 .gitignore
+13 −7 .gitmodules
+0 −1 apache/commons-lang
+36 −36 app/src/main/res/values-ja/strings.xml
+8 −0 app/src/main/res/values-sv/strings.xml
+0 −1 axml/.gitignore
+0 −1 axml/libs/manifest-editor
+11 −0 build.gradle.kts
+3 −3 core/build.gradle.kts
+6 −3 core/proguard-rules.pro
+1 −5 core/src/main/java/org/lsposed/lspd/hooker/AttachHooker.java
+1 −5 core/src/main/java/org/lsposed/lspd/hooker/CrashDumpHooker.java
+1 −5 core/src/main/java/org/lsposed/lspd/hooker/HandleSystemServerProcessHooker.java
+1 −5 core/src/main/java/org/lsposed/lspd/hooker/LoadedApkCreateCLHooker.java
+1 −5 core/src/main/java/org/lsposed/lspd/hooker/LoadedApkCtorHooker.java
+1 −5 core/src/main/java/org/lsposed/lspd/hooker/OpenDexFileHooker.java
+1 −5 core/src/main/java/org/lsposed/lspd/hooker/StartBootstrapServicesHooker.java
+8 −14 core/src/main/java/org/lsposed/lspd/impl/LSPosedBridge.java
+36 −3 core/src/main/java/org/lsposed/lspd/impl/LSPosedContext.java
+0 −424 core/src/main/java/org/lsposed/lspd/impl/utils/LSPosedDexParser.java
+0 −19 core/src/main/java/org/lsposed/lspd/nativebridge/DexParserBridge.java
+9 −0 core/src/main/java/org/lsposed/lspd/nativebridge/HookBridge.java
+12 −0 core/src/main/jni/src/elf_util.cpp
+16 −0 core/src/main/jni/src/jni/hook_bridge.cpp
+1 −2 daemon/build.gradle.kts
+9 −0 daemon/src/main/java/org/lsposed/lspd/service/ConfigFileManager.java
+66 −6 daemon/src/main/java/org/lsposed/lspd/service/Dex2OatService.java
+2 −1 daemon/src/main/jni/logcat.cpp
+5 −5 daemon/src/main/res/values-ja/strings.xml
+37 −0 dex2oat/README.md
+2 −34 dex2oat/build.gradle.kts
+1 −1 dex2oat/src/main/cpp/CMakeLists.txt
+118 −71 dex2oat/src/main/cpp/dex2oat.cpp
+3 −7 dex2oat/src/main/cpp/include/logging.h
+3 −11 dex2oat/src/main/cpp/include/oat.h
+0 −17 dex2oat/src/main/cpp/oat.cpp
+179 −83 dex2oat/src/main/cpp/oat_hook.cpp
+6 −8 external/CMakeLists.txt
+30 −0 external/README.md
+1 −0 external/apache/.gitignore
+0 −0 external/apache/build.gradle.kts
+1 −0 external/apache/commons-lang
+0 −0 external/apache/local/MemberUtilsX.java
+2 −2 external/axml/build.gradle.kts
+1 −0 external/axml/manifest-editor
+1 −1 external/fmt
+8 −10 gradle/libs.versions.toml
+1 −0 magisk-loader/magisk_module/sepolicy.rule
+1 −1 magisk-loader/magisk_module/service.sh
+1 −5 magisk-loader/src/main/java/org/lsposed/lspd/util/ParasiticManagerSystemHooker.java
+20 −24 magisk-loader/update/changelog.md
+3 −3 magisk-loader/update/zygisk.json
+8 −0 services/daemon-service/build.gradle.kts
+1 −0 services/libxposed
+3 −10 settings.gradle.kts
+5 −0 xposed/README.md
+23 −0 xposed/build.gradle.kts
+1 −0 xposed/libxposed
+316 −0 xposed/src/main/kotlin/org/matrix/vector/impl/utils/VectorDexParser.kt
+31 −0 xposed/src/main/kotlin/org/matrix/vector/nativebridge/DexParserBridge.kt
4 changes: 3 additions & 1 deletion jar/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,9 @@ fun Jar.configure(variant: String) {
attributes("Main-Class" to "org.lsposed.patch.LSPatch")
}
dependsOn(configurations.runtimeClasspath)
from(configurations.runtimeClasspath.get().map { if (it.isDirectory) it else zipTree(it) })
from(configurations.runtimeClasspath.map { configuration ->
configuration.map { if (it.isDirectory) it else zipTree(it) }
})

into("assets") {
from("src/main/assets")
Expand Down
2 changes: 1 addition & 1 deletion manager/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ afterEvaluate {

dependencies {
implementation(projects.patch)
implementation(projects.services.daemonService)
implementation("vector:daemon-service")
implementation(projects.share.android)
implementation(projects.share.java)
implementation(platform(lspatch.androidx.compose.bom))
Expand Down
2 changes: 1 addition & 1 deletion meta-loader/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ androidComponents.onVariants { variant ->
}

dependencies {
compileOnly(projects.hiddenapi.stubs)
compileOnly("vector:stubs")
implementation(projects.share.java)
implementation(libs.hiddenapibypass)
}
8 changes: 4 additions & 4 deletions patch-loader/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,10 @@ androidComponents.onVariants { variant ->
}

dependencies {
compileOnly(projects.hiddenapi.stubs)
implementation(projects.core)
implementation(projects.hiddenapi.bridge)
implementation(projects.services.daemonService)
compileOnly("vector:stubs")
implementation("vector:core")
implementation("vector:bridge")
implementation("vector:daemon-service")
implementation(projects.share.android)
implementation(projects.share.java)

Expand Down
2 changes: 1 addition & 1 deletion patch/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ java {
}

dependencies {
implementation(projects.axml)
implementation(projects.apkzlib)
implementation("vector:axml")
implementation(projects.share.java)

implementation(lspatch.commons.io)
Expand Down
32 changes: 9 additions & 23 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,6 @@ dependencyResolutionManagement {
repositories {
google()
mavenCentral()
mavenLocal {
content {
includeGroup("io.github.libxposed")
}
}
}
versionCatalogs {
create("libs") {
Expand All @@ -31,31 +26,22 @@ dependencyResolutionManagement {

rootProject.name = "LSPatch"
include(
":apache",
":apkzlib",
":axml",
":core",
":hiddenapi:bridge",
":hiddenapi:stubs",
":jar",
":manager",
":meta-loader",
":patch",
":patch-loader",
":services:daemon-service",
":services:manager-service",
":services:xposed-service:interface",
":share:android",
":share:java",
)

project(":apache").projectDir = file("core/apache")
project(":axml").projectDir = file("core/axml")
project(":core").projectDir = file("core/core")
project(":hiddenapi:bridge").projectDir = file("core/hiddenapi/bridge")
project(":hiddenapi:stubs").projectDir = file("core/hiddenapi/stubs")
project(":services:daemon-service").projectDir = file("core/services/daemon-service")
project(":services:manager-service").projectDir = file("core/services/manager-service")
project(":services:xposed-service:interface").projectDir = file("core/services/xposed-service/interface")

buildCache { local { removeUnusedEntriesAfterDays = 1 } }
includeBuild("core") {
dependencySubstitution {
substitute(module("vector:axml")).using(project(":external:axml"))
substitute(module("vector:bridge")).using(project(":hiddenapi:bridge"))
substitute(module("vector:core")).using(project(":core"))
substitute(module("vector:daemon-service")).using(project(":services:daemon-service"))
substitute(module("vector:stubs")).using(project(":hiddenapi:stubs"))
}
}
2 changes: 1 addition & 1 deletion share/android/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ android {
}

dependencies {
implementation(projects.services.daemonService)
implementation("vector:daemon-service")
}
11 changes: 0 additions & 11 deletions share/lspatch-rules.pro

This file was deleted.