blob: 2487696ab5f0f62791615c3065b9847532f07ea0 [file] [log] [blame]
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -07001# Copyright (C) 2014 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15LOCAL_PATH := $(call my-dir)
San Mehatd1830422010-01-15 08:02:39 -080016
Lorenzo Colitti89faa342016-02-26 11:38:47 +090017###
18### netd service AIDL interface.
19###
San Mehatd1830422010-01-15 08:02:39 -080020include $(CLEAR_VARS)
21
Ben Schwartza13c23a2017-10-02 12:06:21 -040022LOCAL_CFLAGS := -Wall -Werror -Wthread-safety
Tri Voa4267722017-08-16 10:19:02 -070023LOCAL_MODULE := libnetdaidl_static
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090024LOCAL_SHARED_LIBRARIES := \
25 libbinder \
26 libutils
Robin Lee9f9aae92016-03-30 18:33:07 +010027LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/binder
Lorenzo Colitti9a8a9ff2017-01-31 19:06:59 +090028LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder frameworks/native/aidl/binder
Robin Lee9f9aae92016-03-30 18:33:07 +010029LOCAL_C_INCLUDES := $(LOCAL_PATH)/binder
30LOCAL_SRC_FILES := \
31 binder/android/net/INetd.aidl \
32 binder/android/net/UidRange.cpp
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090033
Tri Voa4267722017-08-16 10:19:02 -070034include $(BUILD_STATIC_LIBRARY)
35
36include $(CLEAR_VARS)
37
Ben Schwartza13c23a2017-10-02 12:06:21 -040038LOCAL_CFLAGS := -Wall -Werror -Wthread-safety
Tri Voa4267722017-08-16 10:19:02 -070039LOCAL_MODULE := libnetdaidl
40LOCAL_SHARED_LIBRARIES := \
41 libbinder \
42 libutils
43LOCAL_WHOLE_STATIC_LIBRARIES := libnetdaidl_static
44LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/binder
45
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090046include $(BUILD_SHARED_LIBRARY)
47
Lorenzo Colitti89faa342016-02-26 11:38:47 +090048###
49### netd daemon.
50###
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090051include $(CLEAR_VARS)
52
Colin Crosse55ec1b2014-01-22 23:51:53 -080053LOCAL_C_INCLUDES := \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070054 $(call include-path-for, libhardware_legacy)/hardware_legacy \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070055 bionic/libc/dns/include \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070056 external/mdnsresponder/mDNSShared \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070057 system/netd/include \
San Mehatd1830422010-01-15 08:02:39 -080058
Ben Schwartzded1b702017-10-25 14:41:02 -040059LOCAL_CPPFLAGS := -Wall -Werror -Wthread-safety -Wnullable-to-nonnull-conversion
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070060LOCAL_MODULE := netd
Dmitry Shmidt31fd6c52010-03-12 10:01:58 -080061
Pirama Arumuga Nainardde4a552016-06-28 10:56:59 -070062# Bug: http://b/29823425 Disable -Wvarargs for Clang update to r271374
Nathan Harolde2dd4c72017-04-19 11:09:11 -070063LOCAL_CPPFLAGS += -Wno-varargs \
64
65ifeq ($(TARGET_ARCH), x86)
66ifneq ($(TARGET_PRODUCT), gce_x86_phone)
67 LOCAL_CPPFLAGS += -D NETLINK_COMPAT32
68endif
69endif
Pirama Arumuga Nainardde4a552016-06-28 10:56:59 -070070
Tom Cherryc149ef72015-08-14 13:06:31 -070071LOCAL_INIT_RC := netd.rc
72
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070073LOCAL_SHARED_LIBRARIES := \
Niranjan Pendharkar7e08f852017-07-24 11:40:05 -070074 android.system.net.netd@1.0 \
Lorenzo Colittif91682c2018-02-07 17:43:31 +090075 android.system.net.netd@1.1 \
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090076 libbinder \
Chenbo Fengc10a8a42017-12-15 13:56:33 -080077 libbpf \
Ben Schwartze7601812017-04-28 16:38:29 -040078 libcrypto \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070079 libcutils \
80 libdl \
Niranjan Pendharkar7e08f852017-07-24 11:40:05 -070081 libhidlbase \
82 libhidltransport \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070083 liblog \
84 liblogwrap \
85 libmdnssd \
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090086 libnetdaidl \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070087 libnetutils \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +090088 libnetdutils \
Lorenzo Colitti09175be2017-11-17 14:01:21 +090089 libselinux \
Ben Schwartze7601812017-04-28 16:38:29 -040090 libssl \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070091 libsysutils \
Dan Albert5407e142015-03-16 10:05:59 -070092 libbase \
Elliott Hughesd1614062015-02-02 18:08:59 -080093 libutils \
Jeff Sharkeyfbe497f2014-10-28 16:50:07 -070094 libpcap \
Chenbo Feng33cc1032017-10-23 15:16:37 -070095 libqtaguid \
Jeff Sharkeyfbe497f2014-10-28 16:50:07 -070096
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070097LOCAL_SRC_FILES := \
98 BandwidthController.cpp \
99 ClatdController.cpp \
100 CommandListener.cpp \
Pierre Imai1cfa5432016-02-24 18:00:03 +0900101 Controllers.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700102 DnsProxyListener.cpp \
Lorenzo Colitti36679362015-02-25 10:26:19 +0900103 DummyNetwork.cpp \
Erik Kline2d3a1632016-03-15 16:33:48 +0900104 DumpWriter.cpp \
Michal Karpinskid5440112016-10-06 16:56:04 +0100105 EventReporter.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700106 FirewallController.cpp \
107 FwmarkServer.cpp \
108 IdletimerController.cpp \
109 InterfaceController.cpp \
Narayan Kamatha5ace892017-01-06 15:10:02 +0000110 IptablesRestoreController.cpp \
Sreeram Ramachandran6a773532014-07-11 09:10:20 -0700111 LocalNetwork.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700112 MDnsSdListener.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700113 NetdCommand.cpp \
114 NetdConstants.cpp \
Niranjan Pendharkar7e08f852017-07-24 11:40:05 -0700115 NetdHwService.cpp \
Lorenzo Colittie4d626e2016-02-02 17:19:04 +0900116 NetdNativeService.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700117 NetlinkHandler.cpp \
118 NetlinkManager.cpp \
Lorenzo Colitti1ef549d2017-02-13 18:32:09 +0900119 NetlinkCommands.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900120 NetlinkListener.cpp \
Sreeram Ramachandranf4f6c8d2014-06-23 09:54:06 -0700121 Network.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700122 NetworkController.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900123 NFLogListener.cpp \
Sreeram Ramachandranf4f6c8d2014-06-23 09:54:06 -0700124 PhysicalNetwork.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700125 PppController.cpp \
126 ResolverController.cpp \
127 RouteController.cpp \
Lorenzo Colitti8464e1e2016-02-05 00:57:26 +0900128 SockDiag.cpp \
Jeff Sharkeyfbe497f2014-10-28 16:50:07 -0700129 StrictController.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700130 TetherController.cpp \
Chenbo Fengf2759682017-10-10 17:31:57 -0700131 TrafficController.cpp \
Sreeram Ramachandranb1425cc2014-06-23 18:54:27 -0700132 UidRanges.cpp \
Sreeram Ramachandran4043f012014-06-23 12:41:37 -0700133 VirtualNetwork.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900134 WakeupController.cpp \
Nathan Harold1a371532017-01-30 12:30:48 -0800135 XfrmController.cpp \
Hugo Benichi7b314e12018-01-15 21:54:00 +0900136 TcpSocketMonitor.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700137 main.cpp \
138 oem_iptables_hook.cpp \
Robin Leedc0d5782016-07-20 14:17:11 +0100139 binder/android/net/UidRange.cpp \
Michal Karpinski50051342016-09-15 17:05:36 +0900140 binder/android/net/metrics/INetdEventListener.aidl \
Ben Schwartz66810f62017-10-16 19:27:46 -0400141 dns/DnsTlsDispatcher.cpp \
Ben Schwartz8d1e7a62017-10-25 14:41:02 -0400142 dns/DnsTlsQueryMap.cpp \
Ben Schwartze7601812017-04-28 16:38:29 -0400143 dns/DnsTlsTransport.cpp \
Ben Schwartz66810f62017-10-16 19:27:46 -0400144 dns/DnsTlsServer.cpp \
Ben Schwartzded1b702017-10-25 14:41:02 -0400145 dns/DnsTlsSessionCache.cpp \
146 dns/DnsTlsSocket.cpp \
Lorenzo Colitti6c977162016-04-12 23:28:50 +0900147
148LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
San Mehatd1830422010-01-15 08:02:39 -0800149
San Mehatd1830422010-01-15 08:02:39 -0800150include $(BUILD_EXECUTABLE)
151
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900152
153###
154### ndc binary.
155###
San Mehatd1830422010-01-15 08:02:39 -0800156include $(CLEAR_VARS)
San Mehatd1830422010-01-15 08:02:39 -0800157
Ben Schwartza13c23a2017-10-02 12:06:21 -0400158LOCAL_CFLAGS := -Wall -Werror -Wthread-safety
Thurston Hou Yeen Danga8352e92016-06-01 11:02:29 -0700159LOCAL_SANITIZE := unsigned-integer-overflow
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700160LOCAL_CLANG := true
161LOCAL_MODULE := ndc
San Mehatd1830422010-01-15 08:02:39 -0800162LOCAL_SHARED_LIBRARIES := libcutils
Elliott Hughes12c32782016-06-13 13:28:17 -0700163LOCAL_SRC_FILES := ndc.cpp
San Mehatd1830422010-01-15 08:02:39 -0800164
165include $(BUILD_EXECUTABLE)
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900166
167###
168### netd unit tests.
169###
170include $(CLEAR_VARS)
Pierre Imaib19fcc72016-03-11 17:54:48 +0900171LOCAL_MODULE := netd_unit_test
Dan Shi8190e182017-03-26 22:05:37 -0700172LOCAL_COMPATIBILITY_SUITE := device-tests
Lorenzo Colitticd283772017-01-31 19:00:49 +0900173LOCAL_SANITIZE := unsigned-integer-overflow
Ben Schwartza13c23a2017-10-02 12:06:21 -0400174LOCAL_CFLAGS := -Wall -Werror -Wunused-parameter -Wthread-safety
Pirama Arumuga Nainar2f3cbf12016-06-28 15:42:02 -0700175# Bug: http://b/29823425 Disable -Wvarargs for Clang update to r271374
176LOCAL_CFLAGS += -Wno-varargs
177
178LOCAL_C_INCLUDES := \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900179 bionic/libc/dns/include \
Pirama Arumuga Nainar2f3cbf12016-06-28 15:42:02 -0700180 system/netd/include \
181 system/netd/server \
182 system/netd/server/binder \
Lorenzo Colittidf42ddd2017-02-28 01:20:13 +0900183 system/netd/tests \
Pirama Arumuga Nainar2f3cbf12016-06-28 15:42:02 -0700184 system/core/logwrapper/include \
185
Lorenzo Colitti86a47982016-03-18 17:52:25 +0900186LOCAL_SRC_FILES := \
Joel Scherpelzde937962017-06-01 13:20:21 +0900187 InterfaceController.cpp InterfaceControllerTest.cpp \
Lorenzo Colitti341d3a02017-08-08 17:31:35 +0900188 Controllers.cpp ControllersTest.cpp \
Lorenzo Colitti0f150552016-03-28 02:30:27 +0900189 NetdConstants.cpp IptablesBaseTest.cpp \
Narayan Kamatha5ace892017-01-06 15:10:02 +0000190 IptablesRestoreController.cpp IptablesRestoreControllerTest.cpp \
Lorenzo Colitti86a47982016-03-18 17:52:25 +0900191 BandwidthController.cpp BandwidthControllerTest.cpp \
192 FirewallControllerTest.cpp FirewallController.cpp \
Lorenzo Colitti85a21602017-08-10 19:22:45 +0900193 IdletimerController.cpp IdletimerControllerTest.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900194 NetlinkCommands.cpp NetlinkManager.cpp \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900195 RouteController.cpp RouteControllerTest.cpp \
Lorenzo Colitti9028d912016-03-28 02:34:54 +0900196 SockDiagTest.cpp SockDiag.cpp \
Lorenzo Colittifff4bd32016-04-14 00:56:01 +0900197 StrictController.cpp StrictControllerTest.cpp \
Lorenzo Colittia93126d2017-08-24 13:28:19 +0900198 TetherController.cpp TetherControllerTest.cpp \
Chenbo Fenged37fea2017-12-13 19:35:01 -0800199 TrafficController.cpp TrafficControllerTest.cpp \
Jonathan Basserid5c8cb52017-09-14 11:02:24 -0700200 XfrmController.cpp XfrmControllerTest.cpp \
Hugo Benichi7b314e12018-01-15 21:54:00 +0900201 TcpSocketMonitor.cpp \
Lorenzo Colittifff4bd32016-04-14 00:56:01 +0900202 UidRanges.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900203 NetlinkListener.cpp \
204 WakeupController.cpp WakeupControllerTest.cpp \
205 NFLogListener.cpp NFLogListenerTest.cpp \
Robin Leedc0d5782016-07-20 14:17:11 +0100206 binder/android/net/UidRange.cpp \
Narayan Kamatha5ace892017-01-06 15:10:02 +0000207 binder/android/net/metrics/INetdEventListener.aidl \
Lorenzo Colittidf42ddd2017-02-28 01:20:13 +0900208 ../tests/tun_interface.cpp \
Ben Schwartzded1b702017-10-25 14:41:02 -0400209 dns/DnsTlsDispatcher.cpp \
210 dns/DnsTlsTransport.cpp \
211 dns/DnsTlsServer.cpp \
212 dns/DnsTlsSessionCache.cpp \
213 dns/DnsTlsSocket.cpp \
Lorenzo Colittifff4bd32016-04-14 00:56:01 +0900214
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900215LOCAL_MODULE_TAGS := tests
Joel Scherpelzbcad6612017-05-30 10:55:11 +0900216LOCAL_STATIC_LIBRARIES := libgmock libpcap
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900217LOCAL_SHARED_LIBRARIES := \
Chenbo Fenged37fea2017-12-13 19:35:01 -0800218 libbpf \
Joel Scherpelzde937962017-06-01 13:20:21 +0900219 libnetdaidl \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900220 libbase \
221 libbinder \
Ben Schwartze7601812017-04-28 16:38:29 -0400222 libcrypto \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900223 libcutils \
224 liblog \
225 liblogwrap \
226 libnetutils \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900227 libnetdutils \
Chenbo Fenged37fea2017-12-13 19:35:01 -0800228 libqtaguid \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900229 libsysutils \
230 libutils \
Ben Schwartze7601812017-04-28 16:38:29 -0400231 libssl \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900232
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900233include $(BUILD_NATIVE_TEST)
Lorenzo Colitti77862192016-03-02 14:09:38 +0900234