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 BlobCache.cpp \ 25 BufferedTextOutput.cpp \ 26 CallStack.cpp \ 27 Debug.cpp \ 28 FileMap.cpp \ 29 Flattenable.cpp \ 30 LinearTransform.cpp \ 31 ObbFile.cpp \ 32 PropertyMap.cpp \ 33 RefBase.cpp \ 34 ResourceTypes.cpp \ 35 SharedBuffer.cpp \ 36 Static.cpp \ 37 StopWatch.cpp \ 38 StreamingZipInflater.cpp \ 39 String8.cpp \ 40 String16.cpp \ 41 StringArray.cpp \ 42 SystemClock.cpp \ 43 TextOutput.cpp \ 44 Threads.cpp \ 45 Timers.cpp \ 46 Tokenizer.cpp \ 47 Unicode.cpp \ 48 VectorImpl.cpp \ 49 ZipFileCRO.cpp \ 50 ZipFileRO.cpp \ 51 ZipUtils.cpp \ 52 misc.cpp 53 54 55# For the host 56# ===================================================== 57 58include $(CLEAR_VARS) 59 60LOCAL_SRC_FILES:= $(commonSources) 61 62LOCAL_MODULE:= libutils 63 64LOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS) 65LOCAL_C_INCLUDES += external/zlib 66 67ifeq ($(HOST_OS),windows) 68ifeq ($(strip $(USE_CYGWIN),),) 69# Under MinGW, ctype.h doesn't need multi-byte support 70LOCAL_CFLAGS += -DMB_CUR_MAX=1 71endif 72endif 73 74ifeq ($(TARGET_OS),linux) 75LOCAL_LDLIBS += -lrt -ldl 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 libdl 109 110LOCAL_MODULE:= libutils 111include $(BUILD_SHARED_LIBRARY) 112 113ifeq ($(TARGET_OS),linux) 114include $(CLEAR_VARS) 115LOCAL_C_INCLUDES += external/zlib external/icu4c/common 116LOCAL_LDLIBS := -lrt -ldl -lpthread 117LOCAL_MODULE := libutils 118LOCAL_SRC_FILES := $(commonSources) BackupData.cpp BackupHelpers.cpp 119include $(BUILD_STATIC_LIBRARY) 120endif 121 122 123# Include subdirectory makefiles 124# ============================================================ 125 126# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework 127# team really wants is to build the stuff defined by this makefile. 128ifeq (,$(ONE_SHOT_MAKEFILE)) 129include $(call first-makefiles-under,$(LOCAL_PATH)) 130endif 131