blob: caff595e63cc7bad39fce6998a22f764d109180c [file] [log] [blame]
/*
* Copyright 2017 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_defaults {
name: "NeuralNetworksTest_default_libs",
defaults: ["neuralnetworks_defaults"],
host_supported: false,
// b/109953668, disable OpenMP
// openmp: true,
shared_libs: [
"libandroid",
"libbase",
"libbinder",
"libcutils",
"libfmq",
"libhidlbase",
"libhidltransport",
"libhidlmemory",
"liblog",
"libnativewindow",
"libtextclassifier_hash",
"libui",
"libutils",
"android.hardware.neuralnetworks@1.0",
"android.hardware.neuralnetworks@1.1",
"android.hardware.neuralnetworks@1.2",
"android.hidl.allocator@1.0",
"android.hidl.memory@1.0",
],
static_libs: [
"libc++fs",
"libcrypto",
],
header_libs: [
"libneuralnetworks_generated_test_harness_headers",
],
}
cc_defaults {
name: "NeuralNetworksTest_defaults",
defaults: ["NeuralNetworksTest_default_libs"],
srcs: [
"TestNeuralNetworksWrapper.cpp",
// Subset of tests that rely only on public functionality.
//
// Changes to this list must be reflected in cts/tests/tests/neuralnetworks/Android.mk
// to ensure CTS tests coverage.
"generated/tests/*.cpp",
"TestGenerated.cpp",
"TestMemory.cpp",
"TestOperandExtraParams.cpp",
"TestTrivialModel.cpp",
"TestUnknownDimensions.cpp",
"TestUnspecifiedDimensions.cpp",
"TestValidateModel.cpp",
"TestValidateOperations.cpp",
"TestValidation.cpp",
"TestWrapper.cpp",
],
static_libs: [
"libgmock",
],
cflags: [
"-UNDEBUG"
],
}
cc_test {
name: "NeuralNetworksTest_shared_partial",
defaults: ["NeuralNetworksTest_defaults"],
srcs: [
"TestMain.cpp",
],
cflags: [
"-DNNTEST_ONLY_PUBLIC_API"
],
shared_libs: [
"libneuralnetworks",
"libtextclassifier_hash",
],
}
cc_defaults {
name: "NeuralNetworksTest_static_defaults",
defaults: ["NeuralNetworksTest_defaults"],
srcs: [
"TestMain.cpp",
"Bridge.cpp",
// Tests that rely on non-public functionality (i.e., symbols
// not exported from libneuralnetworks.so).
"TestCompilationCaching.cpp",
"TestCompliance.cpp",
"TestExecution.cpp",
"TestMemoryInternal.cpp",
// b/109953668, disable OpenMP
// "TestOpenmpSettings.cpp",
"TestPartitioning.cpp",
"TestPartitioningRandom.cpp",
"TestIntrospectionControl.cpp",
"TestExtensions.cpp",
"fibonacci_extension/FibonacciExtensionTest.cpp",
"fibonacci_extension/FibonacciDriver.cpp",
],
static_libs: [
"libgmock",
"libneuralnetworks",
"libneuralnetworks_common",
"libSampleDriver",
],
shared_libs: [
"libcutils",
],
header_libs: [
"libneuralnetworks_private_headers",
"neuralnetworks_test_vendor_fibonacci_extension",
],
test_suites: [
"general-tests",
],
}
cc_test {
name: "NeuralNetworksTest_static",
defaults: ["NeuralNetworksTest_static_defaults"],
}
cc_test {
name: "NeuralNetworksTest_static_fuzzing",
defaults: ["NeuralNetworksTest_default_libs"],
srcs: [
"TestNeuralNetworksWrapper.cpp",
"fuzzing/operation_signatures/*.cpp",
"fuzzing/OperationManager.cpp",
"fuzzing/RandomGraphGenerator.cpp",
"fuzzing/RandomGraphGeneratorUtils.cpp",
"fuzzing/RandomVariable.cpp",
"fuzzing/TestRandomGraph.cpp",
],
static_libs: [
"libgmock",
"libneuralnetworks",
"libneuralnetworks_common",
"libSampleDriver",
],
header_libs: [
"libneuralnetworks_private_headers",
],
}
cc_test {
name: "NeuralNetworksTest_static_asan",
defaults: ["NeuralNetworksTest_static_defaults"],
sanitize: {
address: true,
},
}
cc_test {
name: "NeuralNetworksTest_static_ubsan",
defaults: ["NeuralNetworksTest_static_defaults"],
sanitize: {
undefined: true,
all_undefined: true,
diag: {
undefined: true,
},
},
}
cc_defaults {
name: "NeuralNetworksTest_mt_defaults",
defaults: ["NeuralNetworksTest_default_libs"],
srcs: [
"TestNeuralNetworksWrapper.cpp",
"TestMain.cpp",
"generated/tests/*.cpp",
"TestGenerated.cpp",
],
cflags: [
"-DNNTEST_MULTITHREADED"
],
static_libs: [
"libgmock",
"libneuralnetworks",
"libneuralnetworks_common",
"libSampleDriver",
],
shared_libs: [
"libcutils",
],
header_libs: [
"libneuralnetworks_private_headers",
],
}
cc_test {
name: "NeuralNetworksTest_mt_static",
defaults: ["NeuralNetworksTest_mt_defaults"],
}
cc_test {
// Note: tsan not supported on Android (yet)
name: "NeuralNetworksTest_mt_static_asan",
defaults: ["NeuralNetworksTest_mt_defaults"],
sanitize: {
address: true,
},
}