Android.mk revision e735f23018b398f45bd052b63616d7a45e29515b
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 \
24e735f23018b398f45bd052b63616d7a45e29515bJeff Brown	BasicHashtable.cpp \
251a20993c1000da3f008b34b7a5e6dbbd6fe291a6Jamie Gennis	BlobCache.cpp \
26cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	BufferedTextOutput.cpp \
27cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	CallStack.cpp \
28cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Debug.cpp \
29cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	FileMap.cpp \
30a580e68cc3bea688167eb5e55122bec8e83ab939Mathias Agopian	Flattenable.cpp \
31b86c8e4e55c860a6a7e1009fda2a4803da45b412Jason Simmons	LinearTransform.cpp \
321d2aeb673f9e757521ea0fd3717c7d4277f30b9fKenny Root	ObbFile.cpp \
3304cbbc1c47c68e805d2674d9fc702fc44385805fJeff Brown	PropertyMap.cpp \
34cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	RefBase.cpp \
35cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ResourceTypes.cpp \
36cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	SharedBuffer.cpp \
37cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Static.cpp \
38cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	StopWatch.cpp \
39c28f214f6c65c56936b11fff68564d9631cfae70Christopher Tate	StreamingZipInflater.cpp \
40cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	String8.cpp \
41cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	String16.cpp \
42254406e313f8fcb2b63e63494573673e82036dd9Mathias Agopian	StringArray.cpp \
43cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	SystemClock.cpp \
44cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	TextOutput.cpp \
45cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Threads.cpp \
46cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Timers.cpp \
47647925ddf053989b641b4c5c8a51efd55c931f22Jeff Brown	Tokenizer.cpp \
48ba0165bef09729a33ab8e0ca329342be05e0d859Kenny Root	Unicode.cpp \
49cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	VectorImpl.cpp \
50ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	ZipFileCRO.cpp \
51cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ZipFileRO.cpp \
52cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ZipUtils.cpp \
5314d978d02d93f8976ff8b01c2f827fc7c83f4fbdMathias Agopian	misc.cpp
54cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
55cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
56cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# For the host
57cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# =====================================================
58cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
59cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(CLEAR_VARS)
60cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
6109e2b145ff574261da93fc7980d2beb22ae55a46Mathias AgopianLOCAL_SRC_FILES:= $(commonSources)
62cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
63cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_MODULE:= libutils
64cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
65cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS)
66cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_C_INCLUDES += external/zlib
67cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
68cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(HOST_OS),windows)
69cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(strip $(USE_CYGWIN),),)
70cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# Under MinGW, ctype.h doesn't need multi-byte support
71cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_CFLAGS += -DMB_CUR_MAX=1
72cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
73cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
74cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
7526ad34522e85b4427ec0ae662dd43eb78a2c5f95Iliyan Malchevifeq ($(TARGET_OS),linux)
7626ad34522e85b4427ec0ae662dd43eb78a2c5f95Iliyan MalchevLOCAL_LDLIBS += -lrt -ldl
7726ad34522e85b4427ec0ae662dd43eb78a2c5f95Iliyan Malchevendif
7826ad34522e85b4427ec0ae662dd43eb78a2c5f95Iliyan Malchev
79cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(BUILD_HOST_STATIC_LIBRARY)
80cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
81cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
82cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
83cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# For the device
84cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# =====================================================
85cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(CLEAR_VARS)
86cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
87cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
88cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# we have the common sources, plus some device-specific stuff
89cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_SRC_FILES:= \
90cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	$(commonSources) \
91ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	BackupData.cpp \
92ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	BackupHelpers.cpp \
937901eb25c60b1df00050d6c3772505d8dcfcdab9Jeff Brown	Looper.cpp
94cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
95cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(TARGET_OS),linux)
96cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_LDLIBS += -lrt -ldl
97cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
98cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
99cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_C_INCLUDES += \
100cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project		external/zlib \
101cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project		external/icu4c/common
1021555436473afd296488235f0aa22bb17162a929fMathias Agopian
103cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_LDLIBS += -lpthread
104cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
105cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_SHARED_LIBRARIES := \
106cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	libz \
107cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	liblog \
1089c63a80f1f39fb969ec439e6b51614abb883d370Mathias Agopian	libcutils \
109ea45b01f9bc2d1ef1f8d97ca0480336d23e0aa97Jeff Brown	libdl \
110ea45b01f9bc2d1ef1f8d97ca0480336d23e0aa97Jeff Brown	libcorkscrew
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 Egnorifeq ($(TARGET_OS),linux)
11688753ae9d8f5432590df5e5338e0906834124c1dDan Egnorinclude $(CLEAR_VARS)
11788753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_C_INCLUDES += external/zlib external/icu4c/common
11888753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_LDLIBS := -lrt -ldl -lpthread
11988753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_MODULE := libutils
12088753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_SRC_FILES := $(commonSources) BackupData.cpp BackupHelpers.cpp
12188753ae9d8f5432590df5e5338e0906834124c1dDan Egnorinclude $(BUILD_STATIC_LIBRARY)
12288753ae9d8f5432590df5e5338e0906834124c1dDan Egnorendif
1237aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1247aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1257aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# Include subdirectory makefiles
1267aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# ============================================================
1277aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1287aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework
1297aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# team really wants is to build the stuff defined by this makefile.
1307aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brownifeq (,$(ONE_SHOT_MAKEFILE))
1317aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Browninclude $(call first-makefiles-under,$(LOCAL_PATH))
132c28f214f6c65c56936b11fff68564d9631cfae70Christopher Tateendif
133