blob: f731dfbbe2a13afbad9c8297ee6bec78f5e5952d [file] [log] [blame]
Andreas Hubere46b7be2009-07-14 16:56:47 -07001LOCAL_PATH:= $(call my-dir)
2include $(CLEAR_VARS)
3
James Dong17299ab2010-05-14 15:45:22 -07004include frameworks/base/media/libstagefright/codecs/common/Config.mk
5
Andreas Huber93c612e2011-05-11 14:15:13 -07006BUILD_WITH_SOFTWARE_DECODERS := false
Andreas Huber4b3913a2011-05-11 14:13:42 -07007
Andreas Huber8d65dd22010-06-23 16:40:57 -07008LOCAL_SRC_FILES:= \
Andreas Hubera1587462010-12-15 15:17:42 -08009 ACodec.cpp \
Gloria Wangc5b0abf2011-02-02 14:12:49 -080010 AACExtractor.cpp \
James Dongf84bfab2011-03-21 14:29:38 -070011 AACWriter.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070012 AMRExtractor.cpp \
13 AMRWriter.cpp \
Andreas Hubercabb7da2011-03-24 14:18:02 -070014 AVIExtractor.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070015 AudioPlayer.cpp \
16 AudioSource.cpp \
17 AwesomePlayer.cpp \
18 CameraSource.cpp \
Nipun Kwatrad7e7a3f2010-08-26 17:05:18 -070019 CameraSourceTimeLapse.cpp \
Nipun Kwatra06a1d612010-08-30 14:55:55 -070020 VideoSourceDownSampler.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070021 DataSource.cpp \
Gloria Wangb8791472010-10-25 15:23:04 -070022 DRMExtractor.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070023 ESDS.cpp \
24 FileSource.cpp \
Glenn Kastenf9f223e2011-01-13 11:17:00 -080025 FLACExtractor.cpp \
Andreas Huber5f5719e2011-03-08 15:59:28 -080026 HTTPBase.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070027 HTTPStream.cpp \
28 JPEGSource.cpp \
29 MP3Extractor.cpp \
Andreas Huberc751ecc2010-09-27 12:04:43 -070030 MPEG2TSWriter.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070031 MPEG4Extractor.cpp \
32 MPEG4Writer.cpp \
33 MediaBuffer.cpp \
34 MediaBufferGroup.cpp \
35 MediaDefs.cpp \
36 MediaExtractor.cpp \
37 MediaSource.cpp \
Nipun Kwatrad7e7a3f2010-08-26 17:05:18 -070038 MediaSourceSplitter.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070039 MetaData.cpp \
40 NuCachedSource2.cpp \
41 NuHTTPDataSource.cpp \
42 OMXClient.cpp \
43 OMXCodec.cpp \
44 OggExtractor.cpp \
45 SampleIterator.cpp \
46 SampleTable.cpp \
47 ShoutcastSource.cpp \
48 StagefrightMediaScanner.cpp \
49 StagefrightMetadataRetriever.cpp \
50 ThrottledSource.cpp \
51 TimeSource.cpp \
52 TimedEventQueue.cpp \
Gloria Wangc6091dd2011-05-03 15:59:03 -070053 TimedTextPlayer.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070054 Utils.cpp \
Andreas Huber1bd994982010-11-09 08:57:45 -080055 VBRISeeker.cpp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070056 WAVExtractor.cpp \
Gloria Wangc2c22e72010-11-01 15:53:16 -070057 WVMExtractor.cpp \
Andreas Huber1bd994982010-11-09 08:57:45 -080058 XINGSeeker.cpp \
Andreas Hubereef3c332010-08-19 10:39:47 -070059 avc_utils.cpp \
Andreas Hubere46b7be2009-07-14 16:56:47 -070060
61LOCAL_C_INCLUDES:= \
Andreas Huber9f9afef2009-09-15 12:49:11 -070062 $(JNI_H_INCLUDE) \
Andreas Hubera4f391c2010-10-15 13:31:29 -070063 $(TOP)/frameworks/base/include/media/stagefright/openmax \
Glenn Kastenf9f223e2011-01-13 11:17:00 -080064 $(TOP)/external/flac/include \
Andreas Huber57648e42010-08-04 10:14:30 -070065 $(TOP)/external/tremolo \
Andreas Huber118a1502011-02-17 13:35:08 -080066 $(TOP)/frameworks/base/media/libstagefright/rtsp \
67 $(TOP)/external/openssl/include \
Andreas Hubere46b7be2009-07-14 16:56:47 -070068
69LOCAL_SHARED_LIBRARIES := \
70 libbinder \
71 libmedia \
Marco Nelissen3a3ba052009-07-16 17:25:13 -070072 libutils \
Andreas Hubere46b7be2009-07-14 16:56:47 -070073 libcutils \
Andreas Huberaee3c632010-01-11 15:35:19 -080074 libui \
75 libsonivox \
Mathias Agopian000479f2010-02-09 17:46:37 -080076 libvorbisidec \
Nipun Kwatradce4beb2010-07-27 22:21:44 -070077 libstagefright_yuv \
Gloria Wangd5770912010-06-22 13:55:38 -070078 libcamera_client \
Andreas Huber6a1f5f92010-11-15 09:03:03 -080079 libdrmframework \
Andreas Huber118a1502011-02-17 13:35:08 -080080 libcrypto \
Glenn Kastencc562a32011-02-08 17:26:17 -080081 libssl \
Andreas Huber5f5719e2011-03-08 15:59:28 -080082 libgui \
Andreas Hubere46b7be2009-07-14 16:56:47 -070083
Andreas Huberdacaa732009-12-07 09:56:32 -080084LOCAL_STATIC_LIBRARIES := \
Andreas Huber1bb0ffd2010-11-22 13:06:35 -080085 libstagefright_color_conversion \
James Dong17299ab2010-05-14 15:45:22 -070086 libstagefright_aacenc \
Andreas Huberd49b526dd2009-12-11 15:07:25 -080087 libstagefright_amrnbenc \
James Dong17299ab2010-05-14 15:45:22 -070088 libstagefright_amrwbenc \
James Dong1cc31e62010-07-02 17:44:44 -070089 libstagefright_avcenc \
James Dong42ef0c72010-07-12 21:46:25 -070090 libstagefright_m4vh263enc \
Andreas Huber072f5242010-05-20 14:56:53 -070091 libstagefright_matroska \
Andreas Huber47ba30e2010-05-24 14:38:02 -070092 libvpx \
Andreas Hubera557b242010-06-07 13:05:37 -070093 libstagefright_mpeg2ts \
Andreas Huber202348e2010-06-07 14:35:29 -070094 libstagefright_httplive \
Andreas Huber7a747b82010-06-07 15:19:40 -070095 libstagefright_rtsp \
Andreas Huber8d65dd22010-06-23 16:40:57 -070096 libstagefright_id3 \
Glenn Kastenf9f223e2011-01-13 11:17:00 -080097 libFLAC \
Andreas Huber92b94c72011-03-11 08:47:51 -080098
Andreas Huber4b3913a2011-05-11 14:13:42 -070099ifeq ($(BUILD_WITH_SOFTWARE_DECODERS),true)
100
101LOCAL_SRC_FILES += \
102 ThreadedSource.cpp \
103
104LOCAL_STATIC_LIBRARIES += \
105 libstagefright_aacdec \
106 libstagefright_amrnbdec \
107 libstagefright_amrwbdec \
108 libstagefright_avcdec \
109 libstagefright_g711dec \
110 libstagefright_mp3dec \
111 libstagefright_m4vh263dec \
112 libstagefright_vorbisdec \
113 libstagefright_vpxdec \
114 libvpx \
115
116endif
117
118
Andreas Huber92b94c72011-03-11 08:47:51 -0800119################################################################################
120
121# The following was shamelessly copied from external/webkit/Android.mk and
122# currently must follow the same logic to determine how webkit was built and
123# if it's safe to link against libchromium.net
124
125# V8 also requires an ARMv7 CPU, and since we must use jsc, we cannot
126# use the Chrome http stack either.
127ifneq ($(strip $(ARCH_ARM_HAVE_ARMV7A)),true)
128 USE_ALT_HTTP := true
129endif
130
131# See if the user has specified a stack they want to use
132HTTP_STACK = $(HTTP)
133# We default to the Chrome HTTP stack.
134DEFAULT_HTTP = chrome
135ALT_HTTP = android
136
137ifneq ($(HTTP_STACK),chrome)
138 ifneq ($(HTTP_STACK),android)
139 # No HTTP stack is specified, pickup the one we want as default.
140 ifeq ($(USE_ALT_HTTP),true)
141 HTTP_STACK = $(ALT_HTTP)
142 else
143 HTTP_STACK = $(DEFAULT_HTTP)
144 endif
145 endif
146endif
147
148ifeq ($(HTTP_STACK),chrome)
149
150LOCAL_SHARED_LIBRARIES += \
151 liblog \
152 libicuuc \
153 libicui18n \
154 libz \
155 libdl \
156
157LOCAL_STATIC_LIBRARIES += \
Andreas Huber5f5719e2011-03-08 15:59:28 -0800158 libstagefright_chromium_http \
159 libchromium_net \
160 libwebcore \
161
162ifneq ($(TARGET_SIMULATOR),true)
163LOCAL_SHARED_LIBRARIES += libstlport
164include external/stlport/libstlport.mk
165endif
Andreas Huberdacaa732009-12-07 09:56:32 -0800166
Andreas Huber92b94c72011-03-11 08:47:51 -0800167LOCAL_CPPFLAGS += -DCHROMIUM_AVAILABLE=1
168
169endif # ifeq ($(HTTP_STACK),chrome)
170
171################################################################################
172
Andreas Huber4a0ec3f2009-12-10 09:44:29 -0800173LOCAL_SHARED_LIBRARIES += \
174 libstagefright_amrnb_common \
James Dong17299ab2010-05-14 15:45:22 -0700175 libstagefright_enc_common \
Andreas Hubera557b242010-06-07 13:05:37 -0700176 libstagefright_avc_common \
177 libstagefright_foundation \
Andreas Huber4a0ec3f2009-12-10 09:44:29 -0800178
Andreas Huber4ab5a6f2010-02-11 11:00:26 -0800179ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true)
180 LOCAL_LDLIBS += -lpthread -ldl
Marco Nelissen7691af92010-02-19 15:16:57 -0800181 LOCAL_SHARED_LIBRARIES += libdvm
182 LOCAL_CPPFLAGS += -DANDROID_SIMULATOR
Andreas Huber4ab5a6f2010-02-11 11:00:26 -0800183endif
184
185ifneq ($(TARGET_SIMULATOR),true)
186LOCAL_SHARED_LIBRARIES += libdl
187endif
188
Marco Nelissen3a3ba052009-07-16 17:25:13 -0700189ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true)
190 LOCAL_LDLIBS += -lpthread
191endif
192
Andreas Hubere46b7be2009-07-14 16:56:47 -0700193LOCAL_CFLAGS += -Wno-multichar
194
Andreas Huber4b3913a2011-05-11 14:13:42 -0700195ifeq ($(BUILD_WITH_SOFTWARE_DECODERS),true)
196 LOCAL_CFLAGS += -DHAVE_SOFTWARE_DECODERS
197endif
198
Andreas Hubere46b7be2009-07-14 16:56:47 -0700199LOCAL_MODULE:= libstagefright
200
201include $(BUILD_SHARED_LIBRARY)
202
203include $(call all-makefiles-under,$(LOCAL_PATH))