Android.mk revision fd03582995e0fce963dd0fa0669e3211b74c0dd7
1# Copyright (C) 2008 The Android Open Source Project 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15LOCAL_PATH:= $(call my-dir) 16 17# libutils is a little unique: It's built twice, once for the host 18# and once for the device. 19 20commonSources:= \ 21 Asset.cpp \ 22 AssetDir.cpp \ 23 AssetManager.cpp \ 24 BufferedTextOutput.cpp \ 25 CallStack.cpp \ 26 Debug.cpp \ 27 FileMap.cpp \ 28 Flattenable.cpp \ 29 ObbFile.cpp \ 30 Pool.cpp \ 31 RefBase.cpp \ 32 ResourceTypes.cpp \ 33 SharedBuffer.cpp \ 34 Static.cpp \ 35 StopWatch.cpp \ 36 String8.cpp \ 37 String16.cpp \ 38 StringArray.cpp \ 39 SystemClock.cpp \ 40 TextOutput.cpp \ 41 Threads.cpp \ 42 Timers.cpp \ 43 VectorImpl.cpp \ 44 ZipFileCRO.cpp \ 45 ZipFileRO.cpp \ 46 ZipUtils.cpp \ 47 misc.cpp 48 49 50# For the host 51# ===================================================== 52 53include $(CLEAR_VARS) 54 55LOCAL_SRC_FILES:= $(commonSources) 56 57LOCAL_MODULE:= libutils 58 59LOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS) 60LOCAL_C_INCLUDES += external/zlib 61 62ifeq ($(HOST_OS),windows) 63ifeq ($(strip $(USE_CYGWIN),),) 64# Under MinGW, ctype.h doesn't need multi-byte support 65LOCAL_CFLAGS += -DMB_CUR_MAX=1 66endif 67endif 68 69ifeq ($(HOST_OS),darwin) 70# MacOS doesn't have lseek64. However, off_t is 64-bit anyway. 71LOCAL_CFLAGS += -DOFF_T_IS_64_BIT 72endif 73 74include $(BUILD_HOST_STATIC_LIBRARY) 75 76 77 78# For the device 79# ===================================================== 80include $(CLEAR_VARS) 81 82 83# we have the common sources, plus some device-specific stuff 84LOCAL_SRC_FILES:= \ 85 $(commonSources) \ 86 BackupData.cpp \ 87 BackupHelpers.cpp \ 88 PollLoop.cpp 89 90ifeq ($(TARGET_OS),linux) 91LOCAL_LDLIBS += -lrt -ldl 92endif 93 94LOCAL_C_INCLUDES += \ 95 external/zlib \ 96 external/icu4c/common 97 98LOCAL_LDLIBS += -lpthread 99 100LOCAL_SHARED_LIBRARIES := \ 101 libz \ 102 liblog \ 103 libcutils 104 105ifneq ($(TARGET_SIMULATOR),true) 106ifeq ($(TARGET_OS)-$(TARGET_ARCH),linux-x86) 107# This is needed on x86 to bring in dl_iterate_phdr for CallStack.cpp 108LOCAL_SHARED_LIBRARIES += libdl 109endif # linux-x86 110endif # sim 111 112LOCAL_MODULE:= libutils 113include $(BUILD_SHARED_LIBRARY) 114 115ifneq ($(TARGET_SIMULATOR),true) 116ifeq ($(TARGET_OS),linux) 117include $(CLEAR_VARS) 118LOCAL_C_INCLUDES += external/zlib external/icu4c/common 119LOCAL_LDLIBS := -lrt -ldl -lpthread 120LOCAL_MODULE := libutils 121LOCAL_SRC_FILES := $(commonSources) BackupData.cpp BackupHelpers.cpp 122include $(BUILD_STATIC_LIBRARY) 123endif 124endif 125 126 127# Include subdirectory makefiles 128# ============================================================ 129 130# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework 131# team really wants is to build the stuff defined by this makefile. 132ifeq (,$(ONE_SHOT_MAKEFILE)) 133include $(call first-makefiles-under,$(LOCAL_PATH)) 134endif