1*2b54f0dbSXin Li// Copyright (C) 2020 The Android Open Source Project 2*2b54f0dbSXin Li// 3*2b54f0dbSXin Li// Licensed under the Apache License, Version 2.0 (the "License"); 4*2b54f0dbSXin Li// you may not use this file except in compliance with the License. 5*2b54f0dbSXin Li// You may obtain a copy of the License at 6*2b54f0dbSXin Li// 7*2b54f0dbSXin Li// http://www.apache.org/licenses/LICENSE-2.0 8*2b54f0dbSXin Li// 9*2b54f0dbSXin Li// Unless required by applicable law or agreed to in writing, software 10*2b54f0dbSXin Li// distributed under the License is distributed on an "AS IS" BASIS, 11*2b54f0dbSXin Li// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*2b54f0dbSXin Li// See the License for the specific language governing permissions and 13*2b54f0dbSXin Li// limitations under the License. 14*2b54f0dbSXin Li 15*2b54f0dbSXin Lipackage { 16*2b54f0dbSXin Li default_applicable_licenses: ["external_cpuinfo_license"], 17*2b54f0dbSXin Li} 18*2b54f0dbSXin Li 19*2b54f0dbSXin Li// Added automatically by a large-scale-change 20*2b54f0dbSXin Li// See: http://go/android-license-faq 21*2b54f0dbSXin Lilicense { 22*2b54f0dbSXin Li name: "external_cpuinfo_license", 23*2b54f0dbSXin Li visibility: [":__subpackages__"], 24*2b54f0dbSXin Li license_kinds: [ 25*2b54f0dbSXin Li "SPDX-license-identifier-BSD", 26*2b54f0dbSXin Li ], 27*2b54f0dbSXin Li license_text: [ 28*2b54f0dbSXin Li "LICENSE", 29*2b54f0dbSXin Li ], 30*2b54f0dbSXin Li} 31*2b54f0dbSXin Li 32*2b54f0dbSXin Licpuinfo_arm_common_src_files = [ 33*2b54f0dbSXin Li "src/arm/uarch.c", 34*2b54f0dbSXin Li "src/arm/cache.c", 35*2b54f0dbSXin Li "src/arm/linux/init.c", 36*2b54f0dbSXin Li "src/arm/linux/cpuinfo.c", 37*2b54f0dbSXin Li "src/arm/linux/clusters.c", 38*2b54f0dbSXin Li "src/arm/linux/chipset.c", 39*2b54f0dbSXin Li "src/arm/linux/midr.c", 40*2b54f0dbSXin Li "src/arm/linux/hwcap.c", 41*2b54f0dbSXin Li "src/arm/android/properties.c", 42*2b54f0dbSXin Li] 43*2b54f0dbSXin Li 44*2b54f0dbSXin Licpuinfo_x86_common_src_files = [ 45*2b54f0dbSXin Li "src/x86/init.c", 46*2b54f0dbSXin Li "src/x86/info.c", 47*2b54f0dbSXin Li "src/x86/name.c", 48*2b54f0dbSXin Li "src/x86/isa.c", 49*2b54f0dbSXin Li "src/x86/vendor.c", 50*2b54f0dbSXin Li "src/x86/uarch.c", 51*2b54f0dbSXin Li "src/x86/topology.c", 52*2b54f0dbSXin Li "src/x86/cache/init.c", 53*2b54f0dbSXin Li "src/x86/cache/descriptor.c", 54*2b54f0dbSXin Li "src/x86/cache/deterministic.c", 55*2b54f0dbSXin Li "src/x86/linux/cpuinfo.c", 56*2b54f0dbSXin Li "src/x86/linux/init.c", 57*2b54f0dbSXin Li] 58*2b54f0dbSXin Li 59*2b54f0dbSXin Licc_library_static { 60*2b54f0dbSXin Li name: "libcpuinfo", 61*2b54f0dbSXin Li export_include_dirs: ["include"], 62*2b54f0dbSXin Li vendor_available: true, 63*2b54f0dbSXin Li sdk_version: "current", 64*2b54f0dbSXin Li local_include_dirs: [ 65*2b54f0dbSXin Li "src", 66*2b54f0dbSXin Li ], 67*2b54f0dbSXin Li srcs: [ 68*2b54f0dbSXin Li "src/init.c", 69*2b54f0dbSXin Li "src/api.c", 70*2b54f0dbSXin Li "src/cache.c", 71*2b54f0dbSXin Li "src/linux/processors.c", 72*2b54f0dbSXin Li "src/linux/smallfile.c", 73*2b54f0dbSXin Li "src/linux/multiline.c", 74*2b54f0dbSXin Li "src/linux/cpulist.c", 75*2b54f0dbSXin Li ], 76*2b54f0dbSXin Li arch: { 77*2b54f0dbSXin Li arm: { 78*2b54f0dbSXin Li srcs: cpuinfo_arm_common_src_files + [ 79*2b54f0dbSXin Li "src/arm/linux/aarch32-isa.c", 80*2b54f0dbSXin Li ], 81*2b54f0dbSXin Li cflags: [ 82*2b54f0dbSXin Li "-mcpu=generic", 83*2b54f0dbSXin Li "-march=armv7-a", 84*2b54f0dbSXin Li ], 85*2b54f0dbSXin Li }, 86*2b54f0dbSXin Li arm64: { 87*2b54f0dbSXin Li srcs: cpuinfo_arm_common_src_files + [ 88*2b54f0dbSXin Li "src/arm/linux/aarch64-isa.c", 89*2b54f0dbSXin Li ], 90*2b54f0dbSXin Li }, 91*2b54f0dbSXin Li x86: { 92*2b54f0dbSXin Li srcs: cpuinfo_x86_common_src_files, 93*2b54f0dbSXin Li }, 94*2b54f0dbSXin Li x86_64: { 95*2b54f0dbSXin Li srcs: cpuinfo_x86_common_src_files, 96*2b54f0dbSXin Li }, 97*2b54f0dbSXin Li }, 98*2b54f0dbSXin Li cflags: [ 99*2b54f0dbSXin Li "-std=c99", 100*2b54f0dbSXin Li "-Oz", 101*2b54f0dbSXin Li "-D_GNU_SOURCE=1", 102*2b54f0dbSXin Li "-Wno-unused-function", 103*2b54f0dbSXin Li "-Wno-unused-parameter", 104*2b54f0dbSXin Li "-Wno-missing-field-initializers", 105*2b54f0dbSXin Li ], 106*2b54f0dbSXin Li whole_static_libs: [ 107*2b54f0dbSXin Li "libclog", 108*2b54f0dbSXin Li ], 109*2b54f0dbSXin Li} 110