Home | History | Annotate | Download | only in server
      1 # 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 
     15 LOCAL_PATH := $(call my-dir)
     16 
     17 ###
     18 ### netd service AIDL interface.
     19 ###
     20 include $(CLEAR_VARS)
     21 
     22 LOCAL_CFLAGS := -Wall -Werror
     23 LOCAL_CLANG := true
     24 LOCAL_SANITIZE := unsigned-integer-overflow
     25 LOCAL_MODULE := libnetdaidl
     26 LOCAL_SHARED_LIBRARIES := \
     27         libbinder \
     28         libutils
     29 LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/binder
     30 LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
     31 LOCAL_C_INCLUDES := $(LOCAL_PATH)/binder
     32 LOCAL_SRC_FILES := \
     33         binder/android/net/INetd.aidl \
     34         binder/android/net/UidRange.cpp
     35 
     36 include $(BUILD_SHARED_LIBRARY)
     37 
     38 ###
     39 ### netd daemon.
     40 ###
     41 include $(CLEAR_VARS)
     42 
     43 LOCAL_C_INCLUDES := \
     44         $(call include-path-for, libhardware_legacy)/hardware_legacy \
     45         bionic/libc/dns/include \
     46         external/mdnsresponder/mDNSShared \
     47         system/netd/include \
     48 
     49 LOCAL_CLANG := true
     50 LOCAL_CPPFLAGS := -Wall -Werror
     51 LOCAL_SANITIZE := unsigned-integer-overflow
     52 LOCAL_MODULE := netd
     53 
     54 # Bug: http://b/29823425 Disable -Wvarargs for Clang update to r271374
     55 LOCAL_CPPFLAGS +=  -Wno-varargs \
     56 
     57 ifeq ($(TARGET_ARCH), x86)
     58 ifneq ($(TARGET_PRODUCT), gce_x86_phone)
     59         LOCAL_CPPFLAGS += -D NETLINK_COMPAT32
     60 endif
     61 endif
     62 
     63 LOCAL_INIT_RC := netd.rc
     64 
     65 LOCAL_SHARED_LIBRARIES := \
     66         android.system.net.netd (a] 1.0 \
     67         libbinder \
     68         libcrypto \
     69         libcutils \
     70         libdl \
     71         libhidlbase \
     72         libhidltransport \
     73         liblog \
     74         liblogwrap \
     75         libmdnssd \
     76         libnetdaidl \
     77         libnetutils \
     78         libnetdutils \
     79         libnl \
     80         libssl \
     81         libsysutils \
     82         libbase \
     83         libutils \
     84         libpcap \
     85 
     86 LOCAL_SRC_FILES := \
     87         BandwidthController.cpp \
     88         ClatdController.cpp \
     89         CommandListener.cpp \
     90         Controllers.cpp \
     91         DnsProxyListener.cpp \
     92         DummyNetwork.cpp \
     93         DumpWriter.cpp \
     94         EventReporter.cpp \
     95         FirewallController.cpp \
     96         FwmarkServer.cpp \
     97         IdletimerController.cpp \
     98         InterfaceController.cpp \
     99         IptablesRestoreController.cpp \
    100         LocalNetwork.cpp \
    101         MDnsSdListener.cpp \
    102         NatController.cpp \
    103         NetdCommand.cpp \
    104         NetdConstants.cpp \
    105         NetdHwService.cpp \
    106         NetdNativeService.cpp \
    107         NetlinkHandler.cpp \
    108         NetlinkManager.cpp \
    109         NetlinkCommands.cpp \
    110         NetlinkListener.cpp \
    111         Network.cpp \
    112         NetworkController.cpp \
    113         NFLogListener.cpp \
    114         PhysicalNetwork.cpp \
    115         PppController.cpp \
    116         ResolverController.cpp \
    117         RouteController.cpp \
    118         SockDiag.cpp \
    119         StrictController.cpp \
    120         TetherController.cpp \
    121         UidRanges.cpp \
    122         VirtualNetwork.cpp \
    123         WakeupController.cpp \
    124         XfrmController.cpp \
    125         main.cpp \
    126         oem_iptables_hook.cpp \
    127         binder/android/net/UidRange.cpp \
    128         binder/android/net/metrics/INetdEventListener.aidl \
    129         dns/DnsTlsTransport.cpp \
    130 
    131 LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
    132 
    133 include $(BUILD_EXECUTABLE)
    134 
    135 
    136 ###
    137 ### ndc binary.
    138 ###
    139 include $(CLEAR_VARS)
    140 
    141 LOCAL_CFLAGS := -Wall -Werror
    142 LOCAL_SANITIZE := unsigned-integer-overflow
    143 LOCAL_CLANG := true
    144 LOCAL_MODULE := ndc
    145 LOCAL_SHARED_LIBRARIES := libcutils
    146 LOCAL_SRC_FILES := ndc.cpp
    147 
    148 include $(BUILD_EXECUTABLE)
    149 
    150 ###
    151 ### netd unit tests.
    152 ###
    153 include $(CLEAR_VARS)
    154 LOCAL_MODULE := netd_unit_test
    155 LOCAL_COMPATIBILITY_SUITE := device-tests
    156 LOCAL_SANITIZE := unsigned-integer-overflow
    157 LOCAL_CFLAGS := -Wall -Werror -Wunused-parameter
    158 # Bug: http://b/29823425 Disable -Wvarargs for Clang update to r271374
    159 LOCAL_CFLAGS += -Wno-varargs
    160 
    161 LOCAL_C_INCLUDES := \
    162         bionic/libc/dns/include \
    163         system/netd/include \
    164         system/netd/server \
    165         system/netd/server/binder \
    166         system/netd/tests \
    167         system/core/logwrapper/include \
    168 
    169 LOCAL_SRC_FILES := \
    170         InterfaceController.cpp InterfaceControllerTest.cpp \
    171         Controllers.cpp ControllersTest.cpp \
    172         NetdConstants.cpp IptablesBaseTest.cpp \
    173         IptablesRestoreController.cpp IptablesRestoreControllerTest.cpp \
    174         BandwidthController.cpp BandwidthControllerTest.cpp \
    175         FirewallControllerTest.cpp FirewallController.cpp \
    176         IdletimerController.cpp IdletimerControllerTest.cpp \
    177         NatControllerTest.cpp NatController.cpp \
    178         NetlinkCommands.cpp NetlinkManager.cpp \
    179         RouteController.cpp RouteControllerTest.cpp \
    180         SockDiagTest.cpp SockDiag.cpp \
    181         StrictController.cpp StrictControllerTest.cpp \
    182         UidRanges.cpp \
    183         NetlinkListener.cpp \
    184         WakeupController.cpp WakeupControllerTest.cpp \
    185         NFLogListener.cpp NFLogListenerTest.cpp \
    186         binder/android/net/UidRange.cpp \
    187         binder/android/net/metrics/INetdEventListener.aidl \
    188         ../tests/tun_interface.cpp \
    189 
    190 LOCAL_MODULE_TAGS := tests
    191 LOCAL_STATIC_LIBRARIES := libgmock libpcap
    192 LOCAL_SHARED_LIBRARIES := \
    193         libnetdaidl \
    194         libbase \
    195         libbinder \
    196         libcrypto \
    197         libcutils \
    198         liblog \
    199         liblogwrap \
    200         libnetutils \
    201         libnetdutils \
    202         libnl \
    203         libsysutils \
    204         libutils \
    205         libssl \
    206 
    207 include $(BUILD_NATIVE_TEST)
    208 
    209