LSPosed/external
JingMatrix 211bd5f115
Centralize dependencies and migrate to submodules (#512)
Centralize dependencies and migrate to submodules

Move `apache` and `axml` modules to a unified `external` directory and migrate libxposed API and service interfaces from Maven dependencies to Git submodules.

Included changes:
- Updated .gitmodules with new paths.
- Simplified core.yml CI workflow.
- Updated Gradle project references to use the new directory structure.
- Added documentation for external components.
2026-01-22 15:13:06 +01:00
..
apache Centralize dependencies and migrate to submodules (#512) 2026-01-22 15:13:06 +01:00
axml Centralize dependencies and migrate to submodules (#512) 2026-01-22 15:13:06 +01:00
dobby@05a09ac680 Clear compilation warnings (#121) 2024-12-09 22:15:18 +01:00
fmt@0e078f6ed0 Update dependencies 2026-01-09 15:45:19 +01:00
lsplant@a0990196c2 Update dependencies 2025-08-01 20:38:56 +02:00
lsplt@3e29437f03 Update dependencies 2025-11-08 11:56:08 +01:00
xz-embedded@ae63ae3a36 Bump the submodule group with 3 updates (#145) 2025-01-03 14:06:28 +01:00
CMakeLists.txt Centralize dependencies and migrate to submodules (#512) 2026-01-22 15:13:06 +01:00
README.md Centralize dependencies and migrate to submodules (#512) 2026-01-22 15:13:06 +01:00

README.md

External Dependencies

This directory contains all the external dependencies required to build the Vector framework. They are included as git submodules to ensure version consistency and timely updating.

Native dependencies

  • Dobby: A lightweight, multi-platform inline hooking framework. It serves as the backend for all native function hooking (HookInline).

  • fmt: A modern formatting library used for high-performance, type-safe logging throughout the native code.

  • LSPlant: A hooking framework for the Android Runtime (ART). It provides the core functionality for intercepting and modifying Java methods.

  • xz-embedded: A lightweight data compression library with a small footprint. It is used by the ELF parser to decompress the .gnu_debugdata section of stripped native libraries.

  • LSPlt: A library for PLT (Procedure Linkage Table) hooking. It is used in the dex2oat sub-project to bypass a detection point. Note: This is included as a submodule for project convenience but is not compiled into the external C++ library itself.

Java libraries

  • apache/commons-lang: A package of Java utility classes for the classes that are in java.lang's hierarchy. Some classes are renamed and then used to implement the XposedHelpers API.

  • axml/manifest-editor: A a tool used to modify Android Manifest binary file. It is to parse manifestation files of Xposed modules.