blob: 3987fcec6e9316a77666c1dc4d4a5243fa1affd7 [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 Lemee844a9d2016-09-21 15:01:39 -070025
Felipe Lemef6d37e32016-10-27 16:58:06 -070026# ====================#
27# libdumpstateheaders #
28# ====================#
29# TODO: this module is necessary so the device-specific libdumpstate implementations do not
30# need to add any other dependency (like libbase). Should go away once dumpstate HAL changes.
31include $(CLEAR_VARS)
32
33LOCAL_EXPORT_C_INCLUDE_DIRS = $(LOCAL_PATH)
34LOCAL_MODULE := libdumpstateheaders
35LOCAL_EXPORT_SHARED_LIBRARY_HEADERS := \
36 $(COMMON_SHARED_LIBRARIES)
37LOCAL_EXPORT_STATIC_LIBRARY_HEADERS := \
38 $(COMMON_ZIP_LIBRARIES)
39# Soong requires that whats is on LOCAL_EXPORTED_ is also on LOCAL_
40LOCAL_SHARED_LIBRARIES := $(LOCAL_EXPORT_SHARED_LIBRARY_HEADERS)
41LOCAL_STATIC_LIBRARIES := $(LOCAL_EXPORT_STATIC_LIBRARY_HEADERS)
42
43include $(BUILD_STATIC_LIBRARY)
44
Felipe Leme75876a22016-10-27 16:31:27 -070045# ================ #
46# libdumpstateaidl #
47# =================#
48include $(CLEAR_VARS)
49
50LOCAL_MODULE := libdumpstateaidl
51
52LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
53
54LOCAL_SHARED_LIBRARIES := \
55 libbinder \
56 libutils
57LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/binder
58LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/binder
59LOCAL_C_INCLUDES := $(LOCAL_PATH)/binder
60LOCAL_SRC_FILES := \
61 binder/android/os/IDumpstateListener.aidl \
62 binder/android/os/IDumpstate.aidl
63
64include $(BUILD_SHARED_LIBRARY)
65
Felipe Leme4c2d6632016-09-28 14:32:00 -070066# ==========#
67# dumpstate #
68# ==========#
69include $(CLEAR_VARS)
Felipe Lemee844a9d2016-09-21 15:01:39 -070070
Felipe Leme4c2d6632016-09-28 14:32:00 -070071ifdef BOARD_WLAN_DEVICE
72LOCAL_CFLAGS := -DFWDUMP_$(BOARD_WLAN_DEVICE)
73endif
74
75LOCAL_SRC_FILES := $(COMMON_SRC_FILES) \
Felipe Leme75876a22016-10-27 16:31:27 -070076 DumpstateService.cpp \
Felipe Leme4c2d6632016-09-28 14:32:00 -070077 dumpstate.cpp
78
79LOCAL_MODULE := dumpstate
80
81LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
82
83LOCAL_STATIC_LIBRARIES := $(COMMON_ZIP_LIBRARIES)
84
Todd Poynor4f5b9a72013-08-13 16:30:01 -070085LOCAL_HAL_STATIC_LIBRARIES := libdumpstate
Felipe Leme4c2d6632016-09-28 14:32:00 -070086
87LOCAL_CFLAGS += $(COMMON_LOCAL_CFLAGS)
88
Tom Cherry74155992015-08-14 13:01:23 -070089LOCAL_INIT_RC := dumpstate.rc
Jeff Brownbf7f4922012-06-07 16:40:01 -070090
Colin Crossf45fa6b2012-03-26 12:38:26 -070091include $(BUILD_EXECUTABLE)
Felipe Leme4c2d6632016-09-28 14:32:00 -070092
93# ===============#
94# dumpstate_test #
95# ===============#
96include $(CLEAR_VARS)
97
98LOCAL_MODULE := dumpstate_test
99
100LOCAL_MODULE_TAGS := tests
101
102LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
103
104LOCAL_SRC_FILES := $(COMMON_SRC_FILES) \
Felipe Leme75876a22016-10-27 16:31:27 -0700105 DumpstateService.cpp \
Felipe Leme4c2d6632016-09-28 14:32:00 -0700106 tests/dumpstate_test.cpp
107
108LOCAL_STATIC_LIBRARIES := $(COMMON_ZIP_LIBRARIES) \
109 libgmock
110
111LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
112
113include $(BUILD_NATIVE_TEST)
114
115# =======================#
116# dumpstate_test_fixture #
117# =======================#
118include $(CLEAR_VARS)
119
120LOCAL_MODULE := dumpstate_test_fixture
121
122LOCAL_MODULE_TAGS := tests
123
124LOCAL_CFLAGS := $(COMMON_LOCAL_CFLAGS)
125
Felipe Lemecef02982016-10-03 17:22:22 -0700126LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
127
Felipe Leme4c2d6632016-09-28 14:32:00 -0700128LOCAL_SRC_FILES := \
129 tests/dumpstate_test_fixture.cpp
130
Felipe Lemecef02982016-10-03 17:22:22 -0700131dist_zip_root := $(TARGET_OUT_DATA)
132dumpstate_tests_subpath_from_data := nativetest/dumpstate_test_fixture
133dumpstate_tests_root_in_device := /data/$(dumpstate_tests_subpath_from_data)
134dumpstate_tests_root_for_test_zip := $(dist_zip_root)/$(dumpstate_tests_subpath_from_data)
135testdata_files := $(call find-subdir-files, testdata/*)
136
137GEN := $(addprefix $(dumpstate_tests_root_for_test_zip)/, $(testdata_files))
138$(GEN): PRIVATE_PATH := $(LOCAL_PATH)
139$(GEN): PRIVATE_CUSTOM_TOOL = cp $< $@
140$(GEN): $(dumpstate_tests_root_for_test_zip)/testdata/% : $(LOCAL_PATH)/testdata/%
141 $(transform-generated-source)
142LOCAL_GENERATED_SOURCES += $(GEN)
143LOCAL_PICKUP_FILES := $(dist_zip_root)
144
Felipe Leme4c2d6632016-09-28 14:32:00 -0700145include $(BUILD_NATIVE_TEST)
Felipe Leme06c082b2016-10-31 11:41:05 -0700146
147# =======================#
148# libdumpstate.default #
149# =======================#
150include $(CLEAR_VARS)
151
152LOCAL_SRC_FILES := libdumpstate_default.cpp
153LOCAL_MODULE := libdumpstate.default
154
155LOCAL_STATIC_LIBRARIES := libdumpstateheaders
156include $(BUILD_STATIC_LIBRARY)