blob: 7edc7ded7bcb5f4c23ed340018424de51d0a7505 [file] [log] [blame]
Colin Crossf45fa6b2012-03-26 12:38:26 -07001LOCAL_PATH:= $(call my-dir)
Todd Poynor4f5b9a72013-08-13 16:30:01 -07002
Felipe Leme4c2d6632016-09-28 14:32:00 -07003# ================#
4# Common settings #
5# ================#
6# ZipArchive support, the order matters here to get all symbols.
7COMMON_ZIP_LIBRARIES := libziparchive libz libcrypto_static
Colin Crossf45fa6b2012-03-26 12:38:26 -07008
Felipe Leme4c2d6632016-09-28 14:32:00 -07009# TODO: ideally the tests should depend on a shared dumpstate library, but currently libdumpstate
10# is used to define the device-specific HAL library. Instead, both dumpstate and dumpstate_test
11# shares a lot of common settings
12COMMON_LOCAL_CFLAGS := \
13 -Wall -Werror -Wno-missing-field-initializers -Wno-unused-variable -Wunused-parameter
14COMMON_SRC_FILES := \
Felipe Lemee844a9d2016-09-21 15:01:39 -070015 utils.cpp
Felipe Leme4c2d6632016-09-28 14:32:00 -070016COMMON_SHARED_LIBRARIES := \
Felipe Leme6f674ae2016-11-18 17:10:33 -080017 android.hardware.dumpstate@1.0 \
Felipe Lemee844a9d2016-09-21 15:01:39 -070018 libbase \
Felipe Leme75876a22016-10-27 16:31:27 -070019 libbinder \
Felipe Lemee844a9d2016-09-21 15:01:39 -070020 libcutils \
Felipe Leme75876a22016-10-27 16:31:27 -070021 libdumpstateaidl \
Felipe Lemee844a9d2016-09-21 15:01:39 -070022 libhardware_legacy \
23 liblog \
Felipe Leme75876a22016-10-27 16:31:27 -070024 libselinux \
25 libutils
Felipe Lemebda15a02016-11-16 17:48:25 -080026COMMON_STATIC_LIBRARIES := \
27 libdumpstateutil \
28 $(COMMON_ZIP_LIBRARIES)
29
30# ====================#
31# libdumpstateutil #
32# ====================#
33include $(CLEAR_VARS)
34
35LOCAL_MODULE := libdumpstateutil
36
37LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
38LOCAL_C_INCLUDES := $(LOCAL_PATH)
39LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
40LOCAL_SRC_FILES := \
41 utils.cpp # TODO: temporary, until functions are moved to DumpstateUtil.cpp
Felipe Leme6f674ae2016-11-18 17:10:33 -080042# TODO: include just what it uses (libbase, libcutils, etc...) once split from utils.cpp
Felipe Lemebda15a02016-11-16 17:48:25 -080043LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
44LOCAL_STATIC_LIBRARIES := $(COMMON_ZIP_LIBRARIES)
45
46include $(BUILD_STATIC_LIBRARY)
Felipe Lemee844a9d2016-09-21 15:01:39 -070047
Felipe Lemef6d37e32016-10-27 16:58:06 -070048# ====================#
49# libdumpstateheaders #
50# ====================#
51# TODO: this module is necessary so the device-specific libdumpstate implementations do not
52# need to add any other dependency (like libbase). Should go away once dumpstate HAL changes.
53include $(CLEAR_VARS)
54
55LOCAL_EXPORT_C_INCLUDE_DIRS = $(LOCAL_PATH)
56LOCAL_MODULE := libdumpstateheaders
57LOCAL_EXPORT_SHARED_LIBRARY_HEADERS := \
58 $(COMMON_SHARED_LIBRARIES)
59LOCAL_EXPORT_STATIC_LIBRARY_HEADERS := \
Felipe Lemebda15a02016-11-16 17:48:25 -080060 $(COMMON_STATIC_LIBRARIES)
Felipe Lemef6d37e32016-10-27 16:58:06 -070061# Soong requires that whats is on LOCAL_EXPORTED_ is also on LOCAL_
62LOCAL_SHARED_LIBRARIES := $(LOCAL_EXPORT_SHARED_LIBRARY_HEADERS)
63LOCAL_STATIC_LIBRARIES := $(LOCAL_EXPORT_STATIC_LIBRARY_HEADERS)
64
65include $(BUILD_STATIC_LIBRARY)
66
Felipe Leme75876a22016-10-27 16:31:27 -070067# ================ #
68# libdumpstateaidl #
69# =================#
70include $(CLEAR_VARS)
71
72LOCAL_MODULE := libdumpstateaidl
73
74LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
75
76LOCAL_SHARED_LIBRARIES := \
77 libbinder \
78 libutils
79LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/binder
80LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
81LOCAL_C_INCLUDES := $(LOCAL_PATH)/binder
82LOCAL_SRC_FILES := \
Felipe Leme009ecbb2016-11-07 10:18:44 -080083 binder/android/os/IDumpstate.aidl \
Felipe Leme75876a22016-10-27 16:31:27 -070084 binder/android/os/IDumpstateListener.aidl \
Felipe Leme009ecbb2016-11-07 10:18:44 -080085 binder/android/os/IDumpstateToken.aidl
Felipe Leme75876a22016-10-27 16:31:27 -070086
87include $(BUILD_SHARED_LIBRARY)
88
Felipe Leme4c2d6632016-09-28 14:32:00 -070089# ==========#
90# dumpstate #
91# ==========#
92include $(CLEAR_VARS)
Felipe Lemee844a9d2016-09-21 15:01:39 -070093
Felipe Leme4c2d6632016-09-28 14:32:00 -070094ifdef BOARD_WLAN_DEVICE
95LOCAL_CFLAGS := -DFWDUMP_$(BOARD_WLAN_DEVICE)
96endif
97
98LOCAL_SRC_FILES := $(COMMON_SRC_FILES) \
Felipe Leme75876a22016-10-27 16:31:27 -070099 DumpstateService.cpp \
Felipe Leme4c2d6632016-09-28 14:32:00 -0700100 dumpstate.cpp
101
102LOCAL_MODULE := dumpstate
103
104LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
105
Felipe Lemebda15a02016-11-16 17:48:25 -0800106LOCAL_STATIC_LIBRARIES := $(COMMON_STATIC_LIBRARIES)
Felipe Leme4c2d6632016-09-28 14:32:00 -0700107
Todd Poynor4f5b9a72013-08-13 16:30:01 -0700108LOCAL_HAL_STATIC_LIBRARIES := libdumpstate
Felipe Leme4c2d6632016-09-28 14:32:00 -0700109
110LOCAL_CFLAGS += $(COMMON_LOCAL_CFLAGS)
111
Tom Cherry74155992015-08-14 13:01:23 -0700112LOCAL_INIT_RC := dumpstate.rc
Jeff Brownbf7f4922012-06-07 16:40:01 -0700113
Colin Crossf45fa6b2012-03-26 12:38:26 -0700114include $(BUILD_EXECUTABLE)
Felipe Leme4c2d6632016-09-28 14:32:00 -0700115
116# ===============#
117# dumpstate_test #
118# ===============#
119include $(CLEAR_VARS)
120
121LOCAL_MODULE := dumpstate_test
122
123LOCAL_MODULE_TAGS := tests
124
125LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
126
127LOCAL_SRC_FILES := $(COMMON_SRC_FILES) \
Felipe Leme75876a22016-10-27 16:31:27 -0700128 DumpstateService.cpp \
Felipe Leme4c2d6632016-09-28 14:32:00 -0700129 tests/dumpstate_test.cpp
130
Felipe Lemebda15a02016-11-16 17:48:25 -0800131LOCAL_STATIC_LIBRARIES := $(COMMON_STATIC_LIBRARIES) \
Felipe Leme4c2d6632016-09-28 14:32:00 -0700132 libgmock
133
134LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
135
136include $(BUILD_NATIVE_TEST)
137
138# =======================#
139# dumpstate_test_fixture #
140# =======================#
141include $(CLEAR_VARS)
142
143LOCAL_MODULE := dumpstate_test_fixture
144
145LOCAL_MODULE_TAGS := tests
146
147LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
148
Felipe Lemecef02982016-10-03 17:22:22 -0700149LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
150
Felipe Leme4c2d6632016-09-28 14:32:00 -0700151LOCAL_SRC_FILES := \
152 tests/dumpstate_test_fixture.cpp
153
Felipe Lemecef02982016-10-03 17:22:22 -0700154dist_zip_root := $(TARGET_OUT_DATA)
155dumpstate_tests_subpath_from_data := nativetest/dumpstate_test_fixture
156dumpstate_tests_root_in_device := /data/$(dumpstate_tests_subpath_from_data)
157dumpstate_tests_root_for_test_zip := $(dist_zip_root)/$(dumpstate_tests_subpath_from_data)
158testdata_files := $(call find-subdir-files, testdata/*)
159
160GEN := $(addprefix $(dumpstate_tests_root_for_test_zip)/, $(testdata_files))
161$(GEN): PRIVATE_PATH := $(LOCAL_PATH)
162$(GEN): PRIVATE_CUSTOM_TOOL = cp $< $@
163$(GEN): $(dumpstate_tests_root_for_test_zip)/testdata/% : $(LOCAL_PATH)/testdata/%
164 $(transform-generated-source)
165LOCAL_GENERATED_SOURCES += $(GEN)
166LOCAL_PICKUP_FILES := $(dist_zip_root)
167
Felipe Leme4c2d6632016-09-28 14:32:00 -0700168include $(BUILD_NATIVE_TEST)
Felipe Leme06c082b2016-10-31 11:41:05 -0700169
170# =======================#
171# libdumpstate.default #
172# =======================#
173include $(CLEAR_VARS)
174
175LOCAL_SRC_FILES := libdumpstate_default.cpp
176LOCAL_MODULE := libdumpstate.default
177
178LOCAL_STATIC_LIBRARIES := libdumpstateheaders
179include $(BUILD_STATIC_LIBRARY)