# First include the GoogleTest library module definitions.
include $(LOCAL_PATH)/distrib/googletest/Android.mk

EMULATOR_UNITTESTS_SOURCES := \
  android/avd/util_unittest.cpp \
  android/utils/bufprint_unittest.cpp \
  android/utils/eintr_wrapper_unittest.cpp \
  android/utils/file_data_unittest.cpp \
  android/utils/host_bitness_unittest.cpp \
  android/utils/property_file_unittest.cpp \
  android/utils/win32_cmdline_quote_unittest.cpp \
  android/base/containers/PodVector_unittest.cpp \
  android/base/containers/StringVector_unittest.cpp \
  android/base/EintrWrapper_unittest.cpp \
  android/base/files/PathUtils_unittest.cpp \
  android/base/files/ScopedFd_unittest.cpp \
  android/base/files/ScopedStdioFile_unittest.cpp \
  android/base/Log_unittest.cpp \
  android/base/memory/MallocUsableSize_unittest.cpp \
  android/base/memory/ScopedPtr_unittest.cpp \
  android/base/String_unittest.cpp \
  android/base/StringFormat_unittest.cpp \
  android/base/StringView_unittest.cpp \
  android/emulation/CpuAccelerator_unittest.cpp \
  android/filesystems/ext4_utils_unittest.cpp \
  android/filesystems/partition_types_unittest.cpp \
  android/filesystems/ramdisk_extractor_unittest.cpp \
  android/filesystems/testing/TestSupport.cpp \
  android/kernel/kernel_utils_unittest.cpp \

ifeq (windows,$(HOST_OS))
EMULATOR_UNITTESTS_SOURCES += \
  android/base/files/ScopedHandle_unittest.cpp \

endif

$(call start-emulator-program, emulator_unittests)
LOCAL_C_INCLUDES += $(EMULATOR_GTEST_INCLUDES)
LOCAL_LDLIBS += $(EMULATOR_GTEST_LDLIBS)
LOCAL_SRC_FILES := $(EMULATOR_UNITTESTS_SOURCES)
LOCAL_CFLAGS += -O0
LOCAL_STATIC_LIBRARIES += \
    emulator-common \
    emulator-libext4_utils \
    emulator-libsparse \
    emulator-libselinux \
    emulator-zlib \
    emulator-libgtest
$(call end-emulator-program)


$(call start-emulator64-program, emulator64_unittests)
LOCAL_C_INCLUDES += $(EMULATOR_GTEST_INCLUDES)
LOCAL_LDLIBS += $(EMULATOR_GTEST_LDLIBS)
LOCAL_SRC_FILES := $(EMULATOR_UNITTESTS_SOURCES)
LOCAL_CFLAGS += -O0
LOCAL_STATIC_LIBRARIES += \
    emulator64-common \
    emulator64-libext4_utils \
    emulator64-libsparse \
    emulator64-libselinux \
    emulator64-zlib \
    emulator64-libgtest
$(call end-emulator-program)
