Android.mk revision 1a20993c1000da3f008b34b7a5e6dbbd6fe291a6
1cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# Copyright (C) 2008 The Android Open Source Project
2cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project#
3cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# Licensed under the Apache License, Version 2.0 (the "License");
4cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# you may not use this file except in compliance with the License.
5cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# You may obtain a copy of the License at
6cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project#
7cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project#      http://www.apache.org/licenses/LICENSE-2.0
8cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project#
9cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# Unless required by applicable law or agreed to in writing, software
10cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# distributed under the License is distributed on an "AS IS" BASIS,
11cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# See the License for the specific language governing permissions and
13cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# limitations under the License.
14cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
15cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_PATH:= $(call my-dir)
16cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
17cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# libutils is a little unique: It's built twice, once for the host
18cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# and once for the device.
19cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
20cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectcommonSources:= \
21cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Asset.cpp \
22cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	AssetDir.cpp \
23cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	AssetManager.cpp \
241a20993c1000da3f008b34b7a5e6dbbd6fe291a6Jamie Gennis	BlobCache.cpp \
25cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	BufferedTextOutput.cpp \
26cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	CallStack.cpp \
27cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Debug.cpp \
28cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	FileMap.cpp \
29a580e68cc3bea688167eb5e55122bec8e83ab939Mathias Agopian	Flattenable.cpp \
301d2aeb673f9e757521ea0fd3717c7d4277f30b9fKenny Root	ObbFile.cpp \
3166db68948c83f1940fa66d76d28208b49bed7815Jeff Brown	Pool.cpp \
3204cbbc1c47c68e805d2674d9fc702fc44385805fJeff Brown	PropertyMap.cpp \
33cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	RefBase.cpp \
34cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ResourceTypes.cpp \
35cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	SharedBuffer.cpp \
36cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Static.cpp \
37cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	StopWatch.cpp \
38c28f214f6c65c56936b11fff68564d9631cfae70Christopher Tate	StreamingZipInflater.cpp \
39cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	String8.cpp \
40cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	String16.cpp \
41254406e313f8fcb2b63e63494573673e82036dd9Mathias Agopian	StringArray.cpp \
42cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	SystemClock.cpp \
43cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	TextOutput.cpp \
44cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Threads.cpp \
45cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Timers.cpp \
46647925ddf053989b641b4c5c8a51efd55c931f22Jeff Brown	Tokenizer.cpp \
47ba0165bef09729a33ab8e0ca329342be05e0d859Kenny Root	Unicode.cpp \
48cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	VectorImpl.cpp \
49ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	ZipFileCRO.cpp \
50cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ZipFileRO.cpp \
51cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ZipUtils.cpp \
5214d978d02d93f8976ff8b01c2f827fc7c83f4fbdMathias Agopian	misc.cpp
53cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
54cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
55cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# For the host
56cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# =====================================================
57cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
58cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(CLEAR_VARS)
59cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
6009e2b145ff574261da93fc7980d2beb22ae55a46Mathias AgopianLOCAL_SRC_FILES:= $(commonSources)
61cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
62cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_MODULE:= libutils
63cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
64cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS)
65cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_C_INCLUDES += external/zlib
66cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
67cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(HOST_OS),windows)
68cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(strip $(USE_CYGWIN),),)
69cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# Under MinGW, ctype.h doesn't need multi-byte support
70cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_CFLAGS += -DMB_CUR_MAX=1
71cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
72cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
73cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
74cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(BUILD_HOST_STATIC_LIBRARY)
75cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
76cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
77cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
78cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# For the device
79cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# =====================================================
80cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(CLEAR_VARS)
81cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
82cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
83cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# we have the common sources, plus some device-specific stuff
84cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_SRC_FILES:= \
85cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	$(commonSources) \
86ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	BackupData.cpp \
87ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	BackupHelpers.cpp \
887901eb25c60b1df00050d6c3772505d8dcfcdab9Jeff Brown	Looper.cpp
89cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
90cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(TARGET_OS),linux)
91cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_LDLIBS += -lrt -ldl
92cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
93cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
94cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_C_INCLUDES += \
95cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project		external/zlib \
96cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project		external/icu4c/common
971555436473afd296488235f0aa22bb17162a929fMathias Agopian
98cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_LDLIBS += -lpthread
99cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
100cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_SHARED_LIBRARIES := \
101cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	libz \
102cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	liblog \
103cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	libcutils
104cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
105cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifneq ($(TARGET_SIMULATOR),true)
106cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(TARGET_OS)-$(TARGET_ARCH),linux-x86)
107cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# This is needed on x86 to bring in dl_iterate_phdr for CallStack.cpp
1081555436473afd296488235f0aa22bb17162a929fMathias AgopianLOCAL_SHARED_LIBRARIES += libdl
109cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif # linux-x86
110cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif # sim
111cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
112cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_MODULE:= libutils
113cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(BUILD_SHARED_LIBRARY)
114cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
11588753ae9d8f5432590df5e5338e0906834124c1dDan Egnorifneq ($(TARGET_SIMULATOR),true)
11688753ae9d8f5432590df5e5338e0906834124c1dDan Egnorifeq ($(TARGET_OS),linux)
11788753ae9d8f5432590df5e5338e0906834124c1dDan Egnorinclude $(CLEAR_VARS)
11888753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_C_INCLUDES += external/zlib external/icu4c/common
11988753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_LDLIBS := -lrt -ldl -lpthread
12088753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_MODULE := libutils
12188753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_SRC_FILES := $(commonSources) BackupData.cpp BackupHelpers.cpp
12288753ae9d8f5432590df5e5338e0906834124c1dDan Egnorinclude $(BUILD_STATIC_LIBRARY)
12388753ae9d8f5432590df5e5338e0906834124c1dDan Egnorendif
12488753ae9d8f5432590df5e5338e0906834124c1dDan Egnorendif
1257aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1267aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1277aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# Include subdirectory makefiles
1287aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# ============================================================
1297aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1307aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework
1317aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# team really wants is to build the stuff defined by this makefile.
1327aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brownifeq (,$(ONE_SHOT_MAKEFILE))
1337aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Browninclude $(call first-makefiles-under,$(LOCAL_PATH))
134c28f214f6c65c56936b11fff68564d9631cfae70Christopher Tateendif
135