Android.mk revision c28f214f6c65c56936b11fff68564d9631cfae70
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 \
24cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	BufferedTextOutput.cpp \
25cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	CallStack.cpp \
26cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Debug.cpp \
27cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	FileMap.cpp \
28a580e68cc3bea688167eb5e55122bec8e83ab939Mathias Agopian	Flattenable.cpp \
291d2aeb673f9e757521ea0fd3717c7d4277f30b9fKenny Root	ObbFile.cpp \
3066db68948c83f1940fa66d76d28208b49bed7815Jeff Brown	Pool.cpp \
31cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	RefBase.cpp \
32cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ResourceTypes.cpp \
33cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	SharedBuffer.cpp \
34cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Static.cpp \
35cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	StopWatch.cpp \
36c28f214f6c65c56936b11fff68564d9631cfae70Christopher Tate	StreamingZipInflater.cpp \
37cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	String8.cpp \
38cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	String16.cpp \
39254406e313f8fcb2b63e63494573673e82036dd9Mathias Agopian	StringArray.cpp \
40cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	SystemClock.cpp \
41cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	TextOutput.cpp \
42cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Threads.cpp \
43cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	Timers.cpp \
44cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	VectorImpl.cpp \
45ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	ZipFileCRO.cpp \
46cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ZipFileRO.cpp \
47cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	ZipUtils.cpp \
4814d978d02d93f8976ff8b01c2f827fc7c83f4fbdMathias Agopian	misc.cpp
49cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
50cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
51cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# For the host
52cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# =====================================================
53cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
54cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(CLEAR_VARS)
55cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
5609e2b145ff574261da93fc7980d2beb22ae55a46Mathias AgopianLOCAL_SRC_FILES:= $(commonSources)
57cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
58cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_MODULE:= libutils
59cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
60cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS)
61cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_C_INCLUDES += external/zlib
62cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
63cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(HOST_OS),windows)
64cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(strip $(USE_CYGWIN),),)
65cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# Under MinGW, ctype.h doesn't need multi-byte support
66cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_CFLAGS += -DMB_CUR_MAX=1
67cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
68cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
69cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
701d2aeb673f9e757521ea0fd3717c7d4277f30b9fKenny Rootifeq ($(HOST_OS),darwin)
711d2aeb673f9e757521ea0fd3717c7d4277f30b9fKenny Root# MacOS doesn't have lseek64. However, off_t is 64-bit anyway.
721d2aeb673f9e757521ea0fd3717c7d4277f30b9fKenny RootLOCAL_CFLAGS += -DOFF_T_IS_64_BIT
731d2aeb673f9e757521ea0fd3717c7d4277f30b9fKenny Rootendif
741d2aeb673f9e757521ea0fd3717c7d4277f30b9fKenny Root
75cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(BUILD_HOST_STATIC_LIBRARY)
76cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
77cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
78cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
79cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# For the device
80cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# =====================================================
81cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(CLEAR_VARS)
82cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
83cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
84cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# we have the common sources, plus some device-specific stuff
85cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_SRC_FILES:= \
86cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	$(commonSources) \
87ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	BackupData.cpp \
88ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	BackupHelpers.cpp \
89ea5c46b7c180f741762f1a66203e3c99ffccc752Jeff Brown	PollLoop.cpp
90cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
91cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(TARGET_OS),linux)
92cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_LDLIBS += -lrt -ldl
93cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif
94cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
95cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_C_INCLUDES += \
96cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project		external/zlib \
97cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project		external/icu4c/common
981555436473afd296488235f0aa22bb17162a929fMathias Agopian
99cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_LDLIBS += -lpthread
100cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
101cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_SHARED_LIBRARIES := \
102cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	libz \
103cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	liblog \
104cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project	libcutils
105cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
106cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifneq ($(TARGET_SIMULATOR),true)
107cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectifeq ($(TARGET_OS)-$(TARGET_ARCH),linux-x86)
108cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project# This is needed on x86 to bring in dl_iterate_phdr for CallStack.cpp
1091555436473afd296488235f0aa22bb17162a929fMathias AgopianLOCAL_SHARED_LIBRARIES += libdl
110cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif # linux-x86
111cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectendif # sim
112cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
113cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source ProjectLOCAL_MODULE:= libutils
114cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Projectinclude $(BUILD_SHARED_LIBRARY)
115cbb1011c95e0c25c29e40e203a6a31bccd029da3The Android Open Source Project
11688753ae9d8f5432590df5e5338e0906834124c1dDan Egnorifneq ($(TARGET_SIMULATOR),true)
11788753ae9d8f5432590df5e5338e0906834124c1dDan Egnorifeq ($(TARGET_OS),linux)
11888753ae9d8f5432590df5e5338e0906834124c1dDan Egnorinclude $(CLEAR_VARS)
11988753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_C_INCLUDES += external/zlib external/icu4c/common
12088753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_LDLIBS := -lrt -ldl -lpthread
12188753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_MODULE := libutils
12288753ae9d8f5432590df5e5338e0906834124c1dDan EgnorLOCAL_SRC_FILES := $(commonSources) BackupData.cpp BackupHelpers.cpp
12388753ae9d8f5432590df5e5338e0906834124c1dDan Egnorinclude $(BUILD_STATIC_LIBRARY)
12488753ae9d8f5432590df5e5338e0906834124c1dDan Egnorendif
12588753ae9d8f5432590df5e5338e0906834124c1dDan Egnorendif
1267aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1277aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1287aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# Include subdirectory makefiles
1297aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# ============================================================
1307aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown
1317aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework
1327aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brown# team really wants is to build the stuff defined by this makefile.
1337aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Brownifeq (,$(ONE_SHOT_MAKEFILE))
1347aba23129b339f6f6ea4c378aa5f3a78d7f677ddJeff Browninclude $(call first-makefiles-under,$(LOCAL_PATH))
135c28f214f6c65c56936b11fff68564d9631cfae70Christopher Tateendif
136