1*1a3d31e3SAndroid Build Coastguard Worker// Copyright 2018 The Android Open Source Project 2*1a3d31e3SAndroid Build Coastguard Worker// 3*1a3d31e3SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*1a3d31e3SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*1a3d31e3SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*1a3d31e3SAndroid Build Coastguard Worker// 7*1a3d31e3SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*1a3d31e3SAndroid Build Coastguard Worker// 9*1a3d31e3SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*1a3d31e3SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*1a3d31e3SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*1a3d31e3SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*1a3d31e3SAndroid Build Coastguard Worker// limitations under the License. 14*1a3d31e3SAndroid Build Coastguard Worker 15*1a3d31e3SAndroid Build Coastguard Workerpackage { 16*1a3d31e3SAndroid Build Coastguard Worker default_applicable_licenses: ["external_blktrace_license"], 17*1a3d31e3SAndroid Build Coastguard Worker} 18*1a3d31e3SAndroid Build Coastguard Worker 19*1a3d31e3SAndroid Build Coastguard Worker// Added automatically by a large-scale-change that took the approach of 20*1a3d31e3SAndroid Build Coastguard Worker// 'apply every license found to every target'. While this makes sure we respect 21*1a3d31e3SAndroid Build Coastguard Worker// every license restriction, it may not be entirely correct. 22*1a3d31e3SAndroid Build Coastguard Worker// 23*1a3d31e3SAndroid Build Coastguard Worker// e.g. GPL in an MIT project might only apply to the contrib/ directory. 24*1a3d31e3SAndroid Build Coastguard Worker// 25*1a3d31e3SAndroid Build Coastguard Worker// Please consider splitting the single license below into multiple licenses, 26*1a3d31e3SAndroid Build Coastguard Worker// taking care not to lose any license_kind information, and overriding the 27*1a3d31e3SAndroid Build Coastguard Worker// default license using the 'licenses: [...]' property on targets as needed. 28*1a3d31e3SAndroid Build Coastguard Worker// 29*1a3d31e3SAndroid Build Coastguard Worker// For unused files, consider creating a 'fileGroup' with "//visibility:private" 30*1a3d31e3SAndroid Build Coastguard Worker// to attach the license to, and including a comment whether the files may be 31*1a3d31e3SAndroid Build Coastguard Worker// used in the current project. 32*1a3d31e3SAndroid Build Coastguard Worker// 33*1a3d31e3SAndroid Build Coastguard Worker// large-scale-change included anything that looked like it might be a license 34*1a3d31e3SAndroid Build Coastguard Worker// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc. 35*1a3d31e3SAndroid Build Coastguard Worker// 36*1a3d31e3SAndroid Build Coastguard Worker// Please consider removing redundant or irrelevant files from 'license_text:'. 37*1a3d31e3SAndroid Build Coastguard Worker// See: http://go/android-license-faq 38*1a3d31e3SAndroid Build Coastguard Workerlicense { 39*1a3d31e3SAndroid Build Coastguard Worker name: "external_blktrace_license", 40*1a3d31e3SAndroid Build Coastguard Worker visibility: [":__subpackages__"], 41*1a3d31e3SAndroid Build Coastguard Worker license_kinds: [ 42*1a3d31e3SAndroid Build Coastguard Worker "SPDX-license-identifier-GPL", 43*1a3d31e3SAndroid Build Coastguard Worker "SPDX-license-identifier-GPL-2.0", 44*1a3d31e3SAndroid Build Coastguard Worker "SPDX-license-identifier-LGPL", 45*1a3d31e3SAndroid Build Coastguard Worker "legacy_unencumbered", 46*1a3d31e3SAndroid Build Coastguard Worker ], 47*1a3d31e3SAndroid Build Coastguard Worker license_text: [ 48*1a3d31e3SAndroid Build Coastguard Worker "COPYING", 49*1a3d31e3SAndroid Build Coastguard Worker "LICENSE", 50*1a3d31e3SAndroid Build Coastguard Worker "NOTICE", 51*1a3d31e3SAndroid Build Coastguard Worker ], 52*1a3d31e3SAndroid Build Coastguard Worker} 53*1a3d31e3SAndroid Build Coastguard Worker 54*1a3d31e3SAndroid Build Coastguard Workercc_defaults { 55*1a3d31e3SAndroid Build Coastguard Worker name: "blktrace_defaults", 56*1a3d31e3SAndroid Build Coastguard Worker include_dirs: [ 57*1a3d31e3SAndroid Build Coastguard Worker "external/blktrace", 58*1a3d31e3SAndroid Build Coastguard Worker "external/blktrace/btt", 59*1a3d31e3SAndroid Build Coastguard Worker ], 60*1a3d31e3SAndroid Build Coastguard Worker c_std: "gnu17", 61*1a3d31e3SAndroid Build Coastguard Worker cflags: [ 62*1a3d31e3SAndroid Build Coastguard Worker "-O2", 63*1a3d31e3SAndroid Build Coastguard Worker "-g", 64*1a3d31e3SAndroid Build Coastguard Worker "-W", 65*1a3d31e3SAndroid Build Coastguard Worker "-Wall", 66*1a3d31e3SAndroid Build Coastguard Worker "-D_GNU_SOURCE", 67*1a3d31e3SAndroid Build Coastguard Worker "-D_LARGEFILE_SOURCE", 68*1a3d31e3SAndroid Build Coastguard Worker "-D_FILE_OFFSET_BITS=64", 69*1a3d31e3SAndroid Build Coastguard Worker "-Wno-implicit-function-declaration", 70*1a3d31e3SAndroid Build Coastguard Worker "-Wno-pointer-arith", 71*1a3d31e3SAndroid Build Coastguard Worker "-Wno-unused-function", 72*1a3d31e3SAndroid Build Coastguard Worker ], 73*1a3d31e3SAndroid Build Coastguard Worker} 74*1a3d31e3SAndroid Build Coastguard Worker 75*1a3d31e3SAndroid Build Coastguard Workercc_binary { 76*1a3d31e3SAndroid Build Coastguard Worker name: "blkparse", 77*1a3d31e3SAndroid Build Coastguard Worker defaults: ["blktrace_defaults"], 78*1a3d31e3SAndroid Build Coastguard Worker srcs: [ 79*1a3d31e3SAndroid Build Coastguard Worker "blkparse.c", 80*1a3d31e3SAndroid Build Coastguard Worker "blkparse_fmt.c", 81*1a3d31e3SAndroid Build Coastguard Worker "rbtree.c", 82*1a3d31e3SAndroid Build Coastguard Worker "act_mask.c", 83*1a3d31e3SAndroid Build Coastguard Worker "strverscmp.c", 84*1a3d31e3SAndroid Build Coastguard Worker ], 85*1a3d31e3SAndroid Build Coastguard Worker 86*1a3d31e3SAndroid Build Coastguard Worker} 87*1a3d31e3SAndroid Build Coastguard Worker 88*1a3d31e3SAndroid Build Coastguard Workercc_binary { 89*1a3d31e3SAndroid Build Coastguard Worker name: "blktrace", 90*1a3d31e3SAndroid Build Coastguard Worker defaults: ["blktrace_defaults"], 91*1a3d31e3SAndroid Build Coastguard Worker srcs: [ 92*1a3d31e3SAndroid Build Coastguard Worker "blktrace.c", 93*1a3d31e3SAndroid Build Coastguard Worker "act_mask.c", 94*1a3d31e3SAndroid Build Coastguard Worker ], 95*1a3d31e3SAndroid Build Coastguard Worker} 96*1a3d31e3SAndroid Build Coastguard Worker 97*1a3d31e3SAndroid Build Coastguard Workercc_binary { 98*1a3d31e3SAndroid Build Coastguard Worker name: "verify_blkparse", 99*1a3d31e3SAndroid Build Coastguard Worker defaults: ["blktrace_defaults"], 100*1a3d31e3SAndroid Build Coastguard Worker srcs: ["verify_blkparse.c"], 101*1a3d31e3SAndroid Build Coastguard Worker include_dirs: ["external/blktrace/"], 102*1a3d31e3SAndroid Build Coastguard Worker} 103*1a3d31e3SAndroid Build Coastguard Worker 104*1a3d31e3SAndroid Build Coastguard Workercc_binary { 105*1a3d31e3SAndroid Build Coastguard Worker name: "blkrawverify", 106*1a3d31e3SAndroid Build Coastguard Worker defaults: ["blktrace_defaults"], 107*1a3d31e3SAndroid Build Coastguard Worker srcs: ["blkrawverify.c"], 108*1a3d31e3SAndroid Build Coastguard Worker} 109*1a3d31e3SAndroid Build Coastguard Worker 110*1a3d31e3SAndroid Build Coastguard Workercc_binary { 111*1a3d31e3SAndroid Build Coastguard Worker name: "blkiomon", 112*1a3d31e3SAndroid Build Coastguard Worker defaults: ["blktrace_defaults"], 113*1a3d31e3SAndroid Build Coastguard Worker srcs: [ 114*1a3d31e3SAndroid Build Coastguard Worker "blkiomon.c", 115*1a3d31e3SAndroid Build Coastguard Worker "rbtree.c", 116*1a3d31e3SAndroid Build Coastguard Worker ], 117*1a3d31e3SAndroid Build Coastguard Worker} 118*1a3d31e3SAndroid Build Coastguard Worker 119*1a3d31e3SAndroid Build Coastguard Workercc_binary { 120*1a3d31e3SAndroid Build Coastguard Worker name: "btt", 121*1a3d31e3SAndroid Build Coastguard Worker defaults: ["blktrace_defaults"], 122*1a3d31e3SAndroid Build Coastguard Worker srcs: [ 123*1a3d31e3SAndroid Build Coastguard Worker "btt/args.c", 124*1a3d31e3SAndroid Build Coastguard Worker "btt/bt_timeline.c", 125*1a3d31e3SAndroid Build Coastguard Worker "btt/devmap.c", 126*1a3d31e3SAndroid Build Coastguard Worker "btt/devs.c", 127*1a3d31e3SAndroid Build Coastguard Worker "btt/dip_rb.c", 128*1a3d31e3SAndroid Build Coastguard Worker "btt/iostat.c", 129*1a3d31e3SAndroid Build Coastguard Worker "btt/latency.c", 130*1a3d31e3SAndroid Build Coastguard Worker "btt/misc.c", 131*1a3d31e3SAndroid Build Coastguard Worker "btt/output.c", 132*1a3d31e3SAndroid Build Coastguard Worker "btt/proc.c", 133*1a3d31e3SAndroid Build Coastguard Worker "btt/seek.c", 134*1a3d31e3SAndroid Build Coastguard Worker "btt/trace.c", 135*1a3d31e3SAndroid Build Coastguard Worker "btt/trace_complete.c", 136*1a3d31e3SAndroid Build Coastguard Worker "btt/trace_im.c", 137*1a3d31e3SAndroid Build Coastguard Worker "btt/trace_issue.c", 138*1a3d31e3SAndroid Build Coastguard Worker "btt/trace_queue.c", 139*1a3d31e3SAndroid Build Coastguard Worker "btt/trace_remap.c", 140*1a3d31e3SAndroid Build Coastguard Worker "btt/trace_requeue.c", 141*1a3d31e3SAndroid Build Coastguard Worker "rbtree.c", 142*1a3d31e3SAndroid Build Coastguard Worker "btt/mmap.c", 143*1a3d31e3SAndroid Build Coastguard Worker "btt/trace_plug.c", 144*1a3d31e3SAndroid Build Coastguard Worker "btt/bno_dump.c", 145*1a3d31e3SAndroid Build Coastguard Worker "btt/unplug_hist.c", 146*1a3d31e3SAndroid Build Coastguard Worker "btt/q2d.c", 147*1a3d31e3SAndroid Build Coastguard Worker "btt/aqd.c", 148*1a3d31e3SAndroid Build Coastguard Worker "btt/plat.c", 149*1a3d31e3SAndroid Build Coastguard Worker "btt/p_live.c", 150*1a3d31e3SAndroid Build Coastguard Worker "btt/rstats.c", 151*1a3d31e3SAndroid Build Coastguard Worker ], 152*1a3d31e3SAndroid Build Coastguard Worker} 153