// vendor/oxmc/vesperprofiled/Android.bp // ───────────────────────────────────────────────────────────────────────── // Drop this entire directory at vendor/oxmc/vesperprofiled/ and add // "vesperprofiled" to PRODUCT_PACKAGES in your device makefile. // // m vesperprofiled — build the daemon // m me.oxmc.vesperos.profile-V1-java — build Java stubs for system apps // ───────────────────────────────────────────────────────────────────────── // ── AIDL interface ──────────────────────────────────────────────────────── aidl_interface { name: "me.oxmc.vesperos.profile", srcs: ["aidl/me/oxmc/vesperos/profile/IVesperProfileService.aidl"], stability: "vintf", vendor_available: false, backend: { ndk: { enabled: true, }, java: { enabled: true, sdk_version: "system_current", }, cpp: { enabled: false, }, }, versions: ["1"], } // ── Native daemon ───────────────────────────────────────────────────────── cc_binary { name: "vesperprofiled", srcs: [ // Profile daemon core "src/main.cpp", "src/VesperProfileService.cpp", "src/ProfileParser.cpp", "src/ProfileStore.cpp", "src/SignatureVerifier.cpp", "src/payloads/PayloadHandlers.cpp", // ZTE client — compiled into the same binary "src/zte/DeviceIdentity.cpp", "src/zte/ZTELookupClient.cpp", "src/zte/ConnectivityWatcher.cpp", ], shared_libs: [ "libbinder_ndk", "libbase", "liblog", "libcrypto", "libssl", "libcurl", "me.oxmc.vesperos.profile-V1-ndk", ], static_libs: [ "libyaml", ], cflags: [ "-Wall", "-Wextra", "-Werror", "-std=c++17", ], init_rc: ["vesperprofiled.rc"], vintf_fragments: ["vesperprofiled.xml"], required: ["vesperprofiled_sepolicy"], } // ── SELinux policy shim ─────────────────────────────────────────────────── prebuilt_etc { name: "vesperprofiled_sepolicy", src: "sepolicy/vesperprofiled.te", sub_dir: "selinux", }