blob: 6270772bf859da33ee9b92c4f73f7b6c88cce3a8 [file] [log] [blame]
Alex Deymod5561a52015-09-03 23:17:52 -07001#
2# Copyright (C) 2015 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17LOCAL_PATH := $(my-dir)
18
Alex Deymo787dc412015-10-29 11:39:20 -070019# Default values for the USE flags. Override these USE flags from your product.
Alex Deymo4218b7e2015-11-17 21:14:42 -030020BRILLO_USE_DBUS ?= 1
Alex Deymo787dc412015-10-29 11:39:20 -070021BRILLO_USE_HWID_OVERRIDE ?= 0
22BRILLO_USE_MTD ?= 0
23BRILLO_USE_POWER_MANAGEMENT ?= 0
24
Alex Deymoc372ab62015-10-29 00:43:26 -070025ue_common_cflags := \
Alex Deymo4218b7e2015-11-17 21:14:42 -030026 -DUSE_DBUS=$(BRILLO_USE_DBUS) \
Alex Deymo787dc412015-10-29 11:39:20 -070027 -DUSE_HWID_OVERRIDE=$(BRILLO_USE_HWID_OVERRIDE) \
28 -DUSE_MTD=$(BRILLO_USE_MTD) \
29 -DUSE_POWER_MANAGEMENT=$(BRILLO_USE_POWER_MANAGEMENT) \
Alex Deymoc372ab62015-10-29 00:43:26 -070030 -D_FILE_OFFSET_BITS=64 \
31 -D_POSIX_C_SOURCE=199309L \
32 -Wa,--noexecstack \
33 -Wall \
34 -Werror \
35 -Wextra \
36 -Wformat=2 \
37 -Wno-psabi \
38 -Wno-unused-parameter \
39 -ffunction-sections \
40 -fstack-protector-strong \
41 -fvisibility=hidden
42ue_common_cppflags := \
43 -Wnon-virtual-dtor \
44 -fno-strict-aliasing \
45 -std=gnu++11
46ue_common_ldflags := \
47 -Wl,--gc-sections
48ue_common_c_includes := \
49 $(LOCAL_PATH)/client_library/include \
50 external/gtest/include \
51 system
52ue_common_shared_libraries := \
53 libbrillo \
Alex Deymoc372ab62015-10-29 00:43:26 -070054 libbrillo-http \
55 libbrillo-stream \
Alex Deymo4218b7e2015-11-17 21:14:42 -030056 libchrome
Alex Deymod5561a52015-09-03 23:17:52 -070057
Alex Deymo4218b7e2015-11-17 21:14:42 -030058ifeq ($(BRILLO_USE_DBUS),1)
59ue_common_shared_libraries += \
60 libbrillo-dbus \
61 libchrome-dbus
62endif # BRILLO_USE_DBUS == 1
63
64
65ifeq ($(BRILLO_USE_DBUS),1)
Alex Deymoc372ab62015-10-29 00:43:26 -070066
67# update_engine_client-dbus-proxies (from generate-dbus-proxies.gypi)
68# ========================================================
69include $(CLEAR_VARS)
70LOCAL_MODULE := update_engine_client-dbus-proxies
71LOCAL_MODULE_CLASS := STATIC_LIBRARIES
72LOCAL_SRC_FILES := \
73 dbus_bindings/dbus-service-config.json \
74 dbus_bindings/org.chromium.UpdateEngineInterface.dbus-xml
75LOCAL_DBUS_PROXY_PREFIX := update_engine
76include $(BUILD_STATIC_LIBRARY)
Alex Deymod5561a52015-09-03 23:17:52 -070077
Alex Deymo4218b7e2015-11-17 21:14:42 -030078endif # BRILLO_USE_DBUS == 1
79
Alex Deymod5561a52015-09-03 23:17:52 -070080# update_metadata-protos (type: static_library)
81# ========================================================
82# Protobufs.
Alex Deymoc372ab62015-10-29 00:43:26 -070083ue_update_metadata_protos_exported_static_libraries := \
84 update_metadata-protos
85ue_update_metadata_protos_exported_shared_libraries := \
86 libprotobuf-cpp-lite-rtti
87
Alex Deymod5561a52015-09-03 23:17:52 -070088include $(CLEAR_VARS)
89LOCAL_MODULE := update_metadata-protos
90LOCAL_MODULE_CLASS := STATIC_LIBRARIES
91generated_sources_dir := $(call local-generated-sources-dir)
Alex Deymoc372ab62015-10-29 00:43:26 -070092LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/system
Alex Deymod5561a52015-09-03 23:17:52 -070093LOCAL_SRC_FILES := \
94 update_metadata.proto
Alex Deymod5561a52015-09-03 23:17:52 -070095include $(BUILD_STATIC_LIBRARY)
96
Alex Deymo4218b7e2015-11-17 21:14:42 -030097ifeq ($(BRILLO_USE_DBUS),1)
98
Alex Deymod5561a52015-09-03 23:17:52 -070099# update_engine-dbus-adaptor (from generate-dbus-adaptors.gypi)
100# ========================================================
Alex Deymoc372ab62015-10-29 00:43:26 -0700101# Chrome D-Bus bindings.
Alex Deymod5561a52015-09-03 23:17:52 -0700102include $(CLEAR_VARS)
103LOCAL_MODULE := update_engine-dbus-adaptor
Alex Deymoc372ab62015-10-29 00:43:26 -0700104LOCAL_MODULE_CLASS := STATIC_LIBRARIES
Alex Deymod5561a52015-09-03 23:17:52 -0700105LOCAL_SRC_FILES := \
106 dbus_bindings/org.chromium.UpdateEngineInterface.dbus-xml
107include $(BUILD_STATIC_LIBRARY)
108
109# update_engine-dbus-libcros-client (from generate-dbus-proxies.gypi)
110# ========================================================
111include $(CLEAR_VARS)
112LOCAL_MODULE := update_engine-dbus-libcros-client
Alex Deymoc372ab62015-10-29 00:43:26 -0700113LOCAL_MODULE_CLASS := STATIC_LIBRARIES
Alex Deymod5561a52015-09-03 23:17:52 -0700114LOCAL_SRC_FILES := \
115 dbus_bindings/org.chromium.LibCrosService.dbus-xml
116LOCAL_DBUS_PROXY_PREFIX := libcros
117include $(BUILD_STATIC_LIBRARY)
118
Alex Deymo4218b7e2015-11-17 21:14:42 -0300119endif # BRILLO_USE_DBUS == 1
120
121
122#TODO(deymo): Re-enable this library once the dbus dependencies are removed from
123# the code.
124ifeq ($(BRILLO_USE_DBUS),1)
125
Alex Deymo39910dc2015-11-09 17:04:30 -0800126# libpayload_consumer (type: static_library)
Alex Deymod5561a52015-09-03 23:17:52 -0700127# ========================================================
Alex Deymo39910dc2015-11-09 17:04:30 -0800128# The payload application component and common dependencies.
129ue_libpayload_consumer_exported_c_includes := \
Alex Deymo7eb23052015-10-09 15:27:59 -0700130 $(LOCAL_PATH)/include \
131 external/cros/system_api/dbus
Alex Deymo39910dc2015-11-09 17:04:30 -0800132ue_libpayload_consumer_exported_static_libraries := \
133 update_metadata-protos \
134 update_engine-dbus-libcros-client \
135 update_engine_client-dbus-proxies \
136 libxz \
137 libbz \
138 libfs_mgr \
139 $(ue_update_metadata_protos_exported_static_libraries)
140ue_libpayload_consumer_exported_shared_libraries := \
141 libcrypto \
142 libcurl \
Alex Deymo39910dc2015-11-09 17:04:30 -0800143 libshill-client \
144 libssl \
145 libexpat \
146 libbrillo-policy \
147 libhardware \
148 libcutils \
149 $(ue_update_metadata_protos_exported_shared_libraries)
150
151include $(CLEAR_VARS)
152LOCAL_MODULE := libpayload_consumer
153LOCAL_MODULE_CLASS := STATIC_LIBRARIES
154LOCAL_CPP_EXTENSION := .cc
155LOCAL_RTTI_FLAG := -frtti
156LOCAL_CLANG := true
157LOCAL_EXPORT_C_INCLUDE_DIRS := $(ue_libpayload_consumer_exported_c_includes)
158LOCAL_CFLAGS := $(ue_common_cflags)
159LOCAL_CPPFLAGS := $(ue_common_cppflags)
160LOCAL_LDFLAGS := $(ue_common_ldflags)
161LOCAL_C_INCLUDES := \
162 $(ue_common_c_includes) \
163 $(ue_libpayload_consumer_exported_c_includes) \
164 external/e2fsprogs/lib
165LOCAL_STATIC_LIBRARIES := \
166 update_metadata-protos \
167 update_engine-dbus-libcros-client \
168 update_engine_client-dbus-proxies \
169 $(ue_libpayload_consumer_exported_static_libraries) \
170 $(ue_update_metadata_protos_exported_static_libraries)
171LOCAL_SHARED_LIBRARIES := \
172 $(ue_common_shared_libraries) \
173 $(ue_libpayload_consumer_exported_shared_libraries) \
174 $(ue_update_metadata_protos_exported_shared_libraries)
175LOCAL_SRC_FILES := \
176 common/action_processor.cc \
177 common/boot_control_android.cc \
178 common/boot_control_stub.cc \
179 common/certificate_checker.cc \
180 common/clock.cc \
181 common/constants.cc \
182 common/hardware_android.cc \
183 common/hash_calculator.cc \
184 common/http_common.cc \
185 common/http_fetcher.cc \
186 common/hwid_override.cc \
187 common/libcurl_http_fetcher.cc \
188 common/multi_range_http_fetcher.cc \
189 common/platform_constants_android.cc \
190 common/prefs.cc \
191 common/subprocess.cc \
192 common/terminator.cc \
193 common/utils.cc \
194 payload_consumer/bzip_extent_writer.cc \
195 payload_consumer/delta_performer.cc \
196 payload_consumer/download_action.cc \
197 payload_consumer/extent_writer.cc \
198 payload_consumer/file_descriptor.cc \
199 payload_consumer/file_writer.cc \
200 payload_consumer/filesystem_verifier_action.cc \
201 payload_consumer/install_plan.cc \
202 payload_consumer/payload_constants.cc \
203 payload_consumer/payload_verifier.cc \
204 payload_consumer/postinstall_runner_action.cc \
205 payload_consumer/xz_extent_writer.cc
206include $(BUILD_STATIC_LIBRARY)
207
Alex Deymo4218b7e2015-11-17 21:14:42 -0300208endif # BRILLO_USE_DBUS == 1
209
Alex Deymocd60dca2015-11-18 00:57:20 -0300210ifeq ($(BRILLO_USE_DBUS),1)
Alex Deymo4218b7e2015-11-17 21:14:42 -0300211
Alex Deymo39910dc2015-11-09 17:04:30 -0800212# libupdate_engine (type: static_library)
213# ========================================================
214# The main daemon static_library with all the code used to check for updates
215# with Omaha and expose a DBus daemon.
216ue_libupdate_engine_exported_c_includes := \
217 $(LOCAL_PATH)/include \
218 external/cros/system_api/dbus \
219 $(ue_libpayload_consumer_exported_c_includes)
Alex Deymoc372ab62015-10-29 00:43:26 -0700220ue_libupdate_engine_exported_static_libraries := \
Alex Deymo39910dc2015-11-09 17:04:30 -0800221 libpayload_consumer \
Alex Deymod5561a52015-09-03 23:17:52 -0700222 update_metadata-protos \
223 update_engine-dbus-adaptor \
224 update_engine-dbus-libcros-client \
225 update_engine_client-dbus-proxies \
Alex Deymoeadab7d2015-10-09 14:45:02 -0700226 libxz \
David Zeuthen753fadc2015-09-15 16:34:09 -0400227 libbz \
Alex Deymoc372ab62015-10-29 00:43:26 -0700228 libfs_mgr \
Alex Deymo39910dc2015-11-09 17:04:30 -0800229 $(ue_libpayload_consumer_exported_static_libraries) \
Alex Deymoc372ab62015-10-29 00:43:26 -0700230 $(ue_update_metadata_protos_exported_static_libraries)
231ue_libupdate_engine_exported_shared_libraries := \
Alex Deymod5561a52015-09-03 23:17:52 -0700232 libdbus \
233 libcrypto \
234 libcurl \
235 libmetrics \
Alex Deymo7eb23052015-10-09 15:27:59 -0700236 libshill-client \
Alex Deymod5561a52015-09-03 23:17:52 -0700237 libssl \
238 libexpat \
Alex Vakulenko1bab5a82015-10-27 11:47:28 -0700239 libbrillo-policy \
Alex Deymoeadab7d2015-10-09 14:45:02 -0700240 libhardware \
Alex Deymoc372ab62015-10-29 00:43:26 -0700241 libcutils \
Alex Deymo39910dc2015-11-09 17:04:30 -0800242 $(ue_libpayload_consumer_exported_shared_libraries) \
Alex Deymoc372ab62015-10-29 00:43:26 -0700243 $(ue_update_metadata_protos_exported_shared_libraries)
244
245include $(CLEAR_VARS)
246LOCAL_MODULE := libupdate_engine
247LOCAL_MODULE_CLASS := STATIC_LIBRARIES
248LOCAL_CPP_EXTENSION := .cc
249LOCAL_RTTI_FLAG := -frtti
250LOCAL_CLANG := true
251LOCAL_EXPORT_C_INCLUDE_DIRS := $(ue_libupdate_engine_exported_c_includes)
252LOCAL_CFLAGS := $(ue_common_cflags)
253LOCAL_CPPFLAGS := $(ue_common_cppflags)
254LOCAL_LDFLAGS := $(ue_common_ldflags)
255LOCAL_C_INCLUDES := \
256 $(ue_common_c_includes) \
257 $(ue_libupdate_engine_exported_c_includes) \
Alex Deymo39910dc2015-11-09 17:04:30 -0800258 $(ue_libpayload_consumer_exported_c_includes)
Alex Deymoc372ab62015-10-29 00:43:26 -0700259LOCAL_STATIC_LIBRARIES := \
Alex Deymo39910dc2015-11-09 17:04:30 -0800260 libpayload_consumer \
Alex Deymoc372ab62015-10-29 00:43:26 -0700261 update_metadata-protos \
262 update_engine-dbus-adaptor \
263 update_engine-dbus-libcros-client \
264 update_engine_client-dbus-proxies \
265 $(ue_libupdate_engine_exported_static_libraries) \
Alex Deymo39910dc2015-11-09 17:04:30 -0800266 $(ue_libpayload_consumer_exported_static_libraries) \
Alex Deymoc372ab62015-10-29 00:43:26 -0700267 $(ue_update_metadata_protos_exported_static_libraries)
268LOCAL_SHARED_LIBRARIES := \
269 $(ue_common_shared_libraries) \
270 $(ue_libupdate_engine_exported_shared_libraries) \
Alex Deymo39910dc2015-11-09 17:04:30 -0800271 $(ue_libpayload_consumer_exported_shared_libraries) \
Alex Deymoc372ab62015-10-29 00:43:26 -0700272 $(ue_update_metadata_protos_exported_shared_libraries)
Alex Deymod5561a52015-09-03 23:17:52 -0700273LOCAL_SRC_FILES := \
Alex Deymod5561a52015-09-03 23:17:52 -0700274 chrome_browser_proxy_resolver.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700275 connection_manager.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700276 daemon.cc \
277 dbus_service.cc \
Alex Deymo85616652015-10-15 18:48:31 -0700278 image_properties_android.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700279 libcros_proxy.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700280 metrics.cc \
Alex Deymo38429cf2015-11-11 18:27:22 -0800281 metrics_utils.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700282 omaha_request_action.cc \
283 omaha_request_params.cc \
284 omaha_response_handler_action.cc \
285 p2p_manager.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700286 payload_state.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700287 proxy_resolver.cc \
288 real_system_state.cc \
289 shill_proxy.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700290 update_attempter.cc \
291 update_manager/boxed_value.cc \
292 update_manager/chromeos_policy.cc \
293 update_manager/default_policy.cc \
294 update_manager/evaluation_context.cc \
295 update_manager/policy.cc \
296 update_manager/real_config_provider.cc \
297 update_manager/real_device_policy_provider.cc \
298 update_manager/real_random_provider.cc \
299 update_manager/real_shill_provider.cc \
300 update_manager/real_system_provider.cc \
301 update_manager/real_time_provider.cc \
302 update_manager/real_updater_provider.cc \
303 update_manager/state_factory.cc \
304 update_manager/update_manager.cc \
Alex Deymo39910dc2015-11-09 17:04:30 -0800305 update_status_utils.cc
Alex Deymod5561a52015-09-03 23:17:52 -0700306include $(BUILD_STATIC_LIBRARY)
307
Alex Deymocd60dca2015-11-18 00:57:20 -0300308endif # BRILLO_USE_DBUS == 1
Alex Deymo4218b7e2015-11-17 21:14:42 -0300309
Alex Deymod5561a52015-09-03 23:17:52 -0700310# update_engine (type: executable)
311# ========================================================
312# update_engine daemon.
313include $(CLEAR_VARS)
314LOCAL_MODULE := update_engine
315LOCAL_MODULE_CLASS := EXECUTABLES
Sen Jiang56092772015-11-23 14:41:00 -0800316LOCAL_REQUIRED_MODULES := \
Alex Deymoab494462015-11-30 17:07:36 -0300317 bspatch \
318 cacerts_google
Alex Deymoc372ab62015-10-29 00:43:26 -0700319LOCAL_CPP_EXTENSION := .cc
Alex Deymoc372ab62015-10-29 00:43:26 -0700320LOCAL_CLANG := true
321LOCAL_CFLAGS := $(ue_common_cflags)
322LOCAL_CPPFLAGS := $(ue_common_cppflags)
323LOCAL_LDFLAGS := $(ue_common_ldflags)
324LOCAL_C_INCLUDES := \
Alex Deymo4218b7e2015-11-17 21:14:42 -0300325 $(ue_common_c_includes)
326
327ifdef BRILLO
328
329LOCAL_C_INCLUDES += \
Alex Deymoc372ab62015-10-29 00:43:26 -0700330 $(ue_libupdate_engine_exported_c_includes)
331LOCAL_STATIC_LIBRARIES := \
Alex Deymod5561a52015-09-03 23:17:52 -0700332 libupdate_engine \
Alex Deymoc372ab62015-10-29 00:43:26 -0700333 $(ue_libupdate_engine_exported_static_libraries)
Christopher Wiley9e1eda92015-11-16 15:23:37 -0800334
Christopher Wiley9e1eda92015-11-16 15:23:37 -0800335LOCAL_RTTI_FLAG := -frtti
Alex Deymoc372ab62015-10-29 00:43:26 -0700336LOCAL_SHARED_LIBRARIES := \
337 $(ue_common_shared_libraries) \
338 $(ue_libupdate_engine_exported_shared_libraries)
Alex Deymod5561a52015-09-03 23:17:52 -0700339LOCAL_SRC_FILES := \
340 main.cc
Christopher Wiley9e1eda92015-11-16 15:23:37 -0800341
342else # !defined(BRILLO)
343
344LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder_bindings
345LOCAL_SHARED_LIBRARIES := \
346 libbinder \
347 liblog \
348 libutils
349LOCAL_SRC_FILES := \
350 binder_bindings/android/os/IUpdateEngine.aidl \
351 binder_bindings/android/os/IUpdateEnginePayloadApplicationCallback.aidl \
352 binder_main.cc \
353 binder_service.cc
354
355endif # defined(BRILLO)
356
Gilad Arnold70141f22015-09-17 09:06:30 -0700357LOCAL_INIT_RC := update_engine.rc
Alex Deymod5561a52015-09-03 23:17:52 -0700358include $(BUILD_EXECUTABLE)
359
Alex Deymo4218b7e2015-11-17 21:14:42 -0300360ifeq ($(BRILLO_USE_DBUS),1)
361
Alex Deymod5561a52015-09-03 23:17:52 -0700362# update_engine_client (type: executable)
363# ========================================================
364# update_engine console client.
365include $(CLEAR_VARS)
366LOCAL_MODULE := update_engine_client
367LOCAL_MODULE_CLASS := EXECUTABLES
Alex Deymoc372ab62015-10-29 00:43:26 -0700368LOCAL_CPP_EXTENSION := .cc
369LOCAL_RTTI_FLAG := -frtti
370LOCAL_CLANG := true
371LOCAL_CFLAGS := $(ue_common_cflags)
372LOCAL_CPPFLAGS := $(ue_common_cppflags)
373LOCAL_LDFLAGS := $(ue_common_ldflags)
374LOCAL_C_INCLUDES := \
375 $(ue_common_c_includes) \
Alex Deymod5561a52015-09-03 23:17:52 -0700376 $(LOCAL_PATH)/include
Alex Deymoc372ab62015-10-29 00:43:26 -0700377LOCAL_STATIC_LIBRARIES := update_engine_client-dbus-proxies
378LOCAL_SHARED_LIBRARIES := $(ue_common_shared_libraries)
Alex Deymod5561a52015-09-03 23:17:52 -0700379LOCAL_SRC_FILES := \
380 update_engine_client.cc
Alex Deymod5561a52015-09-03 23:17:52 -0700381include $(BUILD_EXECUTABLE)
382
Alex Deymo4218b7e2015-11-17 21:14:42 -0300383endif # BRILLO_USE_DBUS == 1
384
385#TODO(deymo): Re-enable this library once the dbus dependencies are removed from
386# the code.
387ifeq ($(BRILLO_USE_DBUS),1)
388
Alex Deymod5561a52015-09-03 23:17:52 -0700389# libpayload_generator (type: static_library)
390# ========================================================
391# server-side code. This is used for delta_generator and unittests but not
392# for any client code.
Alex Deymoc372ab62015-10-29 00:43:26 -0700393ue_libpayload_generator_exported_c_includes := \
394 $(ue_libupdate_engine_exported_c_includes)
395ue_libpayload_generator_exported_static_libraries := \
396 libupdate_engine \
397 update_metadata-protos \
398 $(ue_libupdate_engine_exported_static_libraries) \
399 $(ue_update_metadata_protos_exported_static_libraries)
400ue_libpayload_generator_exported_shared_libraries := \
401 libext2fs \
402 $(ue_libupdate_engine_exported_shared_libraries) \
403 $(ue_update_metadata_protos_exported_shared_libraries)
404
Alex Deymod5561a52015-09-03 23:17:52 -0700405include $(CLEAR_VARS)
406LOCAL_MODULE := libpayload_generator
407LOCAL_MODULE_CLASS := STATIC_LIBRARIES
Alex Deymoc372ab62015-10-29 00:43:26 -0700408LOCAL_CPP_EXTENSION := .cc
409LOCAL_RTTI_FLAG := -frtti
410LOCAL_CLANG := true
411LOCAL_EXPORT_C_INCLUDE_DIRS := $(ue_libpayload_generator_exported_c_includes)
412LOCAL_CFLAGS := $(ue_common_cflags)
413LOCAL_CPPFLAGS := $(ue_common_cppflags)
414LOCAL_LDFLAGS := $(ue_common_ldflags)
415LOCAL_C_INCLUDES := \
416 $(ue_common_c_includes) \
417 $(ue_libupdate_engine_exported_c_includes)
418LOCAL_STATIC_LIBRARIES := \
Alex Deymod5561a52015-09-03 23:17:52 -0700419 libupdate_engine \
Alex Deymod5561a52015-09-03 23:17:52 -0700420 update_metadata-protos \
Alex Deymoc372ab62015-10-29 00:43:26 -0700421 $(ue_libupdate_engine_exported_static_libraries) \
422 $(ue_update_metadata_protos_exported_static_libraries)
423LOCAL_SHARED_LIBRARIES := \
424 $(ue_common_shared_libraries) \
425 $(ue_libpayload_generator_exported_shared_libraries) \
426 $(ue_libupdate_engine_exported_shared_libraries) \
427 $(ue_update_metadata_protos_exported_shared_libraries)
Alex Deymod5561a52015-09-03 23:17:52 -0700428LOCAL_SRC_FILES := \
429 payload_generator/ab_generator.cc \
430 payload_generator/annotated_operation.cc \
431 payload_generator/blob_file_writer.cc \
432 payload_generator/block_mapping.cc \
Alex Deymo0bc26112015-10-19 20:54:57 -0700433 payload_generator/bzip.cc \
Alex Deymod5561a52015-09-03 23:17:52 -0700434 payload_generator/cycle_breaker.cc \
435 payload_generator/delta_diff_generator.cc \
436 payload_generator/delta_diff_utils.cc \
437 payload_generator/ext2_filesystem.cc \
438 payload_generator/extent_ranges.cc \
439 payload_generator/extent_utils.cc \
440 payload_generator/full_update_generator.cc \
441 payload_generator/graph_types.cc \
442 payload_generator/graph_utils.cc \
443 payload_generator/inplace_generator.cc \
444 payload_generator/payload_file.cc \
445 payload_generator/payload_generation_config.cc \
446 payload_generator/payload_signer.cc \
447 payload_generator/raw_filesystem.cc \
448 payload_generator/tarjan.cc \
449 payload_generator/topological_sort.cc
Alex Deymod5561a52015-09-03 23:17:52 -0700450include $(BUILD_STATIC_LIBRARY)
451
452# delta_generator (type: executable)
453# ========================================================
454# server-side delta generator.
455include $(CLEAR_VARS)
456LOCAL_MODULE := delta_generator
457LOCAL_MODULE_CLASS := EXECUTABLES
Alex Deymoc372ab62015-10-29 00:43:26 -0700458LOCAL_CPP_EXTENSION := .cc
459LOCAL_RTTI_FLAG := -frtti
460LOCAL_CLANG := true
461LOCAL_CFLAGS := $(ue_common_cflags)
462LOCAL_CPPFLAGS := $(ue_common_cppflags)
463LOCAL_LDFLAGS := $(ue_common_ldflags)
464LOCAL_C_INCLUDES := \
465 $(ue_common_c_includes) \
466 $(ue_libupdate_engine_exported_c_includes) \
467 $(ue_libpayload_generator_exported_c_includes)
468LOCAL_STATIC_LIBRARIES := \
Alex Deymod5561a52015-09-03 23:17:52 -0700469 libupdate_engine \
Alex Deymoc372ab62015-10-29 00:43:26 -0700470 libpayload_generator \
471 $(ue_libupdate_engine_exported_static_libraries) \
472 $(ue_libpayload_generator_exported_static_libraries)
473LOCAL_SHARED_LIBRARIES := \
474 $(ue_common_shared_libraries) \
475 $(ue_libupdate_engine_exported_shared_libraries) \
476 $(ue_libpayload_generator_exported_shared_libraries)
Alex Deymod5561a52015-09-03 23:17:52 -0700477LOCAL_SRC_FILES := \
478 payload_generator/generate_delta_main.cc
Alex Deymod5561a52015-09-03 23:17:52 -0700479include $(BUILD_EXECUTABLE)
480
Alex Deymo4218b7e2015-11-17 21:14:42 -0300481endif # BRILLO_USE_DBUS == 1
482
483ifeq ($(BRILLO_USE_DBUS),1)
484
Christopher Wiley16daa082015-10-01 17:18:40 -0700485# libupdate_engine_client
486# ========================================================
487include $(CLEAR_VARS)
488LOCAL_MODULE := libupdate_engine_client
489LOCAL_RTTI_FLAG := -frtti
490LOCAL_CFLAGS := \
491 -Wall \
492 -Werror \
493 -Wno-unused-parameter
494LOCAL_CLANG := true
495LOCAL_CPP_EXTENSION := .cc
496LOCAL_C_INCLUDES := \
497 $(LOCAL_PATH)/client_library/include \
498 external/cros/system_api/dbus \
499 system \
500 external/gtest/include
501LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/client_library/include
502LOCAL_SHARED_LIBRARIES := \
503 libchrome \
504 libchrome-dbus \
Alex Vakulenko1bab5a82015-10-27 11:47:28 -0700505 libbrillo \
506 libbrillo-dbus
Christopher Wiley16daa082015-10-01 17:18:40 -0700507LOCAL_STATIC_LIBRARIES := \
508 update_engine_client-dbus-proxies
509LOCAL_SRC_FILES := \
510 client_library/client.cc \
511 client_library/client_impl.cc \
512 update_status_utils.cc
513include $(BUILD_SHARED_LIBRARY)
514
Alex Deymo4218b7e2015-11-17 21:14:42 -0300515endif # BRILLO_USE_DBUS == 1
Gaurav Shah263614f2015-09-24 14:20:38 -0700516
517# Update payload signing public key.
518# ========================================================
519include $(CLEAR_VARS)
520LOCAL_MODULE := brillo-update-payload-key
521LOCAL_MODULE_CLASS := ETC
522LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/update_engine
523LOCAL_MODULE_STEM := update-payload-key.pub.pem
524LOCAL_SRC_FILES := update_payload_key/brillo-update-payload-key.pub.pem
525LOCAL_BUILT_MODULE_STEM := update_payload_key/brillo-update-payload-key.pub.pem
526include $(BUILD_PREBUILT)