blob: 5b0ced97581342b5b0d080ca96ae02bb36282af6 [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 Lemee844a9d2016-09-21 15:01:39 -070017 libbase \
Felipe Leme75876a22016-10-27 16:31:27 -070018 libbinder \
Felipe Lemee844a9d2016-09-21 15:01:39 -070019 libcutils \
Felipe Leme75876a22016-10-27 16:31:27 -070020 libdumpstateaidl \
Felipe Lemee844a9d2016-09-21 15:01:39 -070021 libhardware_legacy \
22 liblog \
Felipe Leme75876a22016-10-27 16:31:27 -070023 libselinux \
24 libutils
Felipe Lemebda15a02016-11-16 17:48:25 -080025COMMON_STATIC_LIBRARIES := \
26 libdumpstateutil \
27 $(COMMON_ZIP_LIBRARIES)
28
29# ====================#
30# libdumpstateutil #
31# ====================#
32include $(CLEAR_VARS)
33
34LOCAL_MODULE := libdumpstateutil
35
36LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
37LOCAL_C_INCLUDES := $(LOCAL_PATH)
38LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
39LOCAL_SRC_FILES := \
40 utils.cpp # TODO: temporary, until functions are moved to DumpstateUtil.cpp
41# TODO: include just what it uses once split from utils.cpp
42LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
43LOCAL_STATIC_LIBRARIES := $(COMMON_ZIP_LIBRARIES)
44
45include $(BUILD_STATIC_LIBRARY)
Felipe Lemee844a9d2016-09-21 15:01:39 -070046
Felipe Lemef6d37e32016-10-27 16:58:06 -070047# ====================#
48# libdumpstateheaders #
49# ====================#
50# TODO: this module is necessary so the device-specific libdumpstate implementations do not
51# need to add any other dependency (like libbase). Should go away once dumpstate HAL changes.
52include $(CLEAR_VARS)
53
54LOCAL_EXPORT_C_INCLUDE_DIRS = $(LOCAL_PATH)
55LOCAL_MODULE := libdumpstateheaders
56LOCAL_EXPORT_SHARED_LIBRARY_HEADERS := \
57 $(COMMON_SHARED_LIBRARIES)
58LOCAL_EXPORT_STATIC_LIBRARY_HEADERS := \
Felipe Lemebda15a02016-11-16 17:48:25 -080059 $(COMMON_STATIC_LIBRARIES)
Felipe Lemef6d37e32016-10-27 16:58:06 -070060# Soong requires that whats is on LOCAL_EXPORTED_ is also on LOCAL_
61LOCAL_SHARED_LIBRARIES := $(LOCAL_EXPORT_SHARED_LIBRARY_HEADERS)
62LOCAL_STATIC_LIBRARIES := $(LOCAL_EXPORT_STATIC_LIBRARY_HEADERS)
63
64include $(BUILD_STATIC_LIBRARY)
65
Felipe Leme75876a22016-10-27 16:31:27 -070066# ================ #
67# libdumpstateaidl #
68# =================#
69include $(CLEAR_VARS)
70
71LOCAL_MODULE := libdumpstateaidl
72
73LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
74
75LOCAL_SHARED_LIBRARIES := \
76 libbinder \
77 libutils
78LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/binder
79LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
80LOCAL_C_INCLUDES := $(LOCAL_PATH)/binder
81LOCAL_SRC_FILES := \
Felipe Leme009ecbb2016-11-07 10:18:44 -080082 binder/android/os/IDumpstate.aidl \
Felipe Leme75876a22016-10-27 16:31:27 -070083 binder/android/os/IDumpstateListener.aidl \
Felipe Leme009ecbb2016-11-07 10:18:44 -080084 binder/android/os/IDumpstateToken.aidl
Felipe Leme75876a22016-10-27 16:31:27 -070085
86include $(BUILD_SHARED_LIBRARY)
87
Felipe Leme4c2d6632016-09-28 14:32:00 -070088# ==========#
89# dumpstate #
90# ==========#
91include $(CLEAR_VARS)
Felipe Lemee844a9d2016-09-21 15:01:39 -070092
Felipe Leme4c2d6632016-09-28 14:32:00 -070093ifdef BOARD_WLAN_DEVICE
94LOCAL_CFLAGS := -DFWDUMP_$(BOARD_WLAN_DEVICE)
95endif
96
97LOCAL_SRC_FILES := $(COMMON_SRC_FILES) \
Felipe Leme75876a22016-10-27 16:31:27 -070098 DumpstateService.cpp \
Felipe Leme4c2d6632016-09-28 14:32:00 -070099 dumpstate.cpp
100
101LOCAL_MODULE := dumpstate
102
103LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
104
Felipe Lemebda15a02016-11-16 17:48:25 -0800105LOCAL_STATIC_LIBRARIES := $(COMMON_STATIC_LIBRARIES)
Felipe Leme4c2d6632016-09-28 14:32:00 -0700106
Todd Poynor4f5b9a72013-08-13 16:30:01 -0700107LOCAL_HAL_STATIC_LIBRARIES := libdumpstate
Felipe Leme4c2d6632016-09-28 14:32:00 -0700108
109LOCAL_CFLAGS += $(COMMON_LOCAL_CFLAGS)
110
Tom Cherry74155992015-08-14 13:01:23 -0700111LOCAL_INIT_RC := dumpstate.rc
Jeff Brownbf7f4922012-06-07 16:40:01 -0700112
Colin Crossf45fa6b2012-03-26 12:38:26 -0700113include $(BUILD_EXECUTABLE)
Felipe Leme4c2d6632016-09-28 14:32:00 -0700114
115# ===============#
116# dumpstate_test #
117# ===============#
118include $(CLEAR_VARS)
119
120LOCAL_MODULE := dumpstate_test
121
122LOCAL_MODULE_TAGS := tests
123
124LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
125
126LOCAL_SRC_FILES := $(COMMON_SRC_FILES) \
Felipe Leme75876a22016-10-27 16:31:27 -0700127 DumpstateService.cpp \
Felipe Leme4c2d6632016-09-28 14:32:00 -0700128 tests/dumpstate_test.cpp
129
Felipe Lemebda15a02016-11-16 17:48:25 -0800130LOCAL_STATIC_LIBRARIES := $(COMMON_STATIC_LIBRARIES) \
Felipe Leme4c2d6632016-09-28 14:32:00 -0700131 libgmock
132
133LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
134
135include $(BUILD_NATIVE_TEST)
136
137# =======================#
138# dumpstate_test_fixture #
139# =======================#
140include $(CLEAR_VARS)
141
142LOCAL_MODULE := dumpstate_test_fixture
143
144LOCAL_MODULE_TAGS := tests
145
146LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
147
Felipe Lemecef02982016-10-03 17:22:22 -0700148LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
149
Felipe Leme4c2d6632016-09-28 14:32:00 -0700150LOCAL_SRC_FILES := \
151 tests/dumpstate_test_fixture.cpp
152
Felipe Lemecef02982016-10-03 17:22:22 -0700153dist_zip_root := $(TARGET_OUT_DATA)
154dumpstate_tests_subpath_from_data := nativetest/dumpstate_test_fixture
155dumpstate_tests_root_in_device := /data/$(dumpstate_tests_subpath_from_data)
156dumpstate_tests_root_for_test_zip := $(dist_zip_root)/$(dumpstate_tests_subpath_from_data)
157testdata_files := $(call find-subdir-files, testdata/*)
158
159GEN := $(addprefix $(dumpstate_tests_root_for_test_zip)/, $(testdata_files))
160$(GEN): PRIVATE_PATH := $(LOCAL_PATH)
161$(GEN): PRIVATE_CUSTOM_TOOL = cp $< $@
162$(GEN): $(dumpstate_tests_root_for_test_zip)/testdata/% : $(LOCAL_PATH)/testdata/%
163 $(transform-generated-source)
164LOCAL_GENERATED_SOURCES += $(GEN)
165LOCAL_PICKUP_FILES := $(dist_zip_root)
166
Felipe Leme4c2d6632016-09-28 14:32:00 -0700167include $(BUILD_NATIVE_TEST)
Felipe Leme06c082b2016-10-31 11:41:05 -0700168
169# =======================#
170# libdumpstate.default #
171# =======================#
172include $(CLEAR_VARS)
173
174LOCAL_SRC_FILES := libdumpstate_default.cpp
175LOCAL_MODULE := libdumpstate.default
176
177LOCAL_STATIC_LIBRARIES := libdumpstateheaders
178include $(BUILD_STATIC_LIBRARY)