3218a81a57
Test: TreeHugger Signed-off-by: Maciej Żenczykowski <maze@google.com> Change-Id: I075b2a6166454d36599b0ecc25ccaeec545d183c
84 lines
2.4 KiB
Text
84 lines
2.4 KiB
Text
//
|
|
// Copyright (C) 2023 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.
|
|
//
|
|
|
|
package {
|
|
default_team: "trendy_team_fwk_core_networking",
|
|
}
|
|
|
|
install_symlink {
|
|
name: "mainline_tethering_platform_components",
|
|
|
|
symlink_target: "/apex/com.android.tethering/bin/ethtool",
|
|
// installed_location is relative to /system because that's the default partition for soong
|
|
// modules, unless we add something like `system_ext_specific: true` like in hwservicemanager.
|
|
installed_location: "bin/ethtool",
|
|
|
|
init_rc: ["netbpfload.rc"],
|
|
required: ["bpfloader"],
|
|
}
|
|
|
|
cc_binary {
|
|
name: "netbpfload",
|
|
|
|
defaults: ["bpf_defaults"],
|
|
cflags: [
|
|
"-Wall",
|
|
"-Werror",
|
|
"-Wthread-safety",
|
|
],
|
|
sanitize: {
|
|
integer_overflow: true,
|
|
},
|
|
|
|
header_libs: ["bpf_headers"],
|
|
shared_libs: [
|
|
"libbase",
|
|
"liblog",
|
|
],
|
|
srcs: [
|
|
"loader.cpp",
|
|
"NetBpfLoad.cpp",
|
|
],
|
|
apex_available: [
|
|
"com.android.tethering",
|
|
"//apex_available:platform",
|
|
],
|
|
// really should be Android 13/T (33), but we cannot include binaries built
|
|
// against newer sdk in the apex, which still targets 30(R):
|
|
// module "netbpfload" variant "android_x86_apex30": should support
|
|
// min_sdk_version(30) for "com.android.tethering": newer SDK(34).
|
|
min_sdk_version: "30",
|
|
installable: false,
|
|
}
|
|
|
|
// Versioned netbpfload init rc: init system will process it only on api T/33+ devices
|
|
// Note: R[30] S[31] Sv2[32] T[33] U[34] V[35])
|
|
//
|
|
// For details of versioned rc files see:
|
|
// https://android.googlesource.com/platform/system/core/+/HEAD/init/README.md#versioned-rc-files-within-apexs
|
|
prebuilt_etc {
|
|
name: "netbpfload.mainline.rc",
|
|
src: "netbpfload.mainline.rc",
|
|
filename: "netbpfload.33rc",
|
|
installable: false,
|
|
}
|
|
|
|
prebuilt_etc {
|
|
name: "netbpfload.35rc",
|
|
src: "netbpfload.35rc",
|
|
filename: "netbpfload.35rc",
|
|
installable: false,
|
|
}
|