xref: /aosp_15_r20/system/netd/Android.bp (revision 8542734a0dd1db395a4d42aae09c37f3c3c3e7a1)
1*8542734aSAndroid Build Coastguard Workerpackage {
2*8542734aSAndroid Build Coastguard Worker    default_applicable_licenses: ["system_netd_license"],
3*8542734aSAndroid Build Coastguard Worker}
4*8542734aSAndroid Build Coastguard Worker
5*8542734aSAndroid Build Coastguard Worker// Added automatically by a large-scale-change
6*8542734aSAndroid Build Coastguard Worker// See: http://go/android-license-faq
7*8542734aSAndroid Build Coastguard Workerlicense {
8*8542734aSAndroid Build Coastguard Worker    name: "system_netd_license",
9*8542734aSAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
10*8542734aSAndroid Build Coastguard Worker    license_kinds: [
11*8542734aSAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
12*8542734aSAndroid Build Coastguard Worker    ],
13*8542734aSAndroid Build Coastguard Worker    license_text: [
14*8542734aSAndroid Build Coastguard Worker        "NOTICE",
15*8542734aSAndroid Build Coastguard Worker    ],
16*8542734aSAndroid Build Coastguard Worker}
17*8542734aSAndroid Build Coastguard Worker
18*8542734aSAndroid Build Coastguard Workercc_library_headers {
19*8542734aSAndroid Build Coastguard Worker    name: "libnetd_client_headers",
20*8542734aSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
21*8542734aSAndroid Build Coastguard Worker    apex_available: [
22*8542734aSAndroid Build Coastguard Worker        "//apex_available:platform",
23*8542734aSAndroid Build Coastguard Worker    ],
24*8542734aSAndroid Build Coastguard Worker}
25*8542734aSAndroid Build Coastguard Worker
26*8542734aSAndroid Build Coastguard Workercc_library_headers {
27*8542734aSAndroid Build Coastguard Worker    name: "libnetdbinder_utils_headers",
28*8542734aSAndroid Build Coastguard Worker    export_include_dirs: ["include/binder_utils"],
29*8542734aSAndroid Build Coastguard Worker    apex_available: [
30*8542734aSAndroid Build Coastguard Worker        "//apex_available:platform",
31*8542734aSAndroid Build Coastguard Worker        "com.android.resolv",
32*8542734aSAndroid Build Coastguard Worker    ],
33*8542734aSAndroid Build Coastguard Worker    min_sdk_version: "29",
34*8542734aSAndroid Build Coastguard Worker}
35*8542734aSAndroid Build Coastguard Worker
36*8542734aSAndroid Build Coastguard Workercc_library_headers {
37*8542734aSAndroid Build Coastguard Worker    name: "netd_mainline_headers",
38*8542734aSAndroid Build Coastguard Worker    export_include_dirs: ["include/mainline"],
39*8542734aSAndroid Build Coastguard Worker    apex_available: [
40*8542734aSAndroid Build Coastguard Worker        "//apex_available:platform",
41*8542734aSAndroid Build Coastguard Worker        "com.android.tethering",
42*8542734aSAndroid Build Coastguard Worker    ],
43*8542734aSAndroid Build Coastguard Worker    sdk_version: "29",
44*8542734aSAndroid Build Coastguard Worker    min_sdk_version: "29",
45*8542734aSAndroid Build Coastguard Worker}
46*8542734aSAndroid Build Coastguard Worker
47*8542734aSAndroid Build Coastguard Workercc_defaults {
48*8542734aSAndroid Build Coastguard Worker    name: "netd_defaults",
49*8542734aSAndroid Build Coastguard Worker    cflags: [
50*8542734aSAndroid Build Coastguard Worker        "-Wall",
51*8542734aSAndroid Build Coastguard Worker        "-Werror",
52*8542734aSAndroid Build Coastguard Worker        // Override -Wno-error=implicit-fallthrough from soong
53*8542734aSAndroid Build Coastguard Worker        "-Werror=implicit-fallthrough",
54*8542734aSAndroid Build Coastguard Worker        "-Werror=sometimes-uninitialized",
55*8542734aSAndroid Build Coastguard Worker        "-Werror=conditional-uninitialized",
56*8542734aSAndroid Build Coastguard Worker        "-Wnullable-to-nonnull-conversion",
57*8542734aSAndroid Build Coastguard Worker        "-Wsign-compare",
58*8542734aSAndroid Build Coastguard Worker        "-Wthread-safety",
59*8542734aSAndroid Build Coastguard Worker        "-Wunused-parameter",
60*8542734aSAndroid Build Coastguard Worker        "-Wuninitialized",
61*8542734aSAndroid Build Coastguard Worker    ],
62*8542734aSAndroid Build Coastguard Worker    tidy: true,
63*8542734aSAndroid Build Coastguard Worker    cpp_std: "experimental",
64*8542734aSAndroid Build Coastguard Worker    tidy_checks: [
65*8542734aSAndroid Build Coastguard Worker        "android-*",
66*8542734aSAndroid Build Coastguard Worker        "bugprone-*",
67*8542734aSAndroid Build Coastguard Worker        "cert-*",
68*8542734aSAndroid Build Coastguard Worker        "clang-analyzer-security*",
69*8542734aSAndroid Build Coastguard Worker        "google-*",
70*8542734aSAndroid Build Coastguard Worker        "misc-*",
71*8542734aSAndroid Build Coastguard Worker        "performance-*",
72*8542734aSAndroid Build Coastguard Worker        "-bugprone-macro-parentheses",
73*8542734aSAndroid Build Coastguard Worker        "-bugprone-narrowing-conversions",  // lots of unsigned -> int conversions
74*8542734aSAndroid Build Coastguard Worker        "-bugprone-unhandled-self-assignment", // found in DnsResolver/stats.pb.h
75*8542734aSAndroid Build Coastguard Worker        "-cert-dcl50-cpp",
76*8542734aSAndroid Build Coastguard Worker        "-cert-err34-c",  // TODO: re-enable after removing atoi() and sscanf() calls
77*8542734aSAndroid Build Coastguard Worker        "-cert-oop54-cpp", // found in DnsResolver/stats.pb.h
78*8542734aSAndroid Build Coastguard Worker        "-google-default-arguments",
79*8542734aSAndroid Build Coastguard Worker        "-google-explicit-constructor",
80*8542734aSAndroid Build Coastguard Worker        "-google-global-names-in-headers",
81*8542734aSAndroid Build Coastguard Worker        "-google-readability-*",  // Too pedantic
82*8542734aSAndroid Build Coastguard Worker        "-google-runtime-int",  // Too many unavoidable warnings due to strtol()
83*8542734aSAndroid Build Coastguard Worker        "-google-runtime-references",  // Grandfathered usage of pass by non-const reference
84*8542734aSAndroid Build Coastguard Worker        "-misc-non-private-member-variables-in-classes",  // Also complains about structs
85*8542734aSAndroid Build Coastguard Worker        "-performance-noexcept-move-constructor",
86*8542734aSAndroid Build Coastguard Worker        "-performance-unnecessary-value-param",
87*8542734aSAndroid Build Coastguard Worker    ],
88*8542734aSAndroid Build Coastguard Worker    tidy_checks_as_errors: [
89*8542734aSAndroid Build Coastguard Worker        "android-*",
90*8542734aSAndroid Build Coastguard Worker        "bugprone-*",
91*8542734aSAndroid Build Coastguard Worker        "cert-*",
92*8542734aSAndroid Build Coastguard Worker        "clang-analyzer-security*",
93*8542734aSAndroid Build Coastguard Worker        "google-*",
94*8542734aSAndroid Build Coastguard Worker        "misc-*",
95*8542734aSAndroid Build Coastguard Worker        "performance-*",
96*8542734aSAndroid Build Coastguard Worker    ],
97*8542734aSAndroid Build Coastguard Worker}
98