// Copyright (C) 2022 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. package { default_visibility: [":__subpackages__"], default_applicable_licenses: ["Android-Apache-2.0"], } java_defaults { name: "federatedcompute-java-defaults", lint: { error_checks: ["NewApi"], strict_updatability_linting: true, }, min_sdk_version: "Tiramisu ", } java_genrule { name: "federatedcompute-fbs", tools: [ "flatc", "soong_zip", ], host_supported: true, srcs: ["src/**/*.fbs"], out: ["federatedcompute-fbs.srcjar"], cmd: "$(location flatc) -o $(genDir) --java $(in) " + "&& $(location soong_zip) -o $(out) -C $(genDir) -D $(genDir)", visibility: [ "//packages/modules/OnDevicePersonalization:__subpackages__" ], } filegroup { name: "federatedcompute-sources", srcs: [ "src/**/*.java", "src/**/*.aidl", ], path: "src", visibility: [ "//packages/modules/OnDevicePersonalization:__subpackages__" ], } cc_library_shared { name: "libfcp_cpp_dep_jni", srcs: [ "jni/cpp/example_iterator_wrapper_impl.cc", "jni/cpp/fl_runner_jni.cc", "jni/cpp/log_manager_wrapper_impl.cc", "jni/cpp/simple_task_environment_wrapper_impl.cc", // Add tensorflow java API jni source files ":tensorflowlite_jni_src", ], include_dirs: [ "external/flatbuffers/include", "external/tensorflow", ], version_script: "jni/jni.lds", whole_static_libs: [ "libfederatedcompute", ], static_libs:[ "federated-compute-cc-proto-lite", "libprotobuf-cpp-lite-ndk", ], header_libs: [ "libbase_headers", "libnativehelper_header_only", "libeigen", ], shared_libs: [ "liblog", "libcrypto", ], stl: "libc++_static", apex_available: ["com.android.ondevicepersonalization"], sdk_version: "current", min_sdk_version: "Tiramisu", visibility: [ "//packages/modules/OnDevicePersonalization:__subpackages__", ], cflags: [ "-Wno-unused-parameter", ], } cc_library_shared { name: "libfcp_hpke_jni", srcs: [ "jni/cpp/hpke_jni.cc", ], include_dirs: [ "packages/modules/OnDevicePersonalization/federatedcompute/jni/include" ], version_script: "jni/jni.lds", header_libs: [ "jni_headers", ], shared_libs: [ "libcrypto", ], stl: "libc++_static", apex_available: ["com.android.ondevicepersonalization"], sdk_version: "current", min_sdk_version: "Tiramisu", visibility: [ "//packages/modules/OnDevicePersonalization:__subpackages__", ], cflags: [ "-Wno-unused-parameter", ], }