| // Copyright (C) 2012 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_applicable_licenses: ["eigen_license"], |
| } |
| |
| license { |
| name: "eigen_license", |
| visibility: [":__subpackages__"], |
| license_kinds: [ |
| // Apache 2.0 is only used in Eigen/src/Core/arch/Default/BFloat16.h, |
| // which was copied from TensorFlow. |
| "SPDX-license-identifier-Apache-2.0", |
| // BSD is used in CMake build scripts, which are not used in Android, |
| // and for code derived from the MINPACK library. |
| "SPDX-license-identifier-BSD", |
| // Almost all of the actual Eigen code is licensed under MPL 2.0. |
| "SPDX-license-identifier-MPL-2.0", |
| ], |
| license_text: [ |
| "COPYING.APACHE", |
| "COPYING.BSD", |
| "COPYING.MINPACK", |
| "COPYING.MPL2", |
| "NOTICE", |
| ], |
| } |
| |
| license { |
| name: "eigen_bench_license", |
| visibility: ["//visibility:private"], |
| license_kinds: [ |
| "SPDX-license-identifier-Apache-2.0", |
| "SPDX-license-identifier-GPL-2.0+", |
| ], |
| license_text: [ |
| "COPYING.APACHE", |
| "COPYING.GPL", |
| ], |
| } |
| |
| license { |
| name: "eigen_restricted_code_license", |
| visibility: ["//visibility:private"], |
| license_kinds: [ |
| "SPDX-license-identifier-LGPL-2.1", |
| ], |
| license_text: ["COPYING.LGPL"], |
| } |
| |
| filegroup { |
| name: "eigen_bench", |
| srcs: ["bench/**/*"], |
| licenses: ["eigen_bench_license"], |
| visibility: ["//visibility:private"], |
| } |
| |
| filegroup { |
| name: "eigen_restricted_code", |
| srcs: [ |
| "unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h", |
| "unsupported/Eigen/src/IterativeSolvers/IterationController.h", |
| ], |
| licenses: ["eigen_restricted_code_license"], |
| visibility: ["//visibility:private"], |
| } |
| |
| cc_library_headers { |
| name: "libeigen", |
| |
| // Although entire directory is exported, only Eigen and unsupported/Eigen |
| // contain actual exported headers. When capturing header files for |
| // snapshot, only these two directories will be globbed. |
| export_include_dirs: ["."], |
| cflags: ["-DEIGEN_MPL2_ONLY"], |
| |
| vendor_available: true, |
| host_supported: true, |
| apex_available: [ |
| "com.android.neuralnetworks", |
| "//apex_available:platform", |
| "com.android.ondevicepersonalization", |
| ], |
| min_sdk_version: "apex_inherit", |
| sdk_version: "current", |
| } |
| |
| subdirs = ["blas"] |