Clean up some test makefiles.

Needed for building with libc++ as the default STL.

Bug: 15193147
Change-Id: I8b462bd288fbea7e0ab182f85ffcbf438afb6aa4
This commit is contained in:
Dan Albert 2014-10-16 20:47:51 -07:00
parent a11ac45536
commit 27d166cb3a
4 changed files with 59 additions and 44 deletions

View file

@ -1,8 +1,28 @@
#
# Copyright (C) 2014 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Build the unit tests.
LOCAL_PATH := $(call my-dir)
# Build the unit tests.
test_src_files := \
include $(CLEAR_VARS)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_MODULE := libutils_tests
LOCAL_SRC_FILES := \
BasicHashtable_test.cpp \
BlobCache_test.cpp \
BitSet_test.cpp \
@ -10,19 +30,12 @@ test_src_files := \
LruCache_test.cpp \
String8_test.cpp \
Unicode_test.cpp \
Vector_test.cpp
Vector_test.cpp \
shared_libraries := \
LOCAL_SHARED_LIBRARIES := \
libz \
liblog \
libcutils \
libutils \
$(foreach file,$(test_src_files), \
$(eval include $(CLEAR_VARS)) \
$(eval LOCAL_SHARED_LIBRARIES := $(shared_libraries)) \
$(eval LOCAL_STATIC_LIBRARIES := $(static_libraries)) \
$(eval LOCAL_SRC_FILES := $(file)) \
$(eval LOCAL_MODULE := $(notdir $(file:%.cpp=%))) \
$(eval include $(BUILD_NATIVE_TEST)) \
)
include $(BUILD_NATIVE_TEST)

View file

@ -21,12 +21,12 @@
#include <gtest/gtest.h>
#include <unistd.h>
namespace android {
namespace {
typedef int SimpleKey;
typedef int SimpleValue;
typedef key_value_pair_t<SimpleKey, SimpleValue> SimpleEntry;
typedef BasicHashtable<SimpleKey, SimpleEntry> SimpleHashtable;
typedef android::key_value_pair_t<SimpleKey, SimpleValue> SimpleEntry;
typedef android::BasicHashtable<SimpleKey, SimpleEntry> SimpleHashtable;
struct ComplexKey {
int k;
@ -56,10 +56,6 @@ struct ComplexKey {
ssize_t ComplexKey::instanceCount = 0;
template<> inline hash_t hash_type(const ComplexKey& value) {
return hash_type(value.k);
}
struct ComplexValue {
int v;
@ -80,9 +76,18 @@ struct ComplexValue {
ssize_t ComplexValue::instanceCount = 0;
} // namespace
namespace android {
typedef key_value_pair_t<ComplexKey, ComplexValue> ComplexEntry;
typedef BasicHashtable<ComplexKey, ComplexEntry> ComplexHashtable;
template<> inline hash_t hash_type(const ComplexKey& value) {
return hash_type(value.k);
}
class BasicHashtableTest : public testing::Test {
protected:
virtual void SetUp() {

View file

@ -20,7 +20,7 @@
#include <cutils/log.h>
#include <gtest/gtest.h>
namespace android {
namespace {
typedef int SimpleKey;
typedef const char* StringValue;
@ -53,10 +53,6 @@ struct ComplexKey {
ssize_t ComplexKey::instanceCount = 0;
template<> inline hash_t hash_type(const ComplexKey& value) {
return hash_type(value.k);
}
struct ComplexValue {
int v;
@ -77,8 +73,17 @@ struct ComplexValue {
ssize_t ComplexValue::instanceCount = 0;
} // namespace
namespace android {
typedef LruCache<ComplexKey, ComplexValue> ComplexCache;
template<> inline android::hash_t hash_type(const ComplexKey& value) {
return hash_type(value.k);
}
class EntryRemovedCallback : public OnEntryRemoved<SimpleKey, StringValue> {
public:
EntryRemovedCallback() : callbackCount(0), lastKey(-1), lastValue(NULL) { }

View file

@ -14,31 +14,27 @@
# limitations under the License.
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
source_files := \
zip_archive.h \
zip_archive.cc
source_files := zip_archive.cc
includes := external/zlib
include $(CLEAR_VARS)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_CPP_EXTENSION := .cc
LOCAL_SRC_FILES := ${source_files}
LOCAL_STATIC_LIBRARIES := libz
LOCAL_SHARED_LIBRARIES := libutils
LOCAL_MODULE:= libziparchive
LOCAL_C_INCLUDES += ${includes}
LOCAL_CFLAGS := -Werror
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_MODULE := libziparchive
LOCAL_CPP_EXTENSION := .cc
LOCAL_SRC_FILES := ${source_files}
LOCAL_C_INCLUDES += ${includes}
LOCAL_STATIC_LIBRARIES := libz libutils
LOCAL_MODULE:= libziparchive-host
LOCAL_CFLAGS := -Werror
@ -46,11 +42,11 @@ LOCAL_MULTILIB := both
include $(BUILD_HOST_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_MODULE := libziparchive
LOCAL_CPP_EXTENSION := .cc
LOCAL_SRC_FILES := ${source_files}
LOCAL_C_INCLUDES += ${includes}
LOCAL_STATIC_LIBRARIES := libz libutils
LOCAL_SHARED_LIBRARIES := liblog
LOCAL_MODULE:= libziparchive-host
@ -58,31 +54,27 @@ LOCAL_CFLAGS := -Werror
LOCAL_MULTILIB := both
include $(BUILD_HOST_SHARED_LIBRARY)
# Tests.
include $(CLEAR_VARS)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_MODULE := ziparchive-tests
LOCAL_CPP_EXTENSION := .cc
LOCAL_CFLAGS += \
-DGTEST_OS_LINUX_ANDROID \
-DGTEST_HAS_STD_STRING \
-Werror
LOCAL_CFLAGS := -Werror
LOCAL_SRC_FILES := zip_archive_test.cc
LOCAL_SHARED_LIBRARIES := liblog
LOCAL_STATIC_LIBRARIES := libziparchive libz libgtest libgtest_main libutils
LOCAL_STATIC_LIBRARIES := libziparchive libz libutils
include $(BUILD_NATIVE_TEST)
include $(CLEAR_VARS)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_MODULE := ziparchive-tests-host
LOCAL_CPP_EXTENSION := .cc
LOCAL_CFLAGS += \
-DGTEST_OS_LINUX \
-DGTEST_HAS_STD_STRING \
-Werror \
-Wno-unnamed-type-template-args
LOCAL_SRC_FILES := zip_archive_test.cc
LOCAL_SHARED_LIBRARIES := libziparchive-host liblog
LOCAL_STATIC_LIBRARIES := \
libz \
libgtest_host \
libgtest_main_host \
libutils
libz \
libutils
include $(BUILD_HOST_NATIVE_TEST)