blob: 7835d1dd516f1fa8490c979ae86fc86c516bcc39 [file] [log] [blame]
Thieu Le3426c8f2012-01-11 17:35:11 -08001# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Chris Masone96832c32011-05-03 12:23:18 -07002# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
Darin Petkovd9050bb2012-09-26 16:02:52 +02005AR ?= ar
Darin Petkove6ca3202012-10-19 14:49:56 +02006CC ?= gcc
Chris Masone96832c32011-05-03 12:23:18 -07007CXX ?= g++
Darin Petkov374b5ee2012-11-06 11:20:04 +01008CFLAGS += \
9 -Wall \
10 -Werror \
11 -Wextra \
12 -Wno-missing-field-initializers \
13 -Wno-unused-parameter \
14 -Wno-unused-result \
15 -Wuninitialized
mukesh agrawalf60e4062011-05-27 13:13:41 -070016CXXFLAGS ?= -fno-strict-aliasing
Darin Petkov374b5ee2012-11-06 11:20:04 +010017CXXFLAGS += $(CFLAGS) -Woverloaded-virtual
Darin Petkov04d46b42011-08-31 14:17:34 -070018CXXFLAGS += $(EXTRA_CXXFLAGS)
Chris Masone96832c32011-05-03 12:23:18 -070019CPPFLAGS ?= -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
Chris Masone96832c32011-05-03 12:23:18 -070020PKG_CONFIG ?= pkg-config
Chris Masone14de6e52011-05-09 09:20:59 -070021DBUSXX_XML2CPP = dbusxx-xml2cpp
Daniel Erat0818cca2012-12-14 10:16:21 -080022PROTOC ?= protoc
Chris Masone96832c32011-05-03 12:23:18 -070023
Darin Petkov5236a8e2012-02-21 10:26:55 +010024BUILDDIR = build
Daniel Erat0818cca2012-12-14 10:16:21 -080025VPATH = $(BUILDDIR)
Darin Petkov5236a8e2012-02-21 10:26:55 +010026
Paul Stewart291a4732012-03-14 19:19:02 -070027LIBDIR = /usr/lib
Darin Petkov86654d32012-10-08 15:32:34 +020028SHIMDIR = $(LIBDIR)/shill/shims
Darin Petkov95f317f2012-10-22 13:37:43 +020029CPPFLAGS += -DSHIMDIR=\"$(SHIMDIR)\"
Wade Guthrie0d438532012-05-18 14:18:50 -070030
Eric Shienbrood3e20a232012-02-16 11:35:56 -050031BASE_VER = 125070
Darin Petkovd9050bb2012-09-26 16:02:52 +020032COMMON_PC_DEPS = libchrome-$(BASE_VER) libchromeos-$(BASE_VER)
Christopher Wiley49e247a2012-11-07 11:24:59 -080033SHILL_PC_DEPS = \
34 $(COMMON_PC_DEPS) \
35 dbus-c++-1 \
36 gio-2.0 \
37 glib-2.0 \
38 ModemManager \
Christopher Wileyefd521f2012-11-07 17:32:46 -080039 libnl-3.0 \
40 libnl-genl-3.0
Darin Petkovfac01f02012-12-06 12:44:07 +010041NET_DIAGS_UPLOAD_PC_DEPS = $(COMMON_PC_DEPS)
Darin Petkovd9050bb2012-09-26 16:02:52 +020042NSS_GET_CERT_PC_DEPS = $(COMMON_PC_DEPS) nss
Darin Petkov804e8d02012-10-10 16:44:36 +020043OPENVPN_SCRIPT_PC_DEPS = $(COMMON_PC_DEPS) dbus-c++-1
Darin Petkove6ca3202012-10-19 14:49:56 +020044PPPD_PLUGIN_PC_DEPS = $(COMMON_PC_DEPS) dbus-c++-1
Darin Petkov16f63492012-10-23 11:12:58 +020045SET_APN_HELPER_PC_DEPS = dbus-1
Darin Petkovd9050bb2012-09-26 16:02:52 +020046INCLUDE_DIRS = \
47 -iquote.. \
48 -iquote $(BUILDDIR) \
Darin Petkov804e8d02012-10-10 16:44:36 +020049 $(shell $(PKG_CONFIG) --cflags \
Darin Petkovfac01f02012-12-06 12:44:07 +010050 $(NET_DIAGS_UPLOAD_PC_DEPS) \
Darin Petkov804e8d02012-10-10 16:44:36 +020051 $(NSS_GET_CERT_PC_DEPS) \
52 $(OPENVPN_SCRIPT_PC_DEPS) \
Darin Petkove6ca3202012-10-19 14:49:56 +020053 $(PPPD_PLUGIN_PC_DEPS) \
Darin Petkov16f63492012-10-23 11:12:58 +020054 $(SET_APN_HELPER_PC_DEPS) \
Darin Petkov804e8d02012-10-10 16:44:36 +020055 $(SHILL_PC_DEPS))
Darin Petkovd9050bb2012-09-26 16:02:52 +020056SHILL_LIBS = \
57 -lbootstat \
58 -lcares \
59 -lmobile-provider \
60 -lmetrics \
61 -lminijail \
Daniel Erat0818cca2012-12-14 10:16:21 -080062 -lprotobuf-lite \
Darin Petkovd9050bb2012-09-26 16:02:52 +020063 $(shell $(PKG_CONFIG) --libs $(SHILL_PC_DEPS))
Darin Petkovfac01f02012-12-06 12:44:07 +010064NET_DIAGS_UPLOAD_LIBS = \
65 $(shell $(PKG_CONFIG) --libs $(NET_DIAGS_UPLOAD_PC_DEPS))
Darin Petkovd9050bb2012-09-26 16:02:52 +020066NSS_GET_CERT_LIBS = $(shell $(PKG_CONFIG) --libs $(NSS_GET_CERT_PC_DEPS))
Darin Petkov804e8d02012-10-10 16:44:36 +020067OPENVPN_SCRIPT_LIBS = $(shell $(PKG_CONFIG) --libs $(OPENVPN_SCRIPT_PC_DEPS))
Darin Petkov16f63492012-10-23 11:12:58 +020068PPPD_PLUGIN_LIBS = $(shell $(PKG_CONFIG) --libs $(PPPD_PLUGIN_PC_DEPS))
69SET_APN_HELPER_LIBS = $(shell $(PKG_CONFIG) --libs $(SET_APN_HELPER_PC_DEPS))
Darin Petkovd9050bb2012-09-26 16:02:52 +020070TEST_LIBS = $(SHILL_LIBS) $(NSS_GET_CERT_LIBS) -lgmock -lgtest
Chris Masone96832c32011-05-03 12:23:18 -070071
Darin Petkov4a09b6b2011-07-19 12:52:06 -070072DBUS_BINDINGS_DIR = dbus_bindings
Darin Petkov5236a8e2012-02-21 10:26:55 +010073BUILD_DBUS_BINDINGS_DIR = $(BUILDDIR)/shill/$(DBUS_BINDINGS_DIR)
Darin Petkov804e8d02012-10-10 16:44:36 +020074BUILD_DBUS_BINDINGS_SHIMS_DIR = $(BUILD_DBUS_BINDINGS_DIR)/shims
Darin Petkov5236a8e2012-02-21 10:26:55 +010075
Daniel Erat0818cca2012-12-14 10:16:21 -080076BUILD_PROTO_BINDINGS_DIR = $(BUILDDIR)/shill/proto_bindings
77
Darin Petkovd9050bb2012-09-26 16:02:52 +020078BUILD_SHIMS_DIR = $(BUILDDIR)/shims
79
80_CREATE_BUILDDIR := $(shell mkdir -p \
81 $(BUILDDIR) \
82 $(BUILD_DBUS_BINDINGS_DIR) \
Darin Petkov804e8d02012-10-10 16:44:36 +020083 $(BUILD_DBUS_BINDINGS_SHIMS_DIR) \
Daniel Erat0818cca2012-12-14 10:16:21 -080084 $(BUILD_PROTO_BINDINGS_DIR)/power_manager \
Darin Petkovd9050bb2012-09-26 16:02:52 +020085 $(BUILD_SHIMS_DIR))
Darin Petkov4a09b6b2011-07-19 12:52:06 -070086
Elly Jones5211a4c2012-01-26 19:25:20 -050087DBUS_ADAPTOR_HEADERS :=
Chris Masone14de6e52011-05-09 09:20:59 -070088
Darin Petkov567a7d02011-05-26 17:15:34 -070089DBUS_PROXY_HEADERS = \
David Rochbergbdd0c8b2012-02-27 15:45:48 -050090 dbus-objectmanager.h \
Darin Petkov18fb2f72012-06-14 09:09:34 +020091 dbus-properties.h \
92 dbus-service.h \
Darin Petkov567a7d02011-05-26 17:15:34 -070093 dhcpcd.h \
Darin Petkovc37a9c42012-09-06 15:28:22 +020094 modem-gobi.h \
Darin Petkov394b7d42011-11-03 15:48:02 +010095 power_manager.h \
Darin Petkov804e8d02012-10-10 16:44:36 +020096 shims/flimflam-task.h \
Darin Petkov567a7d02011-05-26 17:15:34 -070097 supplicant-bss.h \
98 supplicant-interface.h \
99 supplicant-network.h \
mukesh agrawalab87ea42011-05-18 11:44:49 -0700100 supplicant-process.h
Darin Petkov567a7d02011-05-26 17:15:34 -0700101
Darin Petkovf5f61e02011-07-29 11:35:40 -0700102# Generates rules for copying SYSROOT XMLs locally and updates the proxy header
103# dependencies.
104DBUS_BINDINGS_XML_SYSROOT = \
Darin Petkov096b3472012-05-15 10:26:22 +0200105 org.chromium.WiMaxManager>wimax_manager \
106 org.chromium.WiMaxManager.Device>wimax_manager-device \
Darin Petkov9893d9c2012-05-17 15:27:31 -0700107 org.chromium.WiMaxManager.Network>wimax_manager-network \
Darin Petkovf5f61e02011-07-29 11:35:40 -0700108 org.freedesktop.ModemManager>modem_manager \
Darin Petkov1ec741c2011-08-02 10:45:27 -0700109 org.freedesktop.ModemManager.Modem>modem \
Darin Petkovf5f61e02011-07-29 11:35:40 -0700110 org.freedesktop.ModemManager.Modem.Cdma>modem-cdma \
111 org.freedesktop.ModemManager.Modem.Gsm.Card>modem-gsm-card \
112 org.freedesktop.ModemManager.Modem.Gsm.Network>modem-gsm-network \
Jason Glasgowee1081c2012-03-06 15:14:53 -0500113 org.freedesktop.ModemManager.Modem.Simple>modem-simple \
Arman Uguray6e5639f2012-11-15 20:30:19 -0800114 org.freedesktop.ModemManager1.Bearer>mm1-bearer \
Jason Glasgowee1081c2012-03-06 15:14:53 -0500115 org.freedesktop.ModemManager1.Modem>mm1-modem \
Arman Uguray2c39fab2012-12-12 16:56:34 -0800116 org.freedesktop.ModemManager1.Modem.Location>mm1-modem-location \
Jason Glasgowee1081c2012-03-06 15:14:53 -0500117 org.freedesktop.ModemManager1.Modem.Modem3gpp>mm1-modem-modem3gpp \
118 org.freedesktop.ModemManager1.Modem.ModemCdma>mm1-modem-modemcdma \
Jason Glasgow74f5ef22012-03-29 16:15:04 -0400119 org.freedesktop.ModemManager1.Modem.Simple>mm1-modem-simple \
Arman Uguray618af2b2012-12-11 19:20:42 -0800120 org.freedesktop.ModemManager1.Modem.Time>mm1-modem-time \
Darin Petkov096b3472012-05-15 10:26:22 +0200121 org.freedesktop.ModemManager1.Sim>mm1-sim
Darin Petkovf5f61e02011-07-29 11:35:40 -0700122
Elly Jones5211a4c2012-01-26 19:25:20 -0500123# Rename local XML files with the names required by DBus to XML files with the
124# names required by the style guide, which will then be turned into generated
125# headers later.
126DBUS_BINDINGS_XML_LOCAL = \
127 org.chromium.flimflam.Device>flimflam-device \
128 org.chromium.flimflam.IPConfig>flimflam-ipconfig \
129 org.chromium.flimflam.Manager>flimflam-manager \
130 org.chromium.flimflam.Profile>flimflam-profile \
Darin Petkova9b1fed2012-02-29 11:49:05 +0100131 org.chromium.flimflam.Service>flimflam-service \
132 org.chromium.flimflam.Task>flimflam-task
Elly Jones5211a4c2012-01-26 19:25:20 -0500133
Darin Petkovf5f61e02011-07-29 11:35:40 -0700134define ADD_BINDING
135$(eval _SOURCE = $(word 1,$(subst >, ,$(1))))
136$(eval _TARGET = $(word 2,$(subst >, ,$(1))))
Darin Petkovf5f61e02011-07-29 11:35:40 -0700137DBUS_PROXY_HEADERS += $(_TARGET).h
Darin Petkov5236a8e2012-02-21 10:26:55 +0100138$(BUILD_DBUS_BINDINGS_DIR)/$(_TARGET).xml: \
Darin Petkovf5f61e02011-07-29 11:35:40 -0700139 $(SYSROOT)/usr/share/dbus-1/interfaces/$(_SOURCE).xml
140 cat $$< > $$@
141endef
142
Elly Jones5211a4c2012-01-26 19:25:20 -0500143define ADD_LOCAL_BINDING
144$(eval _SOURCE = $(word 1,$(subst >, ,$(1))))
145$(eval _TARGET = $(word 2,$(subst >, ,$(1))))
Elly Jones5211a4c2012-01-26 19:25:20 -0500146DBUS_ADAPTOR_HEADERS += $(_TARGET).h
Darin Petkov5236a8e2012-02-21 10:26:55 +0100147$(BUILD_DBUS_BINDINGS_DIR)/$(_TARGET).xml: $(DBUS_BINDINGS_DIR)/$(_SOURCE).xml
Elly Jones5211a4c2012-01-26 19:25:20 -0500148 cp $$< $$@
149endef
150
Darin Petkovf5f61e02011-07-29 11:35:40 -0700151$(foreach b,$(DBUS_BINDINGS_XML_SYSROOT),$(eval $(call ADD_BINDING,$(b))))
Elly Jones5211a4c2012-01-26 19:25:20 -0500152$(foreach b,$(DBUS_BINDINGS_XML_LOCAL),$(eval $(call ADD_LOCAL_BINDING,$(b))))
Darin Petkovf5f61e02011-07-29 11:35:40 -0700153
Darin Petkov4a09b6b2011-07-19 12:52:06 -0700154DBUS_ADAPTOR_BINDINGS = \
Darin Petkov5236a8e2012-02-21 10:26:55 +0100155 $(addprefix $(BUILD_DBUS_BINDINGS_DIR)/, $(DBUS_ADAPTOR_HEADERS))
156DBUS_PROXY_BINDINGS = \
157 $(addprefix $(BUILD_DBUS_BINDINGS_DIR)/, $(DBUS_PROXY_HEADERS))
Chris Masone96832c32011-05-03 12:23:18 -0700158
Daniel Erat0818cca2012-12-14 10:16:21 -0800159SYSTEM_API_PROTO_PATH = $(SYSROOT)/usr/include/chromeos/dbus
160PROTO_BINDINGS_OBJS = $(addprefix $(BUILD_PROTO_BINDINGS_DIR)/, \
161 power_manager/suspend.pb.o \
162 )
163PROTO_BINDINGS_H = $(PROTO_BINDINGS_OBJS:.o=.h)
164PROTO_BINDINGS_CC = $(PROTO_BINDINGS_OBJS:.o=.cc)
165
Darin Petkovd9050bb2012-09-26 16:02:52 +0200166SHILL_LIB = $(BUILDDIR)/shill.a
Darin Petkov5236a8e2012-02-21 10:26:55 +0100167SHILL_OBJS = $(addprefix $(BUILDDIR)/, \
Paul Stewartac1328e2012-07-20 11:55:40 -0700168 arp_client.o \
Paul Stewart91a5aac2012-07-20 11:55:40 -0700169 arp_packet.o \
Paul Stewartf65320c2011-10-13 14:34:52 -0700170 async_connection.o \
repo sync90ee0fa2012-12-18 10:08:08 -0800171 attribute_list.o \
Paul Stewart3ecfa2b2011-07-15 10:47:42 -0700172 byte_string.o \
Wade Guthrie5020b572012-10-12 15:51:14 -0700173 callback80211_metrics.o \
Wade Guthrie64b4c142012-08-20 15:21:01 -0700174 callback80211_object.o \
Chris Masone3bd3c8c2011-06-13 08:20:26 -0700175 cellular.o \
Darin Petkovdaf43862011-10-27 11:37:28 +0200176 cellular_capability.o \
177 cellular_capability_cdma.o \
Jason Glasgow82f9ab32012-04-04 14:27:19 -0400178 cellular_capability_classic.o \
Darin Petkovdaf43862011-10-27 11:37:28 +0200179 cellular_capability_gsm.o \
Jason Glasgow82f9ab32012-04-04 14:27:19 -0400180 cellular_capability_universal.o \
Eric Shienbrood5de44ab2011-12-05 10:46:27 -0500181 cellular_error.o \
Ben Chanb39cb312012-11-01 22:55:25 -0700182 cellular_operator_info.o \
Chris Masone3bd3c8c2011-06-13 08:20:26 -0700183 cellular_service.o \
Wade Guthrie0d438532012-05-18 14:18:50 -0700184 config80211.o \
Paul Stewartdd60e452011-08-08 11:38:36 -0700185 connection.o \
Darin Petkov823c47e2011-06-27 16:15:35 -0700186 crypto_des_cbc.o \
Darin Petkov86964e02011-06-29 13:49:28 -0700187 crypto_provider.o \
Darin Petkov877642b2011-06-27 13:37:22 -0700188 crypto_rot47.o \
Chris Masoned0ceb8c2011-06-02 10:05:39 -0700189 dbus_adaptor.o \
Chris Masone96832c32011-05-03 12:23:18 -0700190 dbus_control.o \
Darin Petkov002c58e2012-06-19 02:56:05 +0200191 dbus_manager.o \
David Rochbergb8b89b12012-02-28 16:11:33 -0500192 dbus_objectmanager_proxy.o \
Darin Petkove0a312e2011-07-20 13:45:28 -0700193 dbus_properties.o \
Darin Petkov5c97ac52011-07-19 16:30:49 -0700194 dbus_properties_proxy.o \
Darin Petkov18fb2f72012-06-14 09:09:34 +0200195 dbus_service_proxy.o \
Chris Masone88cbd5f2011-07-03 14:30:04 -0700196 default_profile.o \
Chris Masone96832c32011-05-03 12:23:18 -0700197 device.o \
Chris Masoned7732e42011-05-20 11:08:56 -0700198 device_dbus_adaptor.o \
Paul Stewart0af98bf2011-05-10 17:38:08 -0700199 device_info.o \
Darin Petkov50308cd2011-06-01 18:25:07 -0700200 dhcp_config.o \
201 dhcp_provider.o \
202 dhcpcd_proxy.o \
Darin Petkovf0136cd2012-11-07 16:18:02 +0100203 diagnostics_reporter.o \
Paul Stewartc2350ee2011-10-19 12:28:40 -0700204 dns_client.o \
mukesh agrawalb54601c2011-06-07 17:39:22 -0700205 endpoint.o \
Chris Masone7aa5f902011-07-11 11:13:35 -0700206 ephemeral_profile.o \
Chris Masone8fe2c7e2011-06-09 15:51:19 -0700207 error.o \
Paul Stewartb50f0b92011-05-16 16:31:42 -0700208 ethernet.o \
Paul Stewartf1ce5d22011-05-19 13:10:20 -0700209 ethernet_service.o \
Paul Stewart26b327e2011-10-19 11:38:09 -0700210 event_dispatcher.o \
Arman Ugurayf4c61812013-01-10 18:58:39 -0800211 file_reader.o \
212 file_reader_unittest.o \
Gaurav Shah6d2c72d2012-10-16 16:30:44 -0700213 geolocation_info.o \
Darin Petkovf7897bc2011-06-08 17:13:36 -0700214 glib.o \
Paul Stewartf0aae102011-10-19 12:11:44 -0700215 glib_io_ready_handler.o \
216 glib_io_input_handler.o \
Gary Morainf80ef062012-05-16 14:57:04 -0700217 hook_table.o \
Paul Stewartf65320c2011-10-13 14:34:52 -0700218 http_proxy.o \
Paul Stewart188a84a2012-01-20 16:28:15 -0800219 http_request.o \
Paul Stewart95133562012-01-18 18:36:57 -0800220 http_url.o \
Paul Stewart1d18e8c2011-07-15 11:00:31 -0700221 ip_address.o \
Darin Petkove02b3ca2011-05-31 16:00:44 -0700222 ipconfig.o \
Chris Masonec6c6c132011-06-30 11:29:52 -0700223 ipconfig_dbus_adaptor.o \
Darin Petkov083047b2011-06-23 20:42:48 -0700224 key_file_store.o \
mukesh agrawal7a4e4002011-09-06 11:26:05 -0700225 key_value_store.o \
Paul Stewart3f43f432012-07-16 12:12:45 -0700226 link_monitor.o \
Darin Petkov7476a262012-04-12 16:30:46 +0200227 l2tp_ipsec_driver.o \
Chris Masone96832c32011-05-03 12:23:18 -0700228 manager.o \
Chris Masoned7732e42011-05-20 11:08:56 -0700229 manager_dbus_adaptor.o \
Christopher Wiley5781aa42012-07-30 14:42:23 -0700230 memory_log.o \
Thieu Le48e6d6d2011-12-06 00:40:27 +0000231 metrics.o \
Jorge Lucangeli Obesad43cc62012-04-11 16:25:43 -0700232 minijail.o \
Arman Uguray6e5639f2012-11-15 20:30:19 -0800233 mm1_bearer_proxy.o \
Arman Uguray2c39fab2012-12-12 16:56:34 -0800234 mm1_modem_location_proxy.o \
Jason Glasgowee1081c2012-03-06 15:14:53 -0500235 mm1_modem_modem3gpp_proxy.o \
236 mm1_modem_modemcdma_proxy.o \
237 mm1_modem_proxy.o \
238 mm1_modem_simple_proxy.o \
Arman Uguray618af2b2012-12-11 19:20:42 -0800239 mm1_modem_time_proxy.o \
Jason Glasgow74f5ef22012-03-29 16:15:04 -0400240 mm1_sim_proxy.o \
Darin Petkov5c97ac52011-07-19 16:30:49 -0700241 modem.o \
David Rochbergfa1d31d2012-03-20 10:38:07 -0400242 modem_1.o \
Darin Petkovbec79a22011-08-01 14:47:17 -0700243 modem_cdma_proxy.o \
David Rochbergfa1d31d2012-03-20 10:38:07 -0400244 modem_classic.o \
Darin Petkovc37a9c42012-09-06 15:28:22 +0200245 modem_gobi_proxy.o \
Darin Petkov975b5e72011-08-30 11:48:08 -0700246 modem_gsm_card_proxy.o \
Darin Petkova1e0a1c2011-08-25 15:08:33 -0700247 modem_gsm_network_proxy.o \
Darin Petkov887f2982011-07-14 16:10:17 -0700248 modem_info.o \
249 modem_manager.o \
Ben Chan5c853ef2012-10-05 00:05:37 -0700250 modem_manager_1.o \
Darin Petkovc90fe522011-07-15 13:59:47 -0700251 modem_manager_proxy.o \
Darin Petkove9d12e02011-07-27 15:09:37 -0700252 modem_proxy.o \
Darin Petkove604f702011-07-28 15:51:17 -0700253 modem_simple_proxy.o \
Wade Guthrie0d438532012-05-18 14:18:50 -0700254 netlink_socket.o \
Wade Guthrie16196242012-11-20 15:53:52 -0800255 nl80211_attribute.o \
repo syncdc085c82012-12-28 08:54:41 -0800256 nl80211_message.o \
Wade Guthrie0d438532012-05-18 14:18:50 -0700257 nl80211_socket.o \
Darin Petkov3c5e4dc2012-04-02 14:44:27 +0200258 nss.o \
Darin Petkov33af05c2012-02-28 10:10:30 +0100259 openvpn_driver.o \
Darin Petkov1c115202012-03-22 15:35:47 +0100260 openvpn_management_server.o \
Paul Stewarte6927402012-01-23 16:11:30 -0800261 portal_detector.o \
Gary Morain43bc6272012-01-30 14:01:15 -0800262 power_manager.o \
Darin Petkov394b7d42011-11-03 15:48:02 +0100263 power_manager_proxy.o \
Darin Petkov5a850472012-06-06 15:44:24 +0200264 process_killer.o \
Chris Masone52cd19b2011-06-29 17:23:04 -0700265 profile.o \
266 profile_dbus_adaptor.o \
Paul Stewart0756db92012-01-27 08:34:47 -0800267 profile_dbus_property_exporter.o \
Chris Masoneb925cc82011-06-22 15:39:57 -0700268 property_store.o \
Darin Petkovc90fe522011-07-15 13:59:47 -0700269 proxy_factory.o \
Paul Stewart75e89d22011-08-01 10:00:02 -0700270 routing_table.o \
Paul Stewartb6063942011-08-05 10:17:29 -0700271 resolver.o \
Eric Shienbrood3e20a232012-02-16 11:35:56 -0500272 rpc_task.o \
273 rpc_task_dbus_adaptor.o \
Paul Stewartf1ce5d22011-05-19 13:10:20 -0700274 rtnl_handler.o \
275 rtnl_listener.o \
Paul Stewartdd7df792011-07-15 11:09:50 -0700276 rtnl_message.o \
Ben Chanbc49ac72012-04-10 19:59:45 -0700277 scope_logger.o \
Chris Masone96832c32011-05-03 12:23:18 -0700278 service.o \
Chris Masoned7732e42011-05-20 11:08:56 -0700279 service_dbus_adaptor.o \
Paul Stewartc2350ee2011-10-19 12:28:40 -0700280 shill_ares.o \
Chris Masone96832c32011-05-03 12:23:18 -0700281 shill_config.o \
282 shill_daemon.o \
Chris Masoneb9c00592011-10-06 13:10:39 -0700283 shill_test_config.o \
Paul Stewartc2350ee2011-10-19 12:28:40 -0700284 shill_time.o \
Darin Petkov633ac6f2011-07-08 13:56:13 -0700285 sockets.o \
Paul Stewart1062d9d2012-04-27 10:42:27 -0700286 static_ip_parameters.o \
mukesh agrawalb20776f2012-02-10 16:00:36 -0800287 supplicant_bss_proxy.o \
mukesh agrawalaf571952011-07-14 14:31:12 -0700288 supplicant_interface_proxy.o \
Paul Stewart835934a2012-12-06 19:27:09 -0800289 supplicant_network_proxy.o \
mukesh agrawalaf571952011-07-14 14:31:12 -0700290 supplicant_process_proxy.o \
Paul Stewartfdd16072011-09-16 12:41:35 -0700291 technology.o \
mukesh agrawal93a29ed2012-04-17 16:13:01 -0700292 virtio_ethernet.o \
Darin Petkovf20994f2012-03-05 16:12:19 +0100293 vpn.o \
Darin Petkovb451d6e2012-04-23 11:56:41 +0200294 vpn_driver.o \
Darin Petkov33af05c2012-02-28 10:10:30 +0100295 vpn_provider.o \
296 vpn_service.o \
mukesh agrawalb54601c2011-06-07 17:39:22 -0700297 wifi.o \
298 wifi_endpoint.o \
mukesh agrawal6e277772011-09-29 15:04:23 -0700299 wifi_service.o \
Ben Chan99c8a4d2012-05-01 08:11:53 -0700300 wimax.o \
Darin Petkov096b3472012-05-15 10:26:22 +0200301 wimax_device_proxy.o \
302 wimax_manager_proxy.o \
Darin Petkov9893d9c2012-05-17 15:27:31 -0700303 wimax_network_proxy.o \
Darin Petkovb72b62e2012-05-15 16:55:36 +0200304 wimax_provider.o \
Ben Chan99c8a4d2012-05-01 08:11:53 -0700305 wimax_service.o \
Darin Petkov5236a8e2012-02-21 10:26:55 +0100306 wpa_supplicant.o \
Daniel Erat0818cca2012-12-14 10:16:21 -0800307 ) \
308 $(PROTO_BINDINGS_OBJS)
Chris Masone96832c32011-05-03 12:23:18 -0700309
310SHILL_BIN = shill
mukesh agrawal837bb562011-11-23 01:06:01 +0000311# Broken out separately, because (unlike other SHILL_OBJS), it
312# shouldn't be linked into TEST_BIN.
Darin Petkov5236a8e2012-02-21 10:26:55 +0100313SHILL_MAIN_OBJ = $(BUILDDIR)/shill_main.o
Chris Masone96832c32011-05-03 12:23:18 -0700314
315TEST_BIN = shill_unittest
Darin Petkov5236a8e2012-02-21 10:26:55 +0100316TEST_OBJS = $(addprefix $(BUILDDIR)/, \
Paul Stewartac1328e2012-07-20 11:55:40 -0700317 arp_client_unittest.o \
Paul Stewart91a5aac2012-07-20 11:55:40 -0700318 arp_packet_unittest.o \
Paul Stewartf65320c2011-10-13 14:34:52 -0700319 async_connection_unittest.o \
Paul Stewart3ecfa2b2011-07-15 10:47:42 -0700320 byte_string_unittest.o \
Darin Petkovcb547732011-11-09 13:55:26 +0100321 cellular_capability_cdma_unittest.o \
Jason Glasgow82f9ab32012-04-04 14:27:19 -0400322 cellular_capability_classic_unittest.o \
Darin Petkovb05315f2011-11-07 10:14:25 +0100323 cellular_capability_gsm_unittest.o \
Jason Glasgowef965562012-04-10 16:12:35 -0400324 cellular_capability_universal_unittest.o \
Ben Chanb39cb312012-11-01 22:55:25 -0700325 cellular_operator_info_unittest.o \
Darin Petkovb72cf402011-11-22 14:51:39 +0100326 cellular_service_unittest.o \
Chris Masoneb925cc82011-06-22 15:39:57 -0700327 cellular_unittest.o \
Darin Petkov823c47e2011-06-27 16:15:35 -0700328 crypto_des_cbc_unittest.o \
Darin Petkov86964e02011-06-29 13:49:28 -0700329 crypto_provider_unittest.o \
Darin Petkov877642b2011-06-27 13:37:22 -0700330 crypto_rot47_unittest.o \
Wade Guthrie0d438532012-05-18 14:18:50 -0700331 config80211_unittest.o \
Paul Stewartdd60e452011-08-08 11:38:36 -0700332 connection_unittest.o \
Chris Masoned0ceb8c2011-06-02 10:05:39 -0700333 dbus_adaptor_unittest.o \
Darin Petkov002c58e2012-06-19 02:56:05 +0200334 dbus_manager_unittest.o \
Darin Petkove0a312e2011-07-20 13:45:28 -0700335 dbus_properties_unittest.o \
Chris Masone88cbd5f2011-07-03 14:30:04 -0700336 default_profile_unittest.o \
Darin Petkove02b3ca2011-05-31 16:00:44 -0700337 device_info_unittest.o \
Darin Petkovafa6fc42011-06-21 16:21:08 -0700338 device_unittest.o \
Darin Petkove7cb7f82011-06-03 13:21:51 -0700339 dhcp_config_unittest.o \
Darin Petkov98dd6a02011-06-10 15:12:57 -0700340 dhcp_provider_unittest.o \
Darin Petkovf0136cd2012-11-07 16:18:02 +0100341 diagnostics_reporter_unittest.o \
Paul Stewartc2350ee2011-10-19 12:28:40 -0700342 dns_client_unittest.o \
Darin Petkove4c0ace2011-08-24 10:32:46 -0700343 error_unittest.o \
Paul Stewartcf199de2012-08-16 07:50:41 -0700344 ethernet_service_unittest.o \
Gary Morainf80ef062012-05-16 14:57:04 -0700345 hook_table_unittest.o \
Paul Stewartf65320c2011-10-13 14:34:52 -0700346 http_proxy_unittest.o \
Paul Stewart188a84a2012-01-20 16:28:15 -0800347 http_request_unittest.o \
Paul Stewart95133562012-01-18 18:36:57 -0800348 http_url_unittest.o \
Paul Stewart1d18e8c2011-07-15 11:00:31 -0700349 ip_address_unittest.o \
Darin Petkove02b3ca2011-05-31 16:00:44 -0700350 ipconfig_unittest.o \
Darin Petkov083047b2011-06-23 20:42:48 -0700351 key_file_store_unittest.o \
Darin Petkov7f060332012-03-14 11:46:47 +0100352 key_value_store_unittest.o \
Darin Petkov7476a262012-04-12 16:30:46 +0200353 l2tp_ipsec_driver_unittest.o \
Paul Stewart3f43f432012-07-16 12:12:45 -0700354 link_monitor_unittest.o \
Darin Petkove02b3ca2011-05-31 16:00:44 -0700355 manager_unittest.o \
Christopher Wiley5781aa42012-07-30 14:42:23 -0700356 memory_log_unittest.o \
Thieu Le48e6d6d2011-12-06 00:40:27 +0000357 metrics_unittest.o \
Chris Masone95207da2011-06-29 16:50:49 -0700358 mock_adaptors.o \
Paul Stewartc2350ee2011-10-19 12:28:40 -0700359 mock_ares.o \
Paul Stewartac1328e2012-07-20 11:55:40 -0700360 mock_arp_client.o \
Paul Stewartf65320c2011-10-13 14:34:52 -0700361 mock_async_connection.o \
David Rochbergfa1d31d2012-03-20 10:38:07 -0400362 mock_cellular.o \
Ben Chan15786032012-11-04 21:28:02 -0800363 mock_cellular_operator_info.o \
Jason Glasgow14521872012-05-07 19:12:15 -0400364 mock_cellular_service.o \
Paul Stewartc1dec4d2011-12-08 15:25:28 -0800365 mock_connection.o \
Darin Petkove02b3ca2011-05-31 16:00:44 -0700366 mock_control.o \
Darin Petkov2b8e44e2012-06-25 15:13:26 +0200367 mock_dbus_manager.o \
David Rochberg7cb06f62012-03-05 11:23:44 -0500368 mock_dbus_objectmanager_proxy.o \
Darin Petkov1bdedf12011-08-26 13:32:11 -0700369 mock_dbus_properties_proxy.o \
Darin Petkov18fb2f72012-06-14 09:09:34 +0200370 mock_dbus_service_proxy.o \
Chris Masonea82b7112011-05-25 15:16:29 -0700371 mock_device.o \
Darin Petkov1bdedf12011-08-26 13:32:11 -0700372 mock_device_info.o \
373 mock_dhcp_config.o \
374 mock_dhcp_provider.o \
375 mock_dhcp_proxy.o \
Darin Petkov385b9bc2012-12-03 15:25:05 +0100376 mock_diagnostics_reporter.o \
Paul Stewartf65320c2011-10-13 14:34:52 -0700377 mock_dns_client.o \
Paul Stewartcf199de2012-08-16 07:50:41 -0700378 mock_ethernet.o \
Paul Stewartc2350ee2011-10-19 12:28:40 -0700379 mock_event_dispatcher.o \
Darin Petkov1bdedf12011-08-26 13:32:11 -0700380 mock_glib.o \
Paul Stewarte6927402012-01-23 16:11:30 -0800381 mock_http_request.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700382 mock_ipconfig.o \
Paul Stewart6c72c972012-07-27 11:29:20 -0700383 mock_link_monitor.o \
Gary Morain8a5726a2012-05-15 10:56:49 -0700384 mock_log.o \
385 mock_log_unittest.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700386 mock_manager.o \
Thieu Le3426c8f2012-01-11 17:35:11 -0800387 mock_metrics.o \
Jorge Lucangeli Obesad43cc62012-04-11 16:25:43 -0700388 mock_minijail.o \
Arman Uguray6e5639f2012-11-15 20:30:19 -0800389 mock_mm1_bearer_proxy.o \
Arman Uguray2c39fab2012-12-12 16:56:34 -0800390 mock_mm1_modem_location_proxy.o \
Jason Glasgowef965562012-04-10 16:12:35 -0400391 mock_mm1_modem_modemcdma_proxy.o \
392 mock_mm1_modem_modem3gpp_proxy.o \
393 mock_mm1_modem_proxy.o \
394 mock_mm1_modem_simple_proxy.o \
Arman Uguray618af2b2012-12-11 19:20:42 -0800395 mock_mm1_modem_time_proxy.o \
Jason Glasgowef965562012-04-10 16:12:35 -0400396 mock_mm1_sim_proxy.o \
David Rochbergfa1d31d2012-03-20 10:38:07 -0400397 mock_modem.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700398 mock_modem_cdma_proxy.o \
Darin Petkovc37a9c42012-09-06 15:28:22 +0200399 mock_modem_gobi_proxy.o \
Darin Petkov975b5e72011-08-30 11:48:08 -0700400 mock_modem_gsm_card_proxy.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700401 mock_modem_gsm_network_proxy.o \
Paul Stewart8c116a92012-05-02 18:30:03 -0700402 mock_modem_info.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700403 mock_modem_manager_proxy.o \
404 mock_modem_proxy.o \
405 mock_modem_simple_proxy.o \
Darin Petkov3c5e4dc2012-04-02 14:44:27 +0200406 mock_nss.o \
Darin Petkov1c115202012-03-22 15:35:47 +0100407 mock_openvpn_driver.o \
Darin Petkov46463022012-03-29 14:57:32 +0200408 mock_openvpn_management_server.o \
Paul Stewartc681fa02012-03-02 19:40:04 -0800409 mock_portal_detector.o \
Gary Morainac1bdb42012-02-16 17:42:29 -0800410 mock_power_manager.o \
Darin Petkov394b7d42011-11-03 15:48:02 +0100411 mock_power_manager_proxy.o \
Darin Petkov5a850472012-06-06 15:44:24 +0200412 mock_process_killer.o \
Chris Masone7aa5f902011-07-11 11:13:35 -0700413 mock_profile.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700414 mock_property_store.o \
Thieu Lefb46caf2012-03-08 11:57:15 -0800415 mock_proxy_factory.o \
Darin Petkoveac68e62011-08-26 16:24:51 -0700416 mock_resolver.o \
417 mock_routing_table.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700418 mock_rtnl_handler.o \
Chris Masonea82b7112011-05-25 15:16:29 -0700419 mock_service.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700420 mock_sockets.o \
Darin Petkoveac68e62011-08-26 16:24:51 -0700421 mock_store.o \
mukesh agrawalb20776f2012-02-10 16:00:36 -0800422 mock_supplicant_bss_proxy.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700423 mock_supplicant_interface_proxy.o \
Paul Stewart835934a2012-12-06 19:27:09 -0800424 mock_supplicant_network_proxy.o \
Darin Petkovef34f182011-08-26 14:14:40 -0700425 mock_supplicant_process_proxy.o \
Paul Stewartc2350ee2011-10-19 12:28:40 -0700426 mock_time.o \
Darin Petkov36a3ace2012-03-06 17:22:14 +0100427 mock_vpn.o \
Darin Petkov33af05c2012-02-28 10:10:30 +0100428 mock_vpn_driver.o \
Paul Stewart8c116a92012-05-02 18:30:03 -0700429 mock_vpn_provider.o \
Darin Petkov79d74c92012-03-07 17:20:32 +0100430 mock_vpn_service.o \
mukesh agrawal7a4e4002011-09-06 11:26:05 -0700431 mock_wifi.o \
mukesh agrawal7ec71312011-11-10 02:08:26 +0000432 mock_wifi_service.o \
Ben Chanc07362b2012-05-12 10:54:11 -0700433 mock_wimax.o \
Darin Petkov096b3472012-05-15 10:26:22 +0200434 mock_wimax_device_proxy.o \
435 mock_wimax_manager_proxy.o \
Darin Petkov9893d9c2012-05-17 15:27:31 -0700436 mock_wimax_network_proxy.o \
Darin Petkove4b27022012-05-16 13:28:50 +0200437 mock_wimax_provider.o \
Ben Chanc07362b2012-05-12 10:54:11 -0700438 mock_wimax_service.o \
Jason Glasgow82f9ab32012-04-04 14:27:19 -0400439 modem_1_unittest.o \
Darin Petkov887f2982011-07-14 16:10:17 -0700440 modem_info_unittest.o \
441 modem_manager_unittest.o \
Darin Petkove0a312e2011-07-20 13:45:28 -0700442 modem_unittest.o \
mukesh agrawaldc42bb32011-07-28 10:40:26 -0700443 nice_mock_control.o \
Darin Petkov3c5e4dc2012-04-02 14:44:27 +0200444 nss_unittest.o \
Darin Petkov33af05c2012-02-28 10:10:30 +0100445 openvpn_driver_unittest.o \
Darin Petkov1c115202012-03-22 15:35:47 +0100446 openvpn_management_server_unittest.o \
Paul Stewarte6927402012-01-23 16:11:30 -0800447 portal_detector_unittest.o \
Gary Morain43bc6272012-01-30 14:01:15 -0800448 power_manager_unittest.o \
Darin Petkov5a850472012-06-06 15:44:24 +0200449 process_killer_unittest.o \
Paul Stewart0756db92012-01-27 08:34:47 -0800450 profile_dbus_property_exporter_unittest.o \
Darin Petkova4766822011-07-07 10:42:22 -0700451 profile_unittest.o \
Chris Masone27bf1032011-06-28 17:02:01 -0700452 property_accessor_unittest.o \
Chris Masoneb925cc82011-06-22 15:39:57 -0700453 property_store_unittest.o \
Paul Stewartb6063942011-08-05 10:17:29 -0700454 resolver_unittest.o \
Paul Stewart75e89d22011-08-01 10:00:02 -0700455 routing_table_unittest.o \
Darin Petkova9b1fed2012-02-29 11:49:05 +0100456 rpc_task_unittest.o \
Darin Petkove0a312e2011-07-20 13:45:28 -0700457 rtnl_handler_unittest.o \
Darin Petkovca432fc2011-07-08 15:56:57 -0700458 rtnl_listener_unittest.o \
Paul Stewartdd7df792011-07-15 11:09:50 -0700459 rtnl_message_unittest.o \
Ben Chanbc49ac72012-04-10 19:59:45 -0700460 scope_logger_unittest.o \
Chris Masone6515aab2011-10-12 16:19:09 -0700461 service_under_test.o \
Chris Masone3bd3c8c2011-06-13 08:20:26 -0700462 service_unittest.o \
Darin Petkove02b3ca2011-05-31 16:00:44 -0700463 shill_unittest.o \
Darin Petkovd9050bb2012-09-26 16:02:52 +0200464 shims/certificates_unittest.o \
Darin Petkov804e8d02012-10-10 16:44:36 +0200465 shims/environment_unittest.o \
Paul Stewart1062d9d2012-04-27 10:42:27 -0700466 static_ip_parameters_unittest.o \
Ben Chanc12cf662012-04-05 14:47:18 -0700467 technology_unittest.o \
Chris Masone853b81b2011-06-24 14:11:41 -0700468 testrunner.o \
Darin Petkovb451d6e2012-04-23 11:56:41 +0200469 vpn_driver_unittest.o \
Darin Petkov33af05c2012-02-28 10:10:30 +0100470 vpn_provider_unittest.o \
471 vpn_service_unittest.o \
Darin Petkovf20994f2012-03-05 16:12:19 +0100472 vpn_unittest.o \
mukesh agrawal6e277772011-09-29 15:04:23 -0700473 wifi_endpoint_unittest.o \
Chris Masone34af2182011-08-22 11:59:36 -0700474 wifi_service_unittest.o \
Darin Petkov5236a8e2012-02-21 10:26:55 +0100475 wifi_unittest.o \
Darin Petkovb72b62e2012-05-15 16:55:36 +0200476 wimax_provider_unittest.o \
Ben Chanc07362b2012-05-12 10:54:11 -0700477 wimax_service_unittest.o \
478 wimax_unittest.o \
Darin Petkov5236a8e2012-02-21 10:26:55 +0100479 )
Chris Masone96832c32011-05-03 12:23:18 -0700480
Darin Petkovbd0dcc82012-11-29 10:51:12 +0100481NET_DIAGS_UPLOAD_MAIN_OBJ = $(BUILD_SHIMS_DIR)/net_diags_upload.o
482NET_DIAGS_UPLOAD_BIN = $(BUILD_SHIMS_DIR)/net-diags-upload
483
Darin Petkovd9050bb2012-09-26 16:02:52 +0200484NSS_GET_CERT_OBJS = $(BUILD_SHIMS_DIR)/certificates.o
485NSS_GET_CERT_MAIN_OBJ = $(BUILD_SHIMS_DIR)/nss_get_cert.o
486NSS_GET_CERT_BIN = $(BUILD_SHIMS_DIR)/nss-get-cert
Darin Petkovc90fe522011-07-15 13:59:47 -0700487
Darin Petkov804e8d02012-10-10 16:44:36 +0200488OPENVPN_SCRIPT_OBJS = $(addprefix $(BUILD_SHIMS_DIR)/, \
489 environment.o \
490 task_proxy.o \
491 )
492OPENVPN_SCRIPT_MAIN_OBJ = $(BUILD_SHIMS_DIR)/openvpn_script.o
493OPENVPN_SCRIPT_BIN = $(BUILD_SHIMS_DIR)/openvpn-script
494
Darin Petkov16f63492012-10-23 11:12:58 +0200495PPPD_PLUGIN_OBJS = $(addprefix $(BUILD_SHIMS_DIR)/, \
Darin Petkov374b5ee2012-11-06 11:20:04 +0100496 c_ppp.pic.o \
497 environment.pic.o \
498 ppp.pic.o \
499 pppd_plugin.pic.o \
500 task_proxy.pic.o \
Darin Petkov16f63492012-10-23 11:12:58 +0200501 )
502PPPD_PLUGIN_SO = $(BUILD_SHIMS_DIR)/shill-pppd-plugin.so
503
504SET_APN_HELPER_MAIN_OBJ = $(BUILD_SHIMS_DIR)/set_apn_helper.o
505SET_APN_HELPER_BIN = $(BUILD_SHIMS_DIR)/set-apn-helper
506
Darin Petkov4c2aa332012-10-17 10:33:52 +0200507WPA_SUPPLICANT_CONF = $(BUILD_SHIMS_DIR)/wpa_supplicant.conf
508
Darin Petkovd9050bb2012-09-26 16:02:52 +0200509OBJS = \
Darin Petkovbd0dcc82012-11-29 10:51:12 +0100510 $(NET_DIAGS_UPLOAD_MAIN_OBJ) \
Darin Petkovd9050bb2012-09-26 16:02:52 +0200511 $(NSS_GET_CERT_MAIN_OBJ) \
512 $(NSS_GET_CERT_OBJS) \
Darin Petkov804e8d02012-10-10 16:44:36 +0200513 $(OPENVPN_SCRIPT_MAIN_OBJ) \
514 $(OPENVPN_SCRIPT_OBJS) \
Darin Petkove6ca3202012-10-19 14:49:56 +0200515 $(PPPD_PLUGIN_OBJS) \
Darin Petkov16f63492012-10-23 11:12:58 +0200516 $(SET_APN_HELPER_MAIN_OBJ) \
Darin Petkovd9050bb2012-09-26 16:02:52 +0200517 $(SHILL_MAIN_OBJ) \
518 $(SHILL_OBJS) \
519 $(TEST_OBJS)
520
521.PHONY: all clean shims
522
523all: $(SHILL_BIN) $(TEST_BIN) shims
524
Darin Petkove6ca3202012-10-19 14:49:56 +0200525shims: \
Darin Petkovbd0dcc82012-11-29 10:51:12 +0100526 $(NET_DIAGS_UPLOAD_BIN) \
Darin Petkove6ca3202012-10-19 14:49:56 +0200527 $(NSS_GET_CERT_BIN) \
528 $(OPENVPN_SCRIPT_BIN) \
529 $(PPPD_PLUGIN_SO) \
Darin Petkov16f63492012-10-23 11:12:58 +0200530 $(SET_APN_HELPER_BIN) \
Darin Petkove6ca3202012-10-19 14:49:56 +0200531 $(WPA_SUPPLICANT_CONF)
Darin Petkov804e8d02012-10-10 16:44:36 +0200532
533$(BUILD_DBUS_BINDINGS_SHIMS_DIR)/flimflam-task.xml: \
534 $(BUILD_DBUS_BINDINGS_DIR)/flimflam-task.xml
535 cp $< $@
Chris Masone96832c32011-05-03 12:23:18 -0700536
Darin Petkov5236a8e2012-02-21 10:26:55 +0100537$(BUILD_DBUS_BINDINGS_DIR)/%.xml: $(DBUS_BINDINGS_DIR)/%.xml
538 cp $< $@
539
Darin Petkov4a09b6b2011-07-19 12:52:06 -0700540$(DBUS_PROXY_BINDINGS): %.h: %.xml
Darin Petkov005aa382011-11-17 14:26:21 +0100541 $(DBUSXX_XML2CPP) $< --proxy=$@ --sync --async
Chris Masone413a3192011-05-09 17:10:05 -0700542
Darin Petkov4a09b6b2011-07-19 12:52:06 -0700543$(DBUS_ADAPTOR_BINDINGS): %.h: %.xml
Chris Masone14de6e52011-05-09 09:20:59 -0700544 $(DBUSXX_XML2CPP) $< --adaptor=$@
545
Daniel Erat0818cca2012-12-14 10:16:21 -0800546$(PROTO_BINDINGS_H): %.h: %.cc ;
547
548$(PROTO_BINDINGS_CC): \
549 $(BUILD_PROTO_BINDINGS_DIR)/%.pb.cc: $(SYSTEM_API_PROTO_PATH)/%.proto
550 $(PROTOC) --proto_path=$(SYSTEM_API_PROTO_PATH) \
551 --cpp_out=$(BUILD_PROTO_BINDINGS_DIR) $<
552
Darin Petkove6ca3202012-10-19 14:49:56 +0200553$(BUILDDIR)/%.o: %.c
554 $(CC) $(CPPFLAGS) $(CFLAGS) $(INCLUDE_DIRS) -MMD -c $< -o $@
555
Daniel Erat0818cca2012-12-14 10:16:21 -0800556$(PROTO_BINDINGS_OBJS): INCLUDE_DIRS += -iquote $(BUILD_PROTO_BINDINGS_DIR)
557
Darin Petkov5236a8e2012-02-21 10:26:55 +0100558$(BUILDDIR)/%.o: %.cc
mukesh agrawal837bb562011-11-23 01:06:01 +0000559 $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE_DIRS) -MMD -c $< -o $@
Chris Masone96832c32011-05-03 12:23:18 -0700560
Darin Petkov374b5ee2012-11-06 11:20:04 +0100561$(BUILDDIR)/%.pic.o: %.c
562 $(CC) $(CPPFLAGS) $(CFLAGS) -fPIC $(INCLUDE_DIRS) -MMD -c $< -o $@
563
564$(BUILDDIR)/%.pic.o: %.cc
565 $(CXX) $(CPPFLAGS) $(CXXFLAGS) -fPIC $(INCLUDE_DIRS) -MMD -c $< -o $@
566
Daniel Erat0818cca2012-12-14 10:16:21 -0800567$(SHILL_OBJS): \
568 $(DBUS_ADAPTOR_BINDINGS) \
569 $(DBUS_PROXY_BINDINGS) \
570 $(PROTO_BINDINGS_H)
Chris Masone14de6e52011-05-09 09:20:59 -0700571
Darin Petkovd9050bb2012-09-26 16:02:52 +0200572$(SHILL_LIB): $(SHILL_OBJS)
573 $(AR) rcs $@ $^
574
575$(SHILL_BIN): $(SHILL_MAIN_OBJ) $(SHILL_LIB)
576 $(CXX) $(CXXFLAGS) $(LDFLAGS) $^ $(SHILL_LIBS) -o $@
577
Darin Petkovbd0dcc82012-11-29 10:51:12 +0100578$(NET_DIAGS_UPLOAD_BIN): $(NET_DIAGS_UPLOAD_MAIN_OBJ)
Darin Petkovfac01f02012-12-06 12:44:07 +0100579 $(CXX) $(CXXFLAGS) $(LDFLAGS) $^ $(NET_DIAGS_UPLOAD_LIBS) -o $@
Darin Petkovbd0dcc82012-11-29 10:51:12 +0100580
Darin Petkovd9050bb2012-09-26 16:02:52 +0200581$(NSS_GET_CERT_BIN): $(NSS_GET_CERT_MAIN_OBJ) $(NSS_GET_CERT_OBJS) $(SHILL_LIB)
582 $(CXX) $(CXXFLAGS) $(LDFLAGS) $^ $(NSS_GET_CERT_LIBS) -o $@
Chris Masone96832c32011-05-03 12:23:18 -0700583
Elly Fong-Jones419a6652012-10-16 12:53:51 -0400584$(OPENVPN_SCRIPT_OBJS): $(DBUS_PROXY_BINDINGS)
585$(OPENVPN_SCRIPT_MAIN_OBJ): $(DBUS_PROXY_BINDINGS)
586
Darin Petkov804e8d02012-10-10 16:44:36 +0200587$(OPENVPN_SCRIPT_BIN): $(OPENVPN_SCRIPT_MAIN_OBJ) $(OPENVPN_SCRIPT_OBJS)
588 $(CXX) $(CXXFLAGS) $(LDFLAGS) $^ $(OPENVPN_SCRIPT_LIBS) -o $@
589
Darin Petkov16f63492012-10-23 11:12:58 +0200590$(PPPD_PLUGIN_OBJS): $(DBUS_PROXY_BINDINGS)
591
592$(PPPD_PLUGIN_SO): $(PPPD_PLUGIN_OBJS)
593 $(CXX) $(LDFLAGS) -shared $^ $(PPPD_PLUGIN_LIBS) -o $@
594
595$(SET_APN_HELPER_BIN): $(SET_APN_HELPER_MAIN_OBJ)
596 $(CXX) $(CXXFLAGS) $(LDFLAGS) $^ $(SET_APN_HELPER_LIBS) -o $@
597
Darin Petkov4c2aa332012-10-17 10:33:52 +0200598$(WPA_SUPPLICANT_CONF): shims/wpa_supplicant.conf.in
599 sed s,@libdir@,$(LIBDIR), $^ > $@
600
Paul Stewart291a4732012-03-14 19:19:02 -0700601$(TEST_BIN): CPPFLAGS += -DUNIT_TEST -DSYSROOT=\"$(SYSROOT)\"
Darin Petkov804e8d02012-10-10 16:44:36 +0200602$(TEST_BIN): \
603 $(TEST_OBJS) \
604 $(NSS_GET_CERT_OBJS) \
605 $(OPENVPN_SCRIPT_OBJS) \
606 $(SHILL_LIB)
Darin Petkovd9050bb2012-09-26 16:02:52 +0200607 $(CXX) $(CXXFLAGS) $(LDFLAGS) $^ $(TEST_LIBS) -o $@
Chris Masone96832c32011-05-03 12:23:18 -0700608
609clean:
Darin Petkove604f702011-07-28 15:51:17 -0700610 rm -rf \
Darin Petkov5236a8e2012-02-21 10:26:55 +0100611 $(BUILDDIR) \
Darin Petkove604f702011-07-28 15:51:17 -0700612 $(SHILL_BIN) \
613 $(TEST_BIN)
mukesh agrawal837bb562011-11-23 01:06:01 +0000614
Darin Petkovd9050bb2012-09-26 16:02:52 +0200615-include $(OBJS:.o=.d)