1*d4726bddSHONG Yifanload( 2*d4726bddSHONG Yifan "@rules_rust//rust:defs.bzl", 3*d4726bddSHONG Yifan "rust_binary", 4*d4726bddSHONG Yifan "rust_clippy", 5*d4726bddSHONG Yifan "rust_library", 6*d4726bddSHONG Yifan "rust_proc_macro", 7*d4726bddSHONG Yifan "rust_shared_library", 8*d4726bddSHONG Yifan "rust_static_library", 9*d4726bddSHONG Yifan "rust_test", 10*d4726bddSHONG Yifan) 11*d4726bddSHONG Yifan 12*d4726bddSHONG Yifanpackage(default_visibility = ["//test:__subpackages__"]) 13*d4726bddSHONG Yifan 14*d4726bddSHONG Yifan# Declaration of passing targets. 15*d4726bddSHONG Yifan 16*d4726bddSHONG Yifanrust_binary( 17*d4726bddSHONG Yifan name = "ok_binary", 18*d4726bddSHONG Yifan srcs = ["src/main.rs"], 19*d4726bddSHONG Yifan edition = "2018", 20*d4726bddSHONG Yifan) 21*d4726bddSHONG Yifan 22*d4726bddSHONG Yifanrust_library( 23*d4726bddSHONG Yifan name = "ok_library", 24*d4726bddSHONG Yifan srcs = ["src/lib.rs"], 25*d4726bddSHONG Yifan edition = "2018", 26*d4726bddSHONG Yifan) 27*d4726bddSHONG Yifan 28*d4726bddSHONG Yifanrust_shared_library( 29*d4726bddSHONG Yifan name = "ok_shared_library", 30*d4726bddSHONG Yifan srcs = ["src/lib.rs"], 31*d4726bddSHONG Yifan edition = "2018", 32*d4726bddSHONG Yifan) 33*d4726bddSHONG Yifan 34*d4726bddSHONG Yifanrust_static_library( 35*d4726bddSHONG Yifan name = "ok_static_library", 36*d4726bddSHONG Yifan srcs = ["src/lib.rs"], 37*d4726bddSHONG Yifan edition = "2018", 38*d4726bddSHONG Yifan) 39*d4726bddSHONG Yifan 40*d4726bddSHONG Yifanrust_test( 41*d4726bddSHONG Yifan name = "ok_test", 42*d4726bddSHONG Yifan srcs = ["src/lib.rs"], 43*d4726bddSHONG Yifan edition = "2018", 44*d4726bddSHONG Yifan) 45*d4726bddSHONG Yifan 46*d4726bddSHONG Yifanrust_proc_macro( 47*d4726bddSHONG Yifan name = "ok_proc_macro", 48*d4726bddSHONG Yifan srcs = ["src/proc_macro.rs"], 49*d4726bddSHONG Yifan edition = "2018", 50*d4726bddSHONG Yifan) 51*d4726bddSHONG Yifan 52*d4726bddSHONG Yifan# Clippy analysis of passing targets. 53*d4726bddSHONG Yifan 54*d4726bddSHONG Yifanrust_clippy( 55*d4726bddSHONG Yifan name = "ok_binary_clippy", 56*d4726bddSHONG Yifan deps = [":ok_binary"], 57*d4726bddSHONG Yifan) 58*d4726bddSHONG Yifan 59*d4726bddSHONG Yifanrust_clippy( 60*d4726bddSHONG Yifan name = "ok_library_clippy", 61*d4726bddSHONG Yifan deps = [":ok_library"], 62*d4726bddSHONG Yifan) 63*d4726bddSHONG Yifan 64*d4726bddSHONG Yifanrust_clippy( 65*d4726bddSHONG Yifan name = "ok_shared_library_clippy", 66*d4726bddSHONG Yifan deps = [":ok_shared_library"], 67*d4726bddSHONG Yifan) 68*d4726bddSHONG Yifan 69*d4726bddSHONG Yifanrust_clippy( 70*d4726bddSHONG Yifan name = "ok_static_library_clippy", 71*d4726bddSHONG Yifan deps = [":ok_static_library"], 72*d4726bddSHONG Yifan) 73*d4726bddSHONG Yifan 74*d4726bddSHONG Yifanrust_clippy( 75*d4726bddSHONG Yifan name = "ok_test_clippy", 76*d4726bddSHONG Yifan testonly = True, 77*d4726bddSHONG Yifan deps = [":ok_test"], 78*d4726bddSHONG Yifan) 79*d4726bddSHONG Yifan 80*d4726bddSHONG Yifanrust_clippy( 81*d4726bddSHONG Yifan name = "ok_proc_macro_clippy", 82*d4726bddSHONG Yifan deps = [":ok_proc_macro"], 83*d4726bddSHONG Yifan) 84*d4726bddSHONG Yifan 85*d4726bddSHONG Yifan# Declaration of failing targets. 86*d4726bddSHONG Yifan 87*d4726bddSHONG Yifanrust_binary( 88*d4726bddSHONG Yifan name = "bad_binary", 89*d4726bddSHONG Yifan srcs = ["bad_src/main.rs"], 90*d4726bddSHONG Yifan edition = "2018", 91*d4726bddSHONG Yifan tags = ["noclippy"], 92*d4726bddSHONG Yifan) 93*d4726bddSHONG Yifan 94*d4726bddSHONG Yifanrust_library( 95*d4726bddSHONG Yifan name = "bad_library", 96*d4726bddSHONG Yifan srcs = ["bad_src/lib.rs"], 97*d4726bddSHONG Yifan edition = "2018", 98*d4726bddSHONG Yifan tags = ["noclippy"], 99*d4726bddSHONG Yifan) 100*d4726bddSHONG Yifan 101*d4726bddSHONG Yifanrust_library( 102*d4726bddSHONG Yifan name = "bad_shared_library", 103*d4726bddSHONG Yifan srcs = ["bad_src/lib.rs"], 104*d4726bddSHONG Yifan edition = "2018", 105*d4726bddSHONG Yifan tags = ["noclippy"], 106*d4726bddSHONG Yifan) 107*d4726bddSHONG Yifan 108*d4726bddSHONG Yifanrust_library( 109*d4726bddSHONG Yifan name = "bad_static_library", 110*d4726bddSHONG Yifan srcs = ["bad_src/lib.rs"], 111*d4726bddSHONG Yifan edition = "2018", 112*d4726bddSHONG Yifan tags = ["noclippy"], 113*d4726bddSHONG Yifan) 114*d4726bddSHONG Yifan 115*d4726bddSHONG Yifanrust_test( 116*d4726bddSHONG Yifan name = "bad_test", 117*d4726bddSHONG Yifan srcs = ["bad_src/lib.rs"], 118*d4726bddSHONG Yifan edition = "2018", 119*d4726bddSHONG Yifan tags = ["noclippy"], 120*d4726bddSHONG Yifan) 121*d4726bddSHONG Yifan 122*d4726bddSHONG Yifanrust_proc_macro( 123*d4726bddSHONG Yifan name = "bad_proc_macro", 124*d4726bddSHONG Yifan srcs = ["bad_src/proc_macro.rs"], 125*d4726bddSHONG Yifan edition = "2018", 126*d4726bddSHONG Yifan tags = ["noclippy"], 127*d4726bddSHONG Yifan) 128*d4726bddSHONG Yifan 129*d4726bddSHONG Yifan# Clippy analysis of failing targets. 130*d4726bddSHONG Yifan 131*d4726bddSHONG Yifanrust_clippy( 132*d4726bddSHONG Yifan name = "bad_binary_clippy", 133*d4726bddSHONG Yifan tags = ["manual"], 134*d4726bddSHONG Yifan deps = [":bad_binary"], 135*d4726bddSHONG Yifan) 136*d4726bddSHONG Yifan 137*d4726bddSHONG Yifanrust_clippy( 138*d4726bddSHONG Yifan name = "bad_library_clippy", 139*d4726bddSHONG Yifan tags = ["manual"], 140*d4726bddSHONG Yifan deps = [":bad_library"], 141*d4726bddSHONG Yifan) 142*d4726bddSHONG Yifan 143*d4726bddSHONG Yifanrust_clippy( 144*d4726bddSHONG Yifan name = "bad_shared_library_clippy", 145*d4726bddSHONG Yifan tags = ["manual"], 146*d4726bddSHONG Yifan deps = [":bad_shared_library"], 147*d4726bddSHONG Yifan) 148*d4726bddSHONG Yifan 149*d4726bddSHONG Yifanrust_clippy( 150*d4726bddSHONG Yifan name = "bad_static_library_clippy", 151*d4726bddSHONG Yifan tags = ["manual"], 152*d4726bddSHONG Yifan deps = [":bad_static_library"], 153*d4726bddSHONG Yifan) 154*d4726bddSHONG Yifan 155*d4726bddSHONG Yifanrust_clippy( 156*d4726bddSHONG Yifan name = "bad_test_clippy", 157*d4726bddSHONG Yifan testonly = True, 158*d4726bddSHONG Yifan tags = ["manual"], 159*d4726bddSHONG Yifan deps = [":bad_test"], 160*d4726bddSHONG Yifan) 161*d4726bddSHONG Yifan 162*d4726bddSHONG Yifanrust_clippy( 163*d4726bddSHONG Yifan name = "bad_proc_macro_clippy", 164*d4726bddSHONG Yifan tags = ["manual"], 165*d4726bddSHONG Yifan deps = [":bad_proc_macro"], 166*d4726bddSHONG Yifan) 167*d4726bddSHONG Yifan 168*d4726bddSHONG Yifansh_binary( 169*d4726bddSHONG Yifan name = "clippy_failure_test", 170*d4726bddSHONG Yifan srcs = ["clippy_failure_test.sh"], 171*d4726bddSHONG Yifan) 172