blob: adffb7485a081b6ab051ba915e8b876fbcdcce67 [file] [log] [blame]
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +00001PRODUCT_SOONG_NAMESPACES += \
Krzysztof Kosiński1316da72023-06-02 05:11:57 +00002 hardware/google/camera
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +00003
4$(call soong_config_set,lyric,use_lyric_camera_hal,true)
5$(call soong_config_set,google3a_config,gcam_awb,true)
6$(call soong_config_set,google3a_config,ghawb_truetone,true)
7
Baligh Uddin941dc902024-07-09 23:19:23 +00008# Flag controls whether Lyric apex can be located in the dist-directory.
9$(call soong_config_set, lyric, dist_lyric_apex, $(RELEASE_PIXEL_DIST_LYRIC_APEX))
10
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +000011# Select GCH backend.
12# TODO(b/192681010): This dependency inversion should be removed.
13ifneq ($(wildcard vendor/google/services/LyricCameraHAL/src),)
14$(call soong_config_set,gch,hwl_library,lyric)
15endif
16
Baligh Uddin29b454d2024-08-13 14:47:50 +000017# Use build-time flag to select whether to build from source
18# or ingest prebuilt-apex. We would want the development teams
19# using release configuration: (trunk-staging) to build from source.
20# All shipping releases will switch to prebuilts (trunk+)
21# if this condition is not true, then build from source.
22
Aleks Rozman83e7cc52024-11-20 22:48:19 +000023# Fallback if the prebuilts directory does not exist, then we must
24# build from source no matter what, so we log a warning
25ifeq ($(RELEASE_PIXEL_CAMERA_ENABLE_PREBUILT),true)
26 ifeq ($(wildcard vendor/google/services/LyricCameraHAL/prebuilt),)
27 $(warning Lyric prebuilt directory is missing, it will be built from source)
28 BUILD_LYRIC_FROM_SOURCE := true
29 else
30 BUILD_LYRIC_FROM_SOURCE := false
31 endif
32else
33 BUILD_LYRIC_FROM_SOURCE := true
34endif # RELEASE_PIXEL_CAMERA_ENABLE_PREBUILT
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +000035
Aleks Rozman83e7cc52024-11-20 22:48:19 +000036ifeq ($(BUILD_LYRIC_FROM_SOURCE),true)
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +000037PRODUCT_SOONG_NAMESPACES += \
38 vendor/google/camera \
39 vendor/google/camera/google_3a/libs_v4 \
40 vendor/google/camera/rlsservice
41
42# TODO(b/257379485): 3A is incrementally enabling cuttlefish build for native
43# code coverage support, temporary require separate namespace for folders that
44# can be built successfully.
45PRODUCT_SOONG_NAMESPACES += \
Cherry Ng6ff7ca02023-06-30 23:42:49 +080046 vendor/google/camera/common/g3_shared \
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +000047 vendor/google/camera/google_3a/libs_v4/g3ABase \
48 vendor/google/camera/google_3a/libs_v4/gABC/native_coverage \
49 vendor/google/camera/google_3a/libs_v4/gAF \
50 vendor/google/camera/google_3a/libs_v4/gafd \
51 vendor/google/camera/google_3a/libs_v4/gHAWB/native_coverage
Aleks Rozman83e7cc52024-11-20 22:48:19 +000052endif # BUILD_LYRIC_FROM_SOURCE
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +000053
54# Init-time log settings for Google 3A
55PRODUCT_PACKAGES += libg3a_standalone_gabc_rc
56PRODUCT_PACKAGES += libg3a_standalone_gaf_rc
57PRODUCT_PACKAGES += libg3a_standalone_ghawb_rc
58
59# Vendor APEX which contains the camera HAL
60PRODUCT_PACKAGES += com.google.pixel.camera.hal
61PRODUCT_PACKAGES += init.camera.set-interrupts-ownership
Krzysztof Kosińskib105faa2023-05-04 05:29:28 +000062PRODUCT_PACKAGES += lyric_preview_dis_xml
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +000063
Utku Utkan12a16662023-06-14 16:03:27 -070064DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += \
65 device/google/gs-common/camera/device_framework_matrix_product.xml
66
Utku Utkan7b4794f2023-06-21 08:56:46 -070067DEVICE_MATRIX_FILE += \
68 device/google/gs-common/camera/compatibility_matrix.xml
69
Krzysztof Kosińskieea841f2023-04-29 09:26:55 +000070# sepolicy dir is added in dump.mk.
71# Make doesn't deduplicate sepolicy dirs, so including it here causes build errors.
Krzysztof Kosińskif7eae2a2024-12-05 20:11:21 +000072
73# Calibration tools for debug builds
74PRODUCT_PACKAGES_DEBUG += tarasque_test
75PRODUCT_PACKAGES_DEBUG += ProtoCalibGenerator