Android.mk revision 6688837ff6a959b4f59d9a4249aac1504f590a4b
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 PropertyMap.cpp \ 32 RefBase.cpp \ 33 ResourceTypes.cpp \ 34 SharedBuffer.cpp \ 35 Static.cpp \ 36 StopWatch.cpp \ 37 StreamingZipInflater.cpp \ 38 String8.cpp \ 39 String16.cpp \ 40 StringArray.cpp \ 41 SystemClock.cpp \ 42 TextOutput.cpp \ 43 Threads.cpp \ 44 Timers.cpp \ 45 Tokenizer.cpp \ 46 Unicode.cpp \ 47 VectorImpl.cpp \ 48 ZipFileCRO.cpp \ 49 ZipFileRO.cpp \ 50 ZipUtils.cpp \ 51 misc.cpp 52 53 54# For the host 55# ===================================================== 56 57include $(CLEAR_VARS) 58 59LOCAL_SRC_FILES:= $(commonSources) 60 61LOCAL_MODULE:= libutils 62 63LOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS) 64LOCAL_C_INCLUDES += external/zlib 65 66ifeq ($(HOST_OS),windows) 67ifeq ($(strip $(USE_CYGWIN),),) 68# Under MinGW, ctype.h doesn't need multi-byte support 69LOCAL_CFLAGS += -DMB_CUR_MAX=1 70endif 71endif 72 73ifeq ($(HOST_OS),darwin) 74# MacOS doesn't have lseek64. However, off_t is 64-bit anyway. 75LOCAL_CFLAGS += -DOFF_T_IS_64_BIT 76endif 77 78include $(BUILD_HOST_STATIC_LIBRARY) 79 80 81 82# For the device 83# ===================================================== 84include $(CLEAR_VARS) 85 86 87# we have the common sources, plus some device-specific stuff 88LOCAL_SRC_FILES:= \ 89 $(commonSources) \ 90 BackupData.cpp \ 91 BackupHelpers.cpp \ 92 Looper.cpp 93 94ifeq ($(TARGET_OS),linux) 95LOCAL_LDLIBS += -lrt -ldl 96endif 97 98LOCAL_C_INCLUDES += \ 99 external/zlib \ 100 external/icu4c/common 101 102LOCAL_LDLIBS += -lpthread 103 104LOCAL_SHARED_LIBRARIES := \ 105 libz \ 106 liblog \ 107 libcutils 108 109ifneq ($(TARGET_SIMULATOR),true) 110ifeq ($(TARGET_OS)-$(TARGET_ARCH),linux-x86) 111# This is needed on x86 to bring in dl_iterate_phdr for CallStack.cpp 112LOCAL_SHARED_LIBRARIES += libdl 113endif # linux-x86 114endif # sim 115 116LOCAL_MODULE:= libutils 117include $(BUILD_SHARED_LIBRARY) 118 119ifneq ($(TARGET_SIMULATOR),true) 120ifeq ($(TARGET_OS),linux) 121include $(CLEAR_VARS) 122LOCAL_C_INCLUDES += external/zlib external/icu4c/common 123LOCAL_LDLIBS := -lrt -ldl -lpthread 124LOCAL_MODULE := libutils 125LOCAL_SRC_FILES := $(commonSources) BackupData.cpp BackupHelpers.cpp 126include $(BUILD_STATIC_LIBRARY) 127endif 128endif 129 130 131# Include subdirectory makefiles 132# ============================================================ 133 134# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework 135# team really wants is to build the stuff defined by this makefile. 136ifeq (,$(ONE_SHOT_MAKEFILE)) 137include $(call first-makefiles-under,$(LOCAL_PATH)) 138endif 139