blob: ba4c3a71dbdea090e5c01707e0e04ba5a3648c13 [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
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090022LOCAL_CFLAGS := -Wall -Werror
23LOCAL_CLANG := true
Thurston Hou Yeen Danga8352e92016-06-01 11:02:29 -070024LOCAL_SANITIZE := unsigned-integer-overflow
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090025LOCAL_MODULE := libnetdaidl
26LOCAL_SHARED_LIBRARIES := \
27 libbinder \
28 libutils
Robin Lee9f9aae92016-03-30 18:33:07 +010029LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/binder
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090030LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
Robin Lee9f9aae92016-03-30 18:33:07 +010031LOCAL_C_INCLUDES := $(LOCAL_PATH)/binder
32LOCAL_SRC_FILES := \
33 binder/android/net/INetd.aidl \
34 binder/android/net/UidRange.cpp
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090035
36include $(BUILD_SHARED_LIBRARY)
37
Lorenzo Colitti89faa342016-02-26 11:38:47 +090038###
39### netd daemon.
40###
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090041include $(CLEAR_VARS)
42
Colin Crosse55ec1b2014-01-22 23:51:53 -080043LOCAL_C_INCLUDES := \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070044 $(call include-path-for, libhardware_legacy)/hardware_legacy \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070045 bionic/libc/dns/include \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070046 external/mdnsresponder/mDNSShared \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070047 system/netd/include \
San Mehatd1830422010-01-15 08:02:39 -080048
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070049LOCAL_CLANG := true
Elliott Hughesbd3ed5f2016-10-07 15:10:50 -070050LOCAL_CPPFLAGS := -Wall -Werror
Thurston Hou Yeen Danga8352e92016-06-01 11:02:29 -070051LOCAL_SANITIZE := unsigned-integer-overflow
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070052LOCAL_MODULE := netd
Dmitry Shmidt31fd6c52010-03-12 10:01:58 -080053
Pirama Arumuga Nainardde4a552016-06-28 10:56:59 -070054# Bug: http://b/29823425 Disable -Wvarargs for Clang update to r271374
Nathan Harolde2dd4c72017-04-19 11:09:11 -070055LOCAL_CPPFLAGS += -Wno-varargs \
56
57ifeq ($(TARGET_ARCH), x86)
58ifneq ($(TARGET_PRODUCT), gce_x86_phone)
59 LOCAL_CPPFLAGS += -D NETLINK_COMPAT32
60endif
61endif
Pirama Arumuga Nainardde4a552016-06-28 10:56:59 -070062
Tom Cherryc149ef72015-08-14 13:06:31 -070063LOCAL_INIT_RC := netd.rc
64
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070065LOCAL_SHARED_LIBRARIES := \
Niranjan Pendharkar7e08f852017-07-24 11:40:05 -070066 android.system.net.netd@1.0 \
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090067 libbinder \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070068 libcutils \
69 libdl \
Niranjan Pendharkar7e08f852017-07-24 11:40:05 -070070 libhidlbase \
71 libhidltransport \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070072 liblog \
73 liblogwrap \
74 libmdnssd \
Lorenzo Colittie4d626e2016-02-02 17:19:04 +090075 libnetdaidl \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070076 libnetutils \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +090077 libnetdutils \
Jeff Sharkeyfbe497f2014-10-28 16:50:07 -070078 libnl \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070079 libsysutils \
Dan Albert5407e142015-03-16 10:05:59 -070080 libbase \
Elliott Hughesd1614062015-02-02 18:08:59 -080081 libutils \
Jeff Sharkeyfbe497f2014-10-28 16:50:07 -070082 libpcap \
83
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070084LOCAL_SRC_FILES := \
85 BandwidthController.cpp \
86 ClatdController.cpp \
87 CommandListener.cpp \
Pierre Imai1cfa5432016-02-24 18:00:03 +090088 Controllers.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070089 DnsProxyListener.cpp \
Lorenzo Colitti36679362015-02-25 10:26:19 +090090 DummyNetwork.cpp \
Erik Kline2d3a1632016-03-15 16:33:48 +090091 DumpWriter.cpp \
Michal Karpinskid5440112016-10-06 16:56:04 +010092 EventReporter.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070093 FirewallController.cpp \
94 FwmarkServer.cpp \
95 IdletimerController.cpp \
96 InterfaceController.cpp \
Narayan Kamatha5ace892017-01-06 15:10:02 +000097 IptablesRestoreController.cpp \
Sreeram Ramachandran6a773532014-07-11 09:10:20 -070098 LocalNetwork.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -070099 MDnsSdListener.cpp \
100 NatController.cpp \
101 NetdCommand.cpp \
102 NetdConstants.cpp \
Niranjan Pendharkar7e08f852017-07-24 11:40:05 -0700103 NetdHwService.cpp \
Lorenzo Colittie4d626e2016-02-02 17:19:04 +0900104 NetdNativeService.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700105 NetlinkHandler.cpp \
106 NetlinkManager.cpp \
Lorenzo Colitti1ef549d2017-02-13 18:32:09 +0900107 NetlinkCommands.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900108 NetlinkListener.cpp \
Sreeram Ramachandranf4f6c8d2014-06-23 09:54:06 -0700109 Network.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700110 NetworkController.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900111 NFLogListener.cpp \
Sreeram Ramachandranf4f6c8d2014-06-23 09:54:06 -0700112 PhysicalNetwork.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700113 PppController.cpp \
114 ResolverController.cpp \
115 RouteController.cpp \
Lorenzo Colitti8464e1e2016-02-05 00:57:26 +0900116 SockDiag.cpp \
Jeff Sharkeyfbe497f2014-10-28 16:50:07 -0700117 StrictController.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700118 TetherController.cpp \
Sreeram Ramachandranb1425cc2014-06-23 18:54:27 -0700119 UidRanges.cpp \
Sreeram Ramachandran4043f012014-06-23 12:41:37 -0700120 VirtualNetwork.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900121 WakeupController.cpp \
Nathan Harold1a371532017-01-30 12:30:48 -0800122 XfrmController.cpp \
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700123 main.cpp \
124 oem_iptables_hook.cpp \
Robin Leedc0d5782016-07-20 14:17:11 +0100125 binder/android/net/UidRange.cpp \
Michal Karpinski50051342016-09-15 17:05:36 +0900126 binder/android/net/metrics/INetdEventListener.aidl \
Lorenzo Colitti6c977162016-04-12 23:28:50 +0900127
128LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
San Mehatd1830422010-01-15 08:02:39 -0800129
San Mehatd1830422010-01-15 08:02:39 -0800130include $(BUILD_EXECUTABLE)
131
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900132
133###
134### ndc binary.
135###
San Mehatd1830422010-01-15 08:02:39 -0800136include $(CLEAR_VARS)
San Mehatd1830422010-01-15 08:02:39 -0800137
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700138LOCAL_CFLAGS := -Wall -Werror
Thurston Hou Yeen Danga8352e92016-06-01 11:02:29 -0700139LOCAL_SANITIZE := unsigned-integer-overflow
Sreeram Ramachandran56afacf2014-05-28 15:07:00 -0700140LOCAL_CLANG := true
141LOCAL_MODULE := ndc
San Mehatd1830422010-01-15 08:02:39 -0800142LOCAL_SHARED_LIBRARIES := libcutils
Elliott Hughes12c32782016-06-13 13:28:17 -0700143LOCAL_SRC_FILES := ndc.cpp
San Mehatd1830422010-01-15 08:02:39 -0800144
145include $(BUILD_EXECUTABLE)
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900146
147###
148### netd unit tests.
149###
150include $(CLEAR_VARS)
Pierre Imaib19fcc72016-03-11 17:54:48 +0900151LOCAL_MODULE := netd_unit_test
Dan Shi8190e182017-03-26 22:05:37 -0700152LOCAL_COMPATIBILITY_SUITE := device-tests
Lorenzo Colitticd283772017-01-31 19:00:49 +0900153LOCAL_SANITIZE := unsigned-integer-overflow
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900154LOCAL_CFLAGS := -Wall -Werror -Wunused-parameter
Pirama Arumuga Nainar2f3cbf12016-06-28 15:42:02 -0700155# Bug: http://b/29823425 Disable -Wvarargs for Clang update to r271374
156LOCAL_CFLAGS += -Wno-varargs
157
158LOCAL_C_INCLUDES := \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900159 bionic/libc/dns/include \
Pirama Arumuga Nainar2f3cbf12016-06-28 15:42:02 -0700160 system/netd/include \
161 system/netd/server \
162 system/netd/server/binder \
Lorenzo Colittidf42ddd2017-02-28 01:20:13 +0900163 system/netd/tests \
Pirama Arumuga Nainar2f3cbf12016-06-28 15:42:02 -0700164 system/core/logwrapper/include \
165
Lorenzo Colitti86a47982016-03-18 17:52:25 +0900166LOCAL_SRC_FILES := \
Joel Scherpelzb38def82017-06-01 13:20:21 +0900167 InterfaceController.cpp InterfaceControllerTest.cpp \
Narayan Kamatha5ace892017-01-06 15:10:02 +0000168 Controllers.cpp \
Lorenzo Colitti0f150552016-03-28 02:30:27 +0900169 NetdConstants.cpp IptablesBaseTest.cpp \
Narayan Kamatha5ace892017-01-06 15:10:02 +0000170 IptablesRestoreController.cpp IptablesRestoreControllerTest.cpp \
Lorenzo Colitti86a47982016-03-18 17:52:25 +0900171 BandwidthController.cpp BandwidthControllerTest.cpp \
172 FirewallControllerTest.cpp FirewallController.cpp \
Lorenzo Colitti1ed96e22017-02-02 12:21:56 +0900173 IdletimerController.cpp \
Lorenzo Colitti08a30b92016-07-09 14:24:08 +0900174 NatControllerTest.cpp NatController.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900175 NetlinkCommands.cpp NetlinkManager.cpp \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900176 RouteController.cpp RouteControllerTest.cpp \
Lorenzo Colitti9028d912016-03-28 02:34:54 +0900177 SockDiagTest.cpp SockDiag.cpp \
Lorenzo Colittifff4bd32016-04-14 00:56:01 +0900178 StrictController.cpp StrictControllerTest.cpp \
179 UidRanges.cpp \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900180 NetlinkListener.cpp \
181 WakeupController.cpp WakeupControllerTest.cpp \
182 NFLogListener.cpp NFLogListenerTest.cpp \
Robin Leedc0d5782016-07-20 14:17:11 +0100183 binder/android/net/UidRange.cpp \
Narayan Kamatha5ace892017-01-06 15:10:02 +0000184 binder/android/net/metrics/INetdEventListener.aidl \
Lorenzo Colittidf42ddd2017-02-28 01:20:13 +0900185 ../tests/tun_interface.cpp \
Lorenzo Colittifff4bd32016-04-14 00:56:01 +0900186
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900187LOCAL_MODULE_TAGS := tests
Joel Scherpelzbcad6612017-05-30 10:55:11 +0900188LOCAL_STATIC_LIBRARIES := libgmock libpcap
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900189LOCAL_SHARED_LIBRARIES := \
Joel Scherpelzb38def82017-06-01 13:20:21 +0900190 libnetdaidl \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900191 libbase \
192 libbinder \
193 libcutils \
194 liblog \
195 liblogwrap \
196 libnetutils \
Joel Scherpelz08b84cd2017-05-22 13:11:54 +0900197 libnetdutils \
198 libnl \
Lorenzo Colitti60367db2017-02-13 16:31:45 +0900199 libsysutils \
200 libutils \
201
Lorenzo Colitti89faa342016-02-26 11:38:47 +0900202include $(BUILD_NATIVE_TEST)
Lorenzo Colitti77862192016-03-02 14:09:38 +0900203