// Copyright (C) 2009 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. cc_library_headers { name: "jni_headers", host_supported: true, export_include_dirs: ["include_jni"], vendor_available: true, native_bridge_supported: true, target: { windows: { enabled: true, }, }, // The minimum sdk version required by users of this module. sdk_version: "minimum", // As part of mainline modules(APEX), it should support at least 29(Q) min_sdk_version: "29", } cc_library_headers { name: "libnativehelper_header_only", host_supported: true, export_include_dirs: ["header_only_include"], target: { windows: { enabled: true, }, }, sdk_version: "current", // As part of mainline modules(APEX), it should support at least 29(Q) min_sdk_version: "29", apex_available: [ "//apex_available:platform", "//apex_available:anyapex", ], } cc_library_headers { name: "jni_platform_headers", host_supported: true, export_include_dirs: ["platform_include"], target: { windows: { enabled: true, }, }, apex_available: [ "//apex_available:platform", "com.android.art.debug", "com.android.art.release", ], } cc_library { name: "libnativehelper", host_supported: true, srcs: [ "JNIHelp.cpp", "JniConstants.cpp", "JniInvocation.cpp", "toStringArray.cpp", ], shared_libs: ["liblog"], cflags: [ "-Werror", "-fvisibility=protected", ], export_include_dirs: [ "include", "header_only_include", "platform_include", ], stubs: { symbol_file: "libnativehelper.map.txt", versions: ["1"], }, target: { windows: { shared_libs: ["libbase"], enabled: true, }, }, // Please avoid adding APEX dependencies on this for R (b/157711673). apex_available: [ "com.android.art.release", "com.android.art.debug", // b/133140750 Clean this up. This is due to the dependency from libplatform_library_jni, // librs_jni, libjni_legacymosaic, etc. "//apex_available:platform", // b/133140750 Clean this up, or allow this library to everywhere "com.android.bluetooth.updatable", ], } // // NDK-only build for the target (device), using libc++. // - Relies only on NDK exposed functionality. // - This doesn't include JniInvocation. // cc_library_shared { name: "libnativehelper_compat_libc++", export_include_dirs: [ "header_only_include", "include", ], cflags: ["-Werror"], local_include_dirs: [ "header_only_include", "platform_include", ], srcs: [ "JNIHelp.cpp", "JniConstants.cpp", "toStringArray.cpp", ], shared_libs: [ "liblog", ], sdk_version: "19", stl: "c++_static", } ndk_headers { name: "ndk_jni.h", from: "include_jni", to: "", srcs: ["include_jni/jni.h"], license: "NOTICE", } // // Tests. // subdirs = ["tests"]