1 # 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 17 LOCAL_PATH := $(my-dir) 18 19 # Default values for the USE flags. Override these USE flags from your product 20 # by setting BRILLO_USE_* values. Note that we define local variables like 21 # local_use_* to prevent leaking our default setting for other packages. 22 local_use_binder := $(if $(BRILLO_USE_BINDER),$(BRILLO_USE_BINDER),1) 23 local_use_hwid_override := \ 24 $(if $(BRILLO_USE_HWID_OVERRIDE),$(BRILLO_USE_HWID_OVERRIDE),0) 25 # "libcros" gates the LibCrosService exposed by the Chrome OS' chrome browser to 26 # the system layer. 27 local_use_libcros := $(if $(BRILLO_USE_LIBCROS),$(BRILLO_USE_LIBCROS),0) 28 local_use_mtd := $(if $(BRILLO_USE_MTD),$(BRILLO_USE_MTD),0) 29 30 # IoT devices use Omaha for updates. 31 local_use_omaha := $(if $(filter true,$(PRODUCT_IOT)),1,0) 32 33 ue_common_cflags := \ 34 -DUSE_BINDER=$(local_use_binder) \ 35 -DUSE_HWID_OVERRIDE=$(local_use_hwid_override) \ 36 -DUSE_LIBCROS=$(local_use_libcros) \ 37 -DUSE_MTD=$(local_use_mtd) \ 38 -DUSE_OMAHA=$(local_use_omaha) \ 39 -D_FILE_OFFSET_BITS=64 \ 40 -D_POSIX_C_SOURCE=199309L \ 41 -Wa,--noexecstack \ 42 -Wall \ 43 -Werror \ 44 -Wextra \ 45 -Wformat=2 \ 46 -Wno-psabi \ 47 -Wno-unused-parameter \ 48 -ffunction-sections \ 49 -fstack-protector-strong \ 50 -fvisibility=hidden 51 ue_common_cppflags := \ 52 -Wnon-virtual-dtor \ 53 -fno-strict-aliasing 54 ue_common_ldflags := \ 55 -Wl,--gc-sections 56 ue_common_c_includes := \ 57 $(LOCAL_PATH)/client_library/include \ 58 system 59 ue_common_shared_libraries := \ 60 libbrillo-stream \ 61 libbrillo \ 62 libchrome 63 ue_common_static_libraries := \ 64 libgtest_prod \ 65 66 # update_metadata-protos (type: static_library) 67 # ======================================================== 68 # Protobufs. 69 ue_update_metadata_protos_exported_static_libraries := \ 70 update_metadata-protos 71 ue_update_metadata_protos_exported_shared_libraries := \ 72 libprotobuf-cpp-lite 73 74 ue_update_metadata_protos_src_files := \ 75 update_metadata.proto 76 77 # Build for the host. 78 include $(CLEAR_VARS) 79 LOCAL_MODULE := update_metadata-protos 80 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 81 LOCAL_IS_HOST_MODULE := true 82 generated_sources_dir := $(call local-generated-sources-dir) 83 LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/system 84 LOCAL_SRC_FILES := $(ue_update_metadata_protos_src_files) 85 include $(BUILD_HOST_STATIC_LIBRARY) 86 87 # Build for the target. 88 include $(CLEAR_VARS) 89 LOCAL_MODULE := update_metadata-protos 90 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 91 generated_sources_dir := $(call local-generated-sources-dir) 92 LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated_sources_dir)/proto/system 93 LOCAL_SRC_FILES := $(ue_update_metadata_protos_src_files) 94 include $(BUILD_STATIC_LIBRARY) 95 96 # libpayload_consumer (type: static_library) 97 # ======================================================== 98 # The payload application component and common dependencies. 99 ue_libpayload_consumer_exported_static_libraries := \ 100 update_metadata-protos \ 101 libxz \ 102 libbz \ 103 libbspatch \ 104 $(ue_update_metadata_protos_exported_static_libraries) 105 ue_libpayload_consumer_exported_shared_libraries := \ 106 libcrypto \ 107 $(ue_update_metadata_protos_exported_shared_libraries) 108 109 ue_libpayload_consumer_src_files := \ 110 common/action_processor.cc \ 111 common/boot_control_stub.cc \ 112 common/clock.cc \ 113 common/constants.cc \ 114 common/cpu_limiter.cc \ 115 common/error_code_utils.cc \ 116 common/file_fetcher.cc \ 117 common/hash_calculator.cc \ 118 common/http_common.cc \ 119 common/http_fetcher.cc \ 120 common/hwid_override.cc \ 121 common/multi_range_http_fetcher.cc \ 122 common/platform_constants_android.cc \ 123 common/prefs.cc \ 124 common/subprocess.cc \ 125 common/terminator.cc \ 126 common/utils.cc \ 127 payload_consumer/bzip_extent_writer.cc \ 128 payload_consumer/delta_performer.cc \ 129 payload_consumer/download_action.cc \ 130 payload_consumer/extent_writer.cc \ 131 payload_consumer/file_descriptor.cc \ 132 payload_consumer/file_writer.cc \ 133 payload_consumer/filesystem_verifier_action.cc \ 134 payload_consumer/install_plan.cc \ 135 payload_consumer/payload_constants.cc \ 136 payload_consumer/payload_verifier.cc \ 137 payload_consumer/postinstall_runner_action.cc \ 138 payload_consumer/xz_extent_writer.cc 139 140 ifeq ($(HOST_OS),linux) 141 # Build for the host. 142 include $(CLEAR_VARS) 143 LOCAL_MODULE := libpayload_consumer 144 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 145 LOCAL_CPP_EXTENSION := .cc 146 LOCAL_CLANG := true 147 LOCAL_CFLAGS := $(ue_common_cflags) 148 LOCAL_CPPFLAGS := $(ue_common_cppflags) 149 LOCAL_LDFLAGS := $(ue_common_ldflags) 150 LOCAL_C_INCLUDES := \ 151 $(ue_common_c_includes) 152 LOCAL_STATIC_LIBRARIES := \ 153 update_metadata-protos \ 154 $(ue_common_static_libraries) \ 155 $(ue_libpayload_consumer_exported_static_libraries) \ 156 $(ue_update_metadata_protos_exported_static_libraries) 157 LOCAL_SHARED_LIBRARIES := \ 158 $(ue_common_shared_libraries) \ 159 $(ue_libpayload_consumer_exported_shared_libraries) \ 160 $(ue_update_metadata_protos_exported_shared_libraries) 161 LOCAL_SRC_FILES := $(ue_libpayload_consumer_src_files) 162 include $(BUILD_HOST_STATIC_LIBRARY) 163 endif # HOST_OS == linux 164 165 # Build for the target. 166 include $(CLEAR_VARS) 167 LOCAL_MODULE := libpayload_consumer 168 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 169 LOCAL_CPP_EXTENSION := .cc 170 LOCAL_CLANG := true 171 LOCAL_CFLAGS := $(ue_common_cflags) 172 LOCAL_CPPFLAGS := $(ue_common_cppflags) 173 LOCAL_LDFLAGS := $(ue_common_ldflags) 174 LOCAL_C_INCLUDES := \ 175 $(ue_common_c_includes) 176 LOCAL_STATIC_LIBRARIES := \ 177 update_metadata-protos \ 178 $(ue_common_static_libraries) \ 179 $(ue_libpayload_consumer_exported_static_libraries:-host=) \ 180 $(ue_update_metadata_protos_exported_static_libraries) 181 LOCAL_SHARED_LIBRARIES := \ 182 $(ue_common_shared_libraries) \ 183 $(ue_libpayload_consumer_exported_shared_libraries:-host=) \ 184 $(ue_update_metadata_protos_exported_shared_libraries) 185 LOCAL_SRC_FILES := $(ue_libpayload_consumer_src_files) 186 include $(BUILD_STATIC_LIBRARY) 187 188 # libupdate_engine_boot_control (type: static_library) 189 # ======================================================== 190 # A BootControl class implementation using Android's HIDL boot_control HAL. 191 ue_libupdate_engine_boot_control_exported_static_libraries := \ 192 update_metadata-protos \ 193 $(ue_update_metadata_protos_exported_static_libraries) 194 195 ue_libupdate_engine_boot_control_exported_shared_libraries := \ 196 libhwbinder \ 197 libhidlbase \ 198 libutils \ 199 android.hardware.boot@1.0 \ 200 $(ue_update_metadata_protos_exported_shared_libraries) 201 202 include $(CLEAR_VARS) 203 LOCAL_MODULE := libupdate_engine_boot_control 204 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 205 LOCAL_CPP_EXTENSION := .cc 206 LOCAL_CLANG := true 207 LOCAL_CFLAGS := $(ue_common_cflags) 208 LOCAL_CPPFLAGS := $(ue_common_cppflags) 209 LOCAL_LDFLAGS := $(ue_common_ldflags) 210 LOCAL_C_INCLUDES := \ 211 $(ue_common_c_includes) \ 212 bootable/recovery 213 LOCAL_STATIC_LIBRARIES := \ 214 $(ue_common_static_libraries) \ 215 $(ue_libupdate_engine_boot_control_exported_static_libraries) 216 LOCAL_SHARED_LIBRARIES := \ 217 $(ue_common_shared_libraries) \ 218 $(ue_libupdate_engine_boot_control_exported_shared_libraries) 219 LOCAL_SRC_FILES := \ 220 boot_control_android.cc 221 include $(BUILD_STATIC_LIBRARY) 222 223 ifeq ($(local_use_omaha),1) 224 225 # libupdate_engine (type: static_library) 226 # ======================================================== 227 # The main daemon static_library with all the code used to check for updates 228 # with Omaha and expose a DBus daemon. 229 ue_libupdate_engine_exported_c_includes := \ 230 external/cros/system_api/dbus 231 ue_libupdate_engine_exported_static_libraries := \ 232 libpayload_consumer \ 233 update_metadata-protos \ 234 libbz \ 235 libfs_mgr \ 236 libbase \ 237 liblog \ 238 $(ue_libpayload_consumer_exported_static_libraries) \ 239 $(ue_update_metadata_protos_exported_static_libraries) \ 240 libupdate_engine_boot_control \ 241 $(ue_libupdate_engine_boot_control_exported_static_libraries) 242 ue_libupdate_engine_exported_shared_libraries := \ 243 libmetrics \ 244 libexpat \ 245 libbrillo-policy \ 246 libcurl \ 247 libcutils \ 248 libssl \ 249 $(ue_libpayload_consumer_exported_shared_libraries) \ 250 $(ue_update_metadata_protos_exported_shared_libraries) \ 251 $(ue_libupdate_engine_boot_control_exported_shared_libraries) 252 ifeq ($(local_use_binder),1) 253 ue_libupdate_engine_exported_shared_libraries += \ 254 libbinder \ 255 libbinderwrapper \ 256 libbrillo-binder \ 257 libutils 258 endif # local_use_binder == 1 259 260 include $(CLEAR_VARS) 261 LOCAL_MODULE := libupdate_engine 262 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 263 LOCAL_CPP_EXTENSION := .cc 264 LOCAL_CLANG := true 265 LOCAL_EXPORT_C_INCLUDE_DIRS := $(ue_libupdate_engine_exported_c_includes) 266 LOCAL_CFLAGS := $(ue_common_cflags) 267 LOCAL_CPPFLAGS := $(ue_common_cppflags) 268 LOCAL_LDFLAGS := $(ue_common_ldflags) 269 LOCAL_C_INCLUDES := \ 270 $(ue_common_c_includes) \ 271 $(ue_libupdate_engine_exported_c_includes) \ 272 bootable/recovery 273 LOCAL_STATIC_LIBRARIES := \ 274 libpayload_consumer \ 275 update_metadata-protos \ 276 $(ue_common_static_libraries) \ 277 $(ue_libupdate_engine_exported_static_libraries:-host=) \ 278 $(ue_libpayload_consumer_exported_static_libraries:-host=) \ 279 $(ue_update_metadata_protos_exported_static_libraries) 280 LOCAL_SHARED_LIBRARIES := \ 281 $(ue_common_shared_libraries) \ 282 $(ue_libupdate_engine_exported_shared_libraries:-host=) \ 283 $(ue_libpayload_consumer_exported_shared_libraries:-host=) \ 284 $(ue_update_metadata_protos_exported_shared_libraries) 285 LOCAL_SRC_FILES := \ 286 certificate_checker.cc \ 287 common_service.cc \ 288 connection_manager_android.cc \ 289 connection_utils.cc \ 290 daemon.cc \ 291 hardware_android.cc \ 292 image_properties_android.cc \ 293 libcurl_http_fetcher.cc \ 294 metrics.cc \ 295 metrics_utils.cc \ 296 omaha_request_action.cc \ 297 omaha_request_params.cc \ 298 omaha_response_handler_action.cc \ 299 omaha_utils.cc \ 300 p2p_manager.cc \ 301 payload_state.cc \ 302 power_manager_android.cc \ 303 proxy_resolver.cc \ 304 real_system_state.cc \ 305 update_attempter.cc \ 306 update_manager/boxed_value.cc \ 307 update_manager/chromeos_policy.cc \ 308 update_manager/default_policy.cc \ 309 update_manager/evaluation_context.cc \ 310 update_manager/policy.cc \ 311 update_manager/real_config_provider.cc \ 312 update_manager/real_device_policy_provider.cc \ 313 update_manager/real_random_provider.cc \ 314 update_manager/real_system_provider.cc \ 315 update_manager/real_time_provider.cc \ 316 update_manager/real_updater_provider.cc \ 317 update_manager/state_factory.cc \ 318 update_manager/update_manager.cc \ 319 update_status_utils.cc \ 320 utils_android.cc 321 ifeq ($(local_use_binder),1) 322 LOCAL_AIDL_INCLUDES += $(LOCAL_PATH)/binder_bindings 323 LOCAL_SRC_FILES += \ 324 binder_bindings/android/brillo/IUpdateEngine.aidl \ 325 binder_bindings/android/brillo/IUpdateEngineStatusCallback.aidl \ 326 binder_service_brillo.cc \ 327 parcelable_update_engine_status.cc 328 endif # local_use_binder == 1 329 ifeq ($(local_use_libcros),1) 330 LOCAL_SRC_FILES += \ 331 chrome_browser_proxy_resolver.cc 332 endif # local_use_libcros == 1 333 include $(BUILD_STATIC_LIBRARY) 334 335 else # local_use_omaha == 1 336 337 ifneq ($(local_use_binder),1) 338 $(error USE_BINDER is disabled but is required in non-Brillo devices.) 339 endif # local_use_binder == 1 340 341 # libupdate_engine_android (type: static_library) 342 # ======================================================== 343 # The main daemon static_library used in Android (non-Brillo). This only has a 344 # loop to apply payloads provided by the upper layer via a Binder interface. 345 ue_libupdate_engine_android_exported_static_libraries := \ 346 libpayload_consumer \ 347 libfs_mgr \ 348 libbase \ 349 liblog \ 350 $(ue_libpayload_consumer_exported_static_libraries) \ 351 libupdate_engine_boot_control \ 352 $(ue_libupdate_engine_boot_control_exported_static_libraries) 353 ue_libupdate_engine_android_exported_shared_libraries := \ 354 $(ue_libpayload_consumer_exported_shared_libraries) \ 355 $(ue_libupdate_engine_boot_control_exported_shared_libraries) \ 356 libandroid_net \ 357 libbinder \ 358 libbinderwrapper \ 359 libbrillo-binder \ 360 libcutils \ 361 libcurl \ 362 libssl \ 363 libutils 364 365 include $(CLEAR_VARS) 366 LOCAL_MODULE := libupdate_engine_android 367 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 368 LOCAL_CPP_EXTENSION := .cc 369 LOCAL_CLANG := true 370 LOCAL_CFLAGS := $(ue_common_cflags) 371 LOCAL_CPPFLAGS := $(ue_common_cppflags) 372 LOCAL_LDFLAGS := $(ue_common_ldflags) 373 LOCAL_C_INCLUDES := \ 374 $(ue_common_c_includes) \ 375 bootable/recovery 376 #TODO(deymo): Remove external/cros/system_api/dbus once the strings are moved 377 # out of the DBus interface. 378 LOCAL_C_INCLUDES += \ 379 external/cros/system_api/dbus 380 LOCAL_STATIC_LIBRARIES := \ 381 $(ue_common_static_libraries) \ 382 $(ue_libupdate_engine_android_exported_static_libraries:-host=) 383 LOCAL_SHARED_LIBRARIES += \ 384 $(ue_common_shared_libraries) \ 385 $(ue_libupdate_engine_android_exported_shared_libraries:-host=) 386 LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder_bindings 387 LOCAL_SRC_FILES += \ 388 binder_bindings/android/os/IUpdateEngine.aidl \ 389 binder_bindings/android/os/IUpdateEngineCallback.aidl \ 390 binder_service_android.cc \ 391 certificate_checker.cc \ 392 daemon.cc \ 393 daemon_state_android.cc \ 394 hardware_android.cc \ 395 libcurl_http_fetcher.cc \ 396 network_selector_android.cc \ 397 proxy_resolver.cc \ 398 update_attempter_android.cc \ 399 update_status_utils.cc \ 400 utils_android.cc 401 include $(BUILD_STATIC_LIBRARY) 402 403 endif # local_use_omaha == 1 404 405 # update_engine (type: executable) 406 # ======================================================== 407 # update_engine daemon. 408 include $(CLEAR_VARS) 409 LOCAL_MODULE := update_engine 410 LOCAL_MODULE_CLASS := EXECUTABLES 411 LOCAL_REQUIRED_MODULES := \ 412 cacerts_google 413 LOCAL_CPP_EXTENSION := .cc 414 LOCAL_CLANG := true 415 LOCAL_CFLAGS := $(ue_common_cflags) 416 LOCAL_CPPFLAGS := $(ue_common_cppflags) 417 LOCAL_LDFLAGS := $(ue_common_ldflags) 418 LOCAL_C_INCLUDES := \ 419 $(ue_common_c_includes) 420 LOCAL_SHARED_LIBRARIES := \ 421 $(ue_common_shared_libraries) 422 LOCAL_STATIC_LIBRARIES := \ 423 $(ue_common_static_libraries) 424 LOCAL_SRC_FILES := \ 425 main.cc 426 427 ifeq ($(local_use_omaha),1) 428 LOCAL_C_INCLUDES += \ 429 $(ue_libupdate_engine_exported_c_includes) 430 LOCAL_STATIC_LIBRARIES += \ 431 libupdate_engine \ 432 $(ue_libupdate_engine_exported_static_libraries:-host=) 433 LOCAL_SHARED_LIBRARIES += \ 434 $(ue_libupdate_engine_exported_shared_libraries:-host=) 435 else # local_use_omaha == 1 436 LOCAL_STATIC_LIBRARIES += \ 437 libupdate_engine_android \ 438 $(ue_libupdate_engine_android_exported_static_libraries:-host=) 439 LOCAL_SHARED_LIBRARIES += \ 440 $(ue_libupdate_engine_android_exported_shared_libraries:-host=) 441 endif # local_use_omaha == 1 442 443 LOCAL_INIT_RC := update_engine.rc 444 include $(BUILD_EXECUTABLE) 445 446 # update_engine_sideload (type: executable) 447 # ======================================================== 448 # A static binary equivalent to update_engine daemon that installs an update 449 # from a local file directly instead of running in the background. 450 include $(CLEAR_VARS) 451 LOCAL_MODULE := update_engine_sideload 452 LOCAL_FORCE_STATIC_EXECUTABLE := true 453 LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin 454 LOCAL_MODULE_CLASS := EXECUTABLES 455 LOCAL_CPP_EXTENSION := .cc 456 LOCAL_CLANG := true 457 LOCAL_CFLAGS := \ 458 $(ue_common_cflags) \ 459 -D_UE_SIDELOAD 460 LOCAL_CPPFLAGS := $(ue_common_cppflags) 461 LOCAL_LDFLAGS := $(ue_common_ldflags) 462 LOCAL_C_INCLUDES := \ 463 $(ue_common_c_includes) \ 464 bootable/recovery 465 #TODO(deymo): Remove external/cros/system_api/dbus once the strings are moved 466 # out of the DBus interface. 467 LOCAL_C_INCLUDES += \ 468 external/cros/system_api/dbus 469 LOCAL_SRC_FILES := \ 470 boot_control_recovery.cc \ 471 hardware_android.cc \ 472 network_selector_stub.cc \ 473 proxy_resolver.cc \ 474 sideload_main.cc \ 475 update_attempter_android.cc \ 476 update_status_utils.cc \ 477 utils_android.cc 478 LOCAL_STATIC_LIBRARIES := \ 479 libfs_mgr \ 480 libbase \ 481 liblog \ 482 libpayload_consumer \ 483 update_metadata-protos \ 484 $(ue_common_static_libraries) \ 485 $(ue_libpayload_consumer_exported_static_libraries:-host=) \ 486 $(ue_update_metadata_protos_exported_static_libraries) 487 # We add the static versions of the shared libraries since we are forcing this 488 # binary to be a static binary, so we also need to include all the static 489 # library dependencies of these static libraries. 490 LOCAL_STATIC_LIBRARIES += \ 491 $(ue_common_shared_libraries) \ 492 libcutils \ 493 liblog \ 494 $(ue_libpayload_consumer_exported_shared_libraries:-host=) \ 495 $(ue_update_metadata_protos_exported_shared_libraries) \ 496 libevent \ 497 libmodpb64 \ 498 libgtest_prod 499 500 ifeq ($(strip $(PRODUCT_STATIC_BOOT_CONTROL_HAL)),) 501 # No static boot_control HAL defined, so no sideload support. We use a fake 502 # boot_control HAL to allow compiling update_engine_sideload for test purposes. 503 ifeq ($(strip $(AB_OTA_UPDATER)),true) 504 $(warning No PRODUCT_STATIC_BOOT_CONTROL_HAL configured but AB_OTA_UPDATER is \ 505 true, no update sideload support.) 506 endif # AB_OTA_UPDATER == true 507 LOCAL_SRC_FILES += \ 508 boot_control_recovery_stub.cc 509 else # PRODUCT_STATIC_BOOT_CONTROL_HAL != "" 510 LOCAL_STATIC_LIBRARIES += \ 511 $(PRODUCT_STATIC_BOOT_CONTROL_HAL) 512 endif # PRODUCT_STATIC_BOOT_CONTROL_HAL != "" 513 514 include $(BUILD_EXECUTABLE) 515 516 # libupdate_engine_client (type: shared_library) 517 # ======================================================== 518 include $(CLEAR_VARS) 519 LOCAL_MODULE := libupdate_engine_client 520 LOCAL_CFLAGS := \ 521 -Wall \ 522 -Werror \ 523 -Wno-unused-parameter \ 524 -DUSE_BINDER=$(local_use_binder) 525 LOCAL_CLANG := true 526 LOCAL_CPP_EXTENSION := .cc 527 # TODO(deymo): Remove "external/cros/system_api/dbus" when dbus is not used. 528 LOCAL_C_INCLUDES := \ 529 $(LOCAL_PATH)/client_library/include \ 530 external/cros/system_api/dbus \ 531 system 532 LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/client_library/include 533 LOCAL_SHARED_LIBRARIES := \ 534 libchrome \ 535 libbrillo 536 LOCAL_SRC_FILES := \ 537 client_library/client.cc \ 538 update_status_utils.cc 539 540 # We only support binder IPC mechanism in Android. 541 ifeq ($(local_use_binder),1) 542 LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder_bindings 543 LOCAL_SHARED_LIBRARIES += \ 544 libbinder \ 545 libbrillo-binder \ 546 libutils 547 LOCAL_SRC_FILES += \ 548 binder_bindings/android/brillo/IUpdateEngine.aidl \ 549 binder_bindings/android/brillo/IUpdateEngineStatusCallback.aidl \ 550 client_library/client_binder.cc \ 551 parcelable_update_engine_status.cc 552 endif # local_use_binder == 1 553 554 include $(BUILD_SHARED_LIBRARY) 555 556 # update_engine_client (type: executable) 557 # ======================================================== 558 # update_engine console client. 559 include $(CLEAR_VARS) 560 LOCAL_MODULE := update_engine_client 561 LOCAL_MODULE_CLASS := EXECUTABLES 562 LOCAL_CPP_EXTENSION := .cc 563 LOCAL_CLANG := true 564 LOCAL_CFLAGS := $(ue_common_cflags) 565 LOCAL_CPPFLAGS := $(ue_common_cppflags) 566 LOCAL_LDFLAGS := $(ue_common_ldflags) 567 LOCAL_C_INCLUDES := $(ue_common_c_includes) 568 LOCAL_SHARED_LIBRARIES := $(ue_common_shared_libraries) 569 LOCAL_STATIC_LIBRARIES := $(ue_common_static_libraries) 570 ifeq ($(local_use_omaha),1) 571 LOCAL_SHARED_LIBRARIES += \ 572 libupdate_engine_client 573 LOCAL_SRC_FILES := \ 574 update_engine_client.cc \ 575 common/error_code_utils.cc \ 576 omaha_utils.cc 577 else # local_use_omaha == 1 578 #TODO(deymo): Remove external/cros/system_api/dbus once the strings are moved 579 # out of the DBus interface. 580 LOCAL_C_INCLUDES += \ 581 external/cros/system_api/dbus 582 LOCAL_SHARED_LIBRARIES += \ 583 libbinder \ 584 libbinderwrapper \ 585 libbrillo-binder \ 586 libutils 587 LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder_bindings 588 LOCAL_SRC_FILES := \ 589 binder_bindings/android/os/IUpdateEngine.aidl \ 590 binder_bindings/android/os/IUpdateEngineCallback.aidl \ 591 common/error_code_utils.cc \ 592 update_engine_client_android.cc \ 593 update_status_utils.cc 594 endif # local_use_omaha == 1 595 include $(BUILD_EXECUTABLE) 596 597 # libpayload_generator (type: static_library) 598 # ======================================================== 599 # server-side code. This is used for delta_generator and unittests but not 600 # for any client code. 601 ue_libpayload_generator_exported_static_libraries := \ 602 libpayload_consumer \ 603 update_metadata-protos \ 604 liblzma \ 605 $(ue_libpayload_consumer_exported_static_libraries) \ 606 $(ue_update_metadata_protos_exported_static_libraries) 607 ue_libpayload_generator_exported_shared_libraries := \ 608 libext2fs \ 609 $(ue_libpayload_consumer_exported_shared_libraries) \ 610 $(ue_update_metadata_protos_exported_shared_libraries) 611 612 ue_libpayload_generator_src_files := \ 613 payload_generator/ab_generator.cc \ 614 payload_generator/annotated_operation.cc \ 615 payload_generator/blob_file_writer.cc \ 616 payload_generator/block_mapping.cc \ 617 payload_generator/bzip.cc \ 618 payload_generator/cycle_breaker.cc \ 619 payload_generator/delta_diff_generator.cc \ 620 payload_generator/delta_diff_utils.cc \ 621 payload_generator/ext2_filesystem.cc \ 622 payload_generator/extent_ranges.cc \ 623 payload_generator/extent_utils.cc \ 624 payload_generator/full_update_generator.cc \ 625 payload_generator/graph_types.cc \ 626 payload_generator/graph_utils.cc \ 627 payload_generator/inplace_generator.cc \ 628 payload_generator/mapfile_filesystem.cc \ 629 payload_generator/payload_file.cc \ 630 payload_generator/payload_generation_config.cc \ 631 payload_generator/payload_signer.cc \ 632 payload_generator/raw_filesystem.cc \ 633 payload_generator/tarjan.cc \ 634 payload_generator/topological_sort.cc \ 635 payload_generator/xz_android.cc 636 637 ifeq ($(HOST_OS),linux) 638 # Build for the host. 639 include $(CLEAR_VARS) 640 LOCAL_MODULE := libpayload_generator 641 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 642 LOCAL_CPP_EXTENSION := .cc 643 LOCAL_CLANG := true 644 LOCAL_CFLAGS := $(ue_common_cflags) 645 LOCAL_CPPFLAGS := $(ue_common_cppflags) 646 LOCAL_LDFLAGS := $(ue_common_ldflags) 647 LOCAL_C_INCLUDES := $(ue_common_c_includes) 648 LOCAL_STATIC_LIBRARIES := \ 649 libpayload_consumer \ 650 update_metadata-protos \ 651 liblzma \ 652 $(ue_common_static_libraries) \ 653 $(ue_libpayload_consumer_exported_static_libraries) \ 654 $(ue_update_metadata_protos_exported_static_libraries) 655 LOCAL_SHARED_LIBRARIES := \ 656 $(ue_common_shared_libraries) \ 657 $(ue_libpayload_generator_exported_shared_libraries) \ 658 $(ue_libpayload_consumer_exported_shared_libraries) \ 659 $(ue_update_metadata_protos_exported_shared_libraries) 660 LOCAL_SRC_FILES := $(ue_libpayload_generator_src_files) 661 include $(BUILD_HOST_STATIC_LIBRARY) 662 endif # HOST_OS == linux 663 664 # Build for the target. 665 include $(CLEAR_VARS) 666 LOCAL_MODULE := libpayload_generator 667 LOCAL_MODULE_CLASS := STATIC_LIBRARIES 668 LOCAL_CPP_EXTENSION := .cc 669 LOCAL_CLANG := true 670 LOCAL_CFLAGS := $(ue_common_cflags) 671 LOCAL_CPPFLAGS := $(ue_common_cppflags) 672 LOCAL_LDFLAGS := $(ue_common_ldflags) 673 LOCAL_C_INCLUDES := $(ue_common_c_includes) 674 LOCAL_STATIC_LIBRARIES := \ 675 libpayload_consumer \ 676 update_metadata-protos \ 677 liblzma \ 678 $(ue_common_static_libraries) \ 679 $(ue_libpayload_consumer_exported_static_libraries:-host=) \ 680 $(ue_update_metadata_protos_exported_static_libraries) 681 LOCAL_SHARED_LIBRARIES := \ 682 $(ue_common_shared_libraries) \ 683 $(ue_libpayload_generator_exported_shared_libraries:-host=) \ 684 $(ue_libpayload_consumer_exported_shared_libraries:-host=) \ 685 $(ue_update_metadata_protos_exported_shared_libraries) 686 LOCAL_SRC_FILES := $(ue_libpayload_generator_src_files) 687 include $(BUILD_STATIC_LIBRARY) 688 689 # delta_generator (type: executable) 690 # ======================================================== 691 # server-side delta generator. 692 ue_delta_generator_src_files := \ 693 payload_generator/generate_delta_main.cc 694 695 ifeq ($(HOST_OS),linux) 696 # Build for the host. 697 include $(CLEAR_VARS) 698 LOCAL_MODULE := delta_generator 699 LOCAL_REQUIRED_MODULES := \ 700 bsdiff \ 701 imgdiff 702 LOCAL_MODULE_CLASS := EXECUTABLES 703 LOCAL_CPP_EXTENSION := .cc 704 LOCAL_CLANG := true 705 LOCAL_CFLAGS := $(ue_common_cflags) 706 LOCAL_CPPFLAGS := $(ue_common_cppflags) 707 LOCAL_LDFLAGS := $(ue_common_ldflags) 708 LOCAL_C_INCLUDES := $(ue_common_c_includes) 709 LOCAL_STATIC_LIBRARIES := \ 710 libpayload_consumer \ 711 libpayload_generator \ 712 $(ue_common_static_libraries) \ 713 $(ue_libpayload_consumer_exported_static_libraries) \ 714 $(ue_libpayload_generator_exported_static_libraries) 715 LOCAL_SHARED_LIBRARIES := \ 716 $(ue_common_shared_libraries) \ 717 $(ue_libpayload_consumer_exported_shared_libraries) \ 718 $(ue_libpayload_generator_exported_shared_libraries) 719 LOCAL_SRC_FILES := $(ue_delta_generator_src_files) 720 include $(BUILD_HOST_EXECUTABLE) 721 endif # HOST_OS == linux 722 723 # Build for the target. 724 include $(CLEAR_VARS) 725 LOCAL_MODULE := ue_unittest_delta_generator 726 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests 727 LOCAL_MODULE_STEM := delta_generator 728 LOCAL_MODULE_CLASS := EXECUTABLES 729 LOCAL_CPP_EXTENSION := .cc 730 LOCAL_CLANG := true 731 LOCAL_CFLAGS := $(ue_common_cflags) 732 LOCAL_CPPFLAGS := $(ue_common_cppflags) 733 LOCAL_LDFLAGS := $(ue_common_ldflags) 734 LOCAL_C_INCLUDES := $(ue_common_c_includes) 735 LOCAL_STATIC_LIBRARIES := \ 736 libpayload_consumer \ 737 libpayload_generator \ 738 $(ue_common_static_libraries) \ 739 $(ue_libpayload_consumer_exported_static_libraries:-host=) \ 740 $(ue_libpayload_generator_exported_static_libraries:-host=) 741 LOCAL_SHARED_LIBRARIES := \ 742 $(ue_common_shared_libraries) \ 743 $(ue_libpayload_consumer_exported_shared_libraries:-host=) \ 744 $(ue_libpayload_generator_exported_shared_libraries:-host=) 745 LOCAL_SRC_FILES := $(ue_delta_generator_src_files) 746 include $(BUILD_EXECUTABLE) 747 748 # Private and public keys for unittests. 749 # ======================================================== 750 # Generate a module that installs a prebuilt private key and a module that 751 # installs a public key generated from the private key. 752 # 753 # $(1): The path to the private key in pem format. 754 define ue-unittest-keys 755 $(eval include $(CLEAR_VARS)) \ 756 $(eval LOCAL_MODULE := ue_$(1).pem) \ 757 $(eval LOCAL_MODULE_CLASS := ETC) \ 758 $(eval $(ifeq $(BRILLO), 1, LOCAL_MODULE_TAGS := eng)) \ 759 $(eval LOCAL_SRC_FILES := $(1).pem) \ 760 $(eval LOCAL_MODULE_PATH := \ 761 $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests) \ 762 $(eval LOCAL_MODULE_STEM := $(1).pem) \ 763 $(eval include $(BUILD_PREBUILT)) \ 764 \ 765 $(eval include $(CLEAR_VARS)) \ 766 $(eval LOCAL_MODULE := ue_$(1).pub.pem) \ 767 $(eval LOCAL_MODULE_CLASS := ETC) \ 768 $(eval $(ifeq $(BRILLO), 1, LOCAL_MODULE_TAGS := eng)) \ 769 $(eval LOCAL_MODULE_PATH := \ 770 $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests) \ 771 $(eval LOCAL_MODULE_STEM := $(1).pub.pem) \ 772 $(eval include $(BUILD_SYSTEM)/base_rules.mk) \ 773 $(eval $(LOCAL_BUILT_MODULE) : $(LOCAL_PATH)/$(1).pem ; \ 774 openssl rsa -in $$< -pubout -out $$@) 775 endef 776 777 $(call ue-unittest-keys,unittest_key) 778 $(call ue-unittest-keys,unittest_key2) 779 780 # Sample images for unittests. 781 # ======================================================== 782 # Generate a prebuilt module that installs a sample image from the compressed 783 # sample_images.tar.bz2 file used by the unittests. 784 # 785 # $(1): The filename in the sample_images.tar.bz2 786 define ue-unittest-sample-image 787 $(eval include $(CLEAR_VARS)) \ 788 $(eval LOCAL_MODULE := ue_unittest_$(1)) \ 789 $(eval LOCAL_MODULE_CLASS := EXECUTABLES) \ 790 $(eval $(ifeq $(BRILLO), 1, LOCAL_MODULE_TAGS := eng)) \ 791 $(eval LOCAL_MODULE_PATH := \ 792 $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests/gen) \ 793 $(eval LOCAL_MODULE_STEM := $(1)) \ 794 $(eval include $(BUILD_SYSTEM)/base_rules.mk) \ 795 $(eval $(LOCAL_BUILT_MODULE) : \ 796 $(LOCAL_PATH)/sample_images/sample_images.tar.bz2 ; \ 797 tar -jxf $$< -C $$(dir $$@) $$(notdir $$@) && touch $$@) 798 endef 799 800 $(call ue-unittest-sample-image,disk_ext2_1k.img) 801 $(call ue-unittest-sample-image,disk_ext2_4k.img) 802 $(call ue-unittest-sample-image,disk_ext2_4k_empty.img) 803 $(call ue-unittest-sample-image,disk_ext2_unittest.img) 804 805 # Zlib Fingerprint 806 # ======================================================== 807 include $(CLEAR_VARS) 808 LOCAL_MODULE := zlib_fingerprint 809 LOCAL_MODULE_CLASS := ETC 810 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests 811 LOCAL_PREBUILT_MODULE_FILE := $(TARGET_OUT_COMMON_GEN)/zlib_fingerprint 812 include $(BUILD_PREBUILT) 813 814 # update_engine.conf 815 # ======================================================== 816 include $(CLEAR_VARS) 817 LOCAL_MODULE := ue_unittest_update_engine.conf 818 LOCAL_MODULE_CLASS := ETC 819 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests 820 LOCAL_MODULE_STEM := update_engine.conf 821 LOCAL_SRC_FILES := update_engine.conf 822 include $(BUILD_PREBUILT) 823 824 # test_http_server (type: executable) 825 # ======================================================== 826 # Test HTTP Server. 827 include $(CLEAR_VARS) 828 LOCAL_MODULE := test_http_server 829 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests 830 LOCAL_MODULE_CLASS := EXECUTABLES 831 LOCAL_CPP_EXTENSION := .cc 832 LOCAL_CLANG := true 833 LOCAL_CFLAGS := $(ue_common_cflags) 834 LOCAL_CPPFLAGS := $(ue_common_cppflags) 835 LOCAL_LDFLAGS := $(ue_common_ldflags) 836 LOCAL_C_INCLUDES := $(ue_common_c_includes) 837 LOCAL_SHARED_LIBRARIES := $(ue_common_shared_libraries) 838 LOCAL_STATIC_LIBRARIES := $(ue_common_static_libraries) 839 LOCAL_SRC_FILES := \ 840 common/http_common.cc \ 841 test_http_server.cc 842 include $(BUILD_EXECUTABLE) 843 844 # bsdiff (type: executable) 845 # ======================================================== 846 # We need bsdiff in the update_engine_unittests directory, so we build it here. 847 include $(CLEAR_VARS) 848 LOCAL_MODULE := ue_unittest_bsdiff 849 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests 850 LOCAL_MODULE_STEM := bsdiff 851 LOCAL_CPP_EXTENSION := .cc 852 LOCAL_SRC_FILES := ../../external/bsdiff/bsdiff_main.cc 853 LOCAL_CFLAGS := \ 854 -D_FILE_OFFSET_BITS=64 \ 855 -Wall \ 856 -Werror \ 857 -Wextra \ 858 -Wno-unused-parameter 859 LOCAL_STATIC_LIBRARIES := \ 860 libbsdiff \ 861 libbz \ 862 libdivsufsort64 \ 863 libdivsufsort 864 include $(BUILD_EXECUTABLE) 865 866 # test_subprocess (type: executable) 867 # ======================================================== 868 # Test helper subprocess program. 869 include $(CLEAR_VARS) 870 LOCAL_MODULE := test_subprocess 871 LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_NATIVE_TESTS)/update_engine_unittests 872 LOCAL_MODULE_CLASS := EXECUTABLES 873 LOCAL_CPP_EXTENSION := .cc 874 LOCAL_CLANG := true 875 LOCAL_CFLAGS := $(ue_common_cflags) 876 LOCAL_CPPFLAGS := $(ue_common_cppflags) 877 LOCAL_LDFLAGS := $(ue_common_ldflags) 878 LOCAL_C_INCLUDES := $(ue_common_c_includes) 879 LOCAL_SHARED_LIBRARIES := $(ue_common_shared_libraries) 880 LOCAL_STATIC_LIBRARIES := $(ue_common_static_libraries) 881 LOCAL_SRC_FILES := test_subprocess.cc 882 include $(BUILD_EXECUTABLE) 883 884 # update_engine_unittests (type: executable) 885 # ======================================================== 886 # Main unittest file. 887 include $(CLEAR_VARS) 888 LOCAL_MODULE := update_engine_unittests 889 LOCAL_REQUIRED_MODULES := \ 890 test_http_server \ 891 test_subprocess \ 892 ue_unittest_bsdiff \ 893 ue_unittest_delta_generator \ 894 ue_unittest_disk_ext2_1k.img \ 895 ue_unittest_disk_ext2_4k.img \ 896 ue_unittest_disk_ext2_4k_empty.img \ 897 ue_unittest_disk_ext2_unittest.img \ 898 ue_unittest_key.pem \ 899 ue_unittest_key.pub.pem \ 900 ue_unittest_key2.pem \ 901 ue_unittest_key2.pub.pem \ 902 ue_unittest_update_engine.conf \ 903 zlib_fingerprint 904 LOCAL_CPP_EXTENSION := .cc 905 LOCAL_CLANG := true 906 LOCAL_CFLAGS := $(ue_common_cflags) 907 LOCAL_CPPFLAGS := $(ue_common_cppflags) 908 LOCAL_LDFLAGS := $(ue_common_ldflags) 909 LOCAL_C_INCLUDES := \ 910 $(ue_common_c_includes) \ 911 $(ue_libupdate_engine_exported_c_includes) 912 LOCAL_STATIC_LIBRARIES := \ 913 libpayload_generator \ 914 libbrillo-test-helpers \ 915 libgmock \ 916 libchrome_test_helpers \ 917 $(ue_common_static_libraries) \ 918 $(ue_libpayload_generator_exported_static_libraries:-host=) 919 LOCAL_SHARED_LIBRARIES := \ 920 $(ue_common_shared_libraries) \ 921 $(ue_libpayload_generator_exported_shared_libraries:-host=) 922 LOCAL_SRC_FILES := \ 923 certificate_checker_unittest.cc \ 924 common/action_pipe_unittest.cc \ 925 common/action_processor_unittest.cc \ 926 common/action_unittest.cc \ 927 common/cpu_limiter_unittest.cc \ 928 common/fake_prefs.cc \ 929 common/file_fetcher_unittest.cc \ 930 common/hash_calculator_unittest.cc \ 931 common/http_fetcher_unittest.cc \ 932 common/hwid_override_unittest.cc \ 933 common/mock_http_fetcher.cc \ 934 common/prefs_unittest.cc \ 935 common/subprocess_unittest.cc \ 936 common/terminator_unittest.cc \ 937 common/test_utils.cc \ 938 common/utils_unittest.cc \ 939 payload_consumer/bzip_extent_writer_unittest.cc \ 940 payload_consumer/delta_performer_integration_test.cc \ 941 payload_consumer/delta_performer_unittest.cc \ 942 payload_consumer/extent_writer_unittest.cc \ 943 payload_consumer/file_writer_unittest.cc \ 944 payload_consumer/filesystem_verifier_action_unittest.cc \ 945 payload_consumer/postinstall_runner_action_unittest.cc \ 946 payload_consumer/xz_extent_writer_unittest.cc \ 947 payload_generator/ab_generator_unittest.cc \ 948 payload_generator/blob_file_writer_unittest.cc \ 949 payload_generator/block_mapping_unittest.cc \ 950 payload_generator/cycle_breaker_unittest.cc \ 951 payload_generator/delta_diff_utils_unittest.cc \ 952 payload_generator/ext2_filesystem_unittest.cc \ 953 payload_generator/extent_ranges_unittest.cc \ 954 payload_generator/extent_utils_unittest.cc \ 955 payload_generator/fake_filesystem.cc \ 956 payload_generator/full_update_generator_unittest.cc \ 957 payload_generator/graph_utils_unittest.cc \ 958 payload_generator/inplace_generator_unittest.cc \ 959 payload_generator/mapfile_filesystem_unittest.cc \ 960 payload_generator/payload_file_unittest.cc \ 961 payload_generator/payload_generation_config_unittest.cc \ 962 payload_generator/payload_signer_unittest.cc \ 963 payload_generator/tarjan_unittest.cc \ 964 payload_generator/topological_sort_unittest.cc \ 965 payload_generator/zip_unittest.cc \ 966 proxy_resolver_unittest.cc \ 967 testrunner.cc 968 ifeq ($(local_use_omaha),1) 969 LOCAL_C_INCLUDES += \ 970 $(ue_libupdate_engine_exported_c_includes) 971 LOCAL_STATIC_LIBRARIES += \ 972 libupdate_engine \ 973 $(ue_libupdate_engine_exported_static_libraries:-host=) 974 LOCAL_SHARED_LIBRARIES += \ 975 $(ue_libupdate_engine_exported_shared_libraries:-host=) 976 LOCAL_SRC_FILES += \ 977 common_service_unittest.cc \ 978 fake_system_state.cc \ 979 image_properties_android_unittest.cc \ 980 metrics_utils_unittest.cc \ 981 omaha_request_action_unittest.cc \ 982 omaha_request_params_unittest.cc \ 983 omaha_response_handler_action_unittest.cc \ 984 omaha_utils_unittest.cc \ 985 p2p_manager_unittest.cc \ 986 payload_consumer/download_action_unittest.cc \ 987 payload_state_unittest.cc \ 988 update_attempter_unittest.cc \ 989 update_manager/boxed_value_unittest.cc \ 990 update_manager/chromeos_policy_unittest.cc \ 991 update_manager/evaluation_context_unittest.cc \ 992 update_manager/generic_variables_unittest.cc \ 993 update_manager/prng_unittest.cc \ 994 update_manager/real_device_policy_provider_unittest.cc \ 995 update_manager/real_random_provider_unittest.cc \ 996 update_manager/real_system_provider_unittest.cc \ 997 update_manager/real_time_provider_unittest.cc \ 998 update_manager/real_updater_provider_unittest.cc \ 999 update_manager/umtest_utils.cc \ 1000 update_manager/update_manager_unittest.cc \ 1001 update_manager/variable_unittest.cc 1002 else # local_use_omaha == 1 1003 LOCAL_STATIC_LIBRARIES += \ 1004 libupdate_engine_android \ 1005 $(ue_libupdate_engine_android_exported_static_libraries:-host=) 1006 LOCAL_SHARED_LIBRARIES += \ 1007 $(ue_libupdate_engine_android_exported_shared_libraries:-host=) 1008 endif # local_use_omaha == 1 1009 ifeq ($(local_use_libcros),1) 1010 LOCAL_SRC_FILES += \ 1011 chrome_browser_proxy_resolver_unittest.cc 1012 endif # local_use_libcros == 1 1013 include $(BUILD_NATIVE_TEST) 1014 1015 # Update payload signing public key. 1016 # ======================================================== 1017 ifeq ($(PRODUCT_IOT),true) 1018 include $(CLEAR_VARS) 1019 LOCAL_MODULE := brillo-update-payload-key 1020 LOCAL_MODULE_CLASS := ETC 1021 LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/update_engine 1022 LOCAL_MODULE_STEM := update-payload-key.pub.pem 1023 LOCAL_SRC_FILES := update_payload_key/brillo-update-payload-key.pub.pem 1024 LOCAL_BUILT_MODULE_STEM := update_payload_key/brillo-update-payload-key.pub.pem 1025 include $(BUILD_PREBUILT) 1026 endif # PRODUCT_IOT 1027 1028 # Brillo update payload generation script 1029 # ======================================================== 1030 ifeq ($(HOST_OS),linux) 1031 include $(CLEAR_VARS) 1032 LOCAL_SRC_FILES := scripts/brillo_update_payload 1033 LOCAL_MODULE := brillo_update_payload 1034 LOCAL_MODULE_CLASS := EXECUTABLES 1035 LOCAL_IS_HOST_MODULE := true 1036 LOCAL_MODULE_TAGS := optional 1037 LOCAL_REQUIRED_MODULES := \ 1038 delta_generator \ 1039 shflags 1040 include $(BUILD_PREBUILT) 1041 endif # HOST_OS == linux 1042