Andreas Huber | e46b7be | 2009-07-14 16:56:47 -0700 | [diff] [blame] | 1 | LOCAL_PATH:= $(call my-dir) |
| 2 | include $(CLEAR_VARS) |
| 3 | |
James Dong | 17299ab | 2010-05-14 15:45:22 -0700 | [diff] [blame] | 4 | include frameworks/base/media/libstagefright/codecs/common/Config.mk |
| 5 | |
Andreas Huber | 93c612e | 2011-05-11 14:15:13 -0700 | [diff] [blame] | 6 | BUILD_WITH_SOFTWARE_DECODERS := false |
Andreas Huber | 4b3913a | 2011-05-11 14:13:42 -0700 | [diff] [blame] | 7 | |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 8 | LOCAL_SRC_FILES:= \ |
Andreas Huber | a158746 | 2010-12-15 15:17:42 -0800 | [diff] [blame] | 9 | ACodec.cpp \ |
Gloria Wang | c5b0abf | 2011-02-02 14:12:49 -0800 | [diff] [blame] | 10 | AACExtractor.cpp \ |
James Dong | f84bfab | 2011-03-21 14:29:38 -0700 | [diff] [blame] | 11 | AACWriter.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 12 | AMRExtractor.cpp \ |
| 13 | AMRWriter.cpp \ |
Andreas Huber | cabb7da | 2011-03-24 14:18:02 -0700 | [diff] [blame] | 14 | AVIExtractor.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 15 | AudioPlayer.cpp \ |
| 16 | AudioSource.cpp \ |
| 17 | AwesomePlayer.cpp \ |
| 18 | CameraSource.cpp \ |
Nipun Kwatra | d7e7a3f | 2010-08-26 17:05:18 -0700 | [diff] [blame] | 19 | CameraSourceTimeLapse.cpp \ |
Nipun Kwatra | 06a1d61 | 2010-08-30 14:55:55 -0700 | [diff] [blame] | 20 | VideoSourceDownSampler.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 21 | DataSource.cpp \ |
Gloria Wang | b879147 | 2010-10-25 15:23:04 -0700 | [diff] [blame] | 22 | DRMExtractor.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 23 | ESDS.cpp \ |
| 24 | FileSource.cpp \ |
Glenn Kasten | f9f223e | 2011-01-13 11:17:00 -0800 | [diff] [blame] | 25 | FLACExtractor.cpp \ |
Andreas Huber | 5f5719e | 2011-03-08 15:59:28 -0800 | [diff] [blame] | 26 | HTTPBase.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 27 | HTTPStream.cpp \ |
| 28 | JPEGSource.cpp \ |
| 29 | MP3Extractor.cpp \ |
Andreas Huber | c751ecc | 2010-09-27 12:04:43 -0700 | [diff] [blame] | 30 | MPEG2TSWriter.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 31 | MPEG4Extractor.cpp \ |
| 32 | MPEG4Writer.cpp \ |
| 33 | MediaBuffer.cpp \ |
| 34 | MediaBufferGroup.cpp \ |
| 35 | MediaDefs.cpp \ |
| 36 | MediaExtractor.cpp \ |
| 37 | MediaSource.cpp \ |
Nipun Kwatra | d7e7a3f | 2010-08-26 17:05:18 -0700 | [diff] [blame] | 38 | MediaSourceSplitter.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 39 | 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 Wang | c6091dd | 2011-05-03 15:59:03 -0700 | [diff] [blame] | 53 | TimedTextPlayer.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 54 | Utils.cpp \ |
Andreas Huber | 1bd99498 | 2010-11-09 08:57:45 -0800 | [diff] [blame] | 55 | VBRISeeker.cpp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 56 | WAVExtractor.cpp \ |
Gloria Wang | c2c22e7 | 2010-11-01 15:53:16 -0700 | [diff] [blame] | 57 | WVMExtractor.cpp \ |
Andreas Huber | 1bd99498 | 2010-11-09 08:57:45 -0800 | [diff] [blame] | 58 | XINGSeeker.cpp \ |
Andreas Huber | eef3c33 | 2010-08-19 10:39:47 -0700 | [diff] [blame] | 59 | avc_utils.cpp \ |
Andreas Huber | e46b7be | 2009-07-14 16:56:47 -0700 | [diff] [blame] | 60 | |
| 61 | LOCAL_C_INCLUDES:= \ |
Andreas Huber | 9f9afef | 2009-09-15 12:49:11 -0700 | [diff] [blame] | 62 | $(JNI_H_INCLUDE) \ |
Andreas Huber | a4f391c | 2010-10-15 13:31:29 -0700 | [diff] [blame] | 63 | $(TOP)/frameworks/base/include/media/stagefright/openmax \ |
Glenn Kasten | f9f223e | 2011-01-13 11:17:00 -0800 | [diff] [blame] | 64 | $(TOP)/external/flac/include \ |
Andreas Huber | 57648e4 | 2010-08-04 10:14:30 -0700 | [diff] [blame] | 65 | $(TOP)/external/tremolo \ |
Andreas Huber | 118a150 | 2011-02-17 13:35:08 -0800 | [diff] [blame] | 66 | $(TOP)/frameworks/base/media/libstagefright/rtsp \ |
| 67 | $(TOP)/external/openssl/include \ |
Andreas Huber | e46b7be | 2009-07-14 16:56:47 -0700 | [diff] [blame] | 68 | |
| 69 | LOCAL_SHARED_LIBRARIES := \ |
| 70 | libbinder \ |
| 71 | libmedia \ |
Marco Nelissen | 3a3ba05 | 2009-07-16 17:25:13 -0700 | [diff] [blame] | 72 | libutils \ |
Andreas Huber | e46b7be | 2009-07-14 16:56:47 -0700 | [diff] [blame] | 73 | libcutils \ |
Andreas Huber | aee3c63 | 2010-01-11 15:35:19 -0800 | [diff] [blame] | 74 | libui \ |
| 75 | libsonivox \ |
Mathias Agopian | 000479f | 2010-02-09 17:46:37 -0800 | [diff] [blame] | 76 | libvorbisidec \ |
Nipun Kwatra | dce4beb | 2010-07-27 22:21:44 -0700 | [diff] [blame] | 77 | libstagefright_yuv \ |
Gloria Wang | d577091 | 2010-06-22 13:55:38 -0700 | [diff] [blame] | 78 | libcamera_client \ |
Andreas Huber | 6a1f5f9 | 2010-11-15 09:03:03 -0800 | [diff] [blame] | 79 | libdrmframework \ |
Andreas Huber | 118a150 | 2011-02-17 13:35:08 -0800 | [diff] [blame] | 80 | libcrypto \ |
Glenn Kasten | cc562a3 | 2011-02-08 17:26:17 -0800 | [diff] [blame] | 81 | libssl \ |
Andreas Huber | 5f5719e | 2011-03-08 15:59:28 -0800 | [diff] [blame] | 82 | libgui \ |
Andreas Huber | e46b7be | 2009-07-14 16:56:47 -0700 | [diff] [blame] | 83 | |
Andreas Huber | dacaa73 | 2009-12-07 09:56:32 -0800 | [diff] [blame] | 84 | LOCAL_STATIC_LIBRARIES := \ |
Andreas Huber | 1bb0ffd | 2010-11-22 13:06:35 -0800 | [diff] [blame] | 85 | libstagefright_color_conversion \ |
James Dong | 17299ab | 2010-05-14 15:45:22 -0700 | [diff] [blame] | 86 | libstagefright_aacenc \ |
Andreas Huber | d49b526dd | 2009-12-11 15:07:25 -0800 | [diff] [blame] | 87 | libstagefright_amrnbenc \ |
James Dong | 17299ab | 2010-05-14 15:45:22 -0700 | [diff] [blame] | 88 | libstagefright_amrwbenc \ |
James Dong | 1cc31e6 | 2010-07-02 17:44:44 -0700 | [diff] [blame] | 89 | libstagefright_avcenc \ |
James Dong | 42ef0c7 | 2010-07-12 21:46:25 -0700 | [diff] [blame] | 90 | libstagefright_m4vh263enc \ |
Andreas Huber | 072f524 | 2010-05-20 14:56:53 -0700 | [diff] [blame] | 91 | libstagefright_matroska \ |
Andreas Huber | 47ba30e | 2010-05-24 14:38:02 -0700 | [diff] [blame] | 92 | libvpx \ |
Andreas Huber | a557b24 | 2010-06-07 13:05:37 -0700 | [diff] [blame] | 93 | libstagefright_mpeg2ts \ |
Andreas Huber | 202348e | 2010-06-07 14:35:29 -0700 | [diff] [blame] | 94 | libstagefright_httplive \ |
Andreas Huber | 7a747b8 | 2010-06-07 15:19:40 -0700 | [diff] [blame] | 95 | libstagefright_rtsp \ |
Andreas Huber | 8d65dd2 | 2010-06-23 16:40:57 -0700 | [diff] [blame] | 96 | libstagefright_id3 \ |
Glenn Kasten | f9f223e | 2011-01-13 11:17:00 -0800 | [diff] [blame] | 97 | libFLAC \ |
Andreas Huber | 92b94c7 | 2011-03-11 08:47:51 -0800 | [diff] [blame] | 98 | |
Andreas Huber | 4b3913a | 2011-05-11 14:13:42 -0700 | [diff] [blame] | 99 | ifeq ($(BUILD_WITH_SOFTWARE_DECODERS),true) |
| 100 | |
| 101 | LOCAL_SRC_FILES += \ |
| 102 | ThreadedSource.cpp \ |
| 103 | |
| 104 | LOCAL_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 | |
| 116 | endif |
| 117 | |
| 118 | |
Andreas Huber | 92b94c7 | 2011-03-11 08:47:51 -0800 | [diff] [blame] | 119 | ################################################################################ |
| 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. |
| 127 | ifneq ($(strip $(ARCH_ARM_HAVE_ARMV7A)),true) |
| 128 | USE_ALT_HTTP := true |
| 129 | endif |
| 130 | |
| 131 | # See if the user has specified a stack they want to use |
| 132 | HTTP_STACK = $(HTTP) |
| 133 | # We default to the Chrome HTTP stack. |
| 134 | DEFAULT_HTTP = chrome |
| 135 | ALT_HTTP = android |
| 136 | |
| 137 | ifneq ($(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 |
| 146 | endif |
| 147 | |
| 148 | ifeq ($(HTTP_STACK),chrome) |
| 149 | |
| 150 | LOCAL_SHARED_LIBRARIES += \ |
| 151 | liblog \ |
| 152 | libicuuc \ |
| 153 | libicui18n \ |
| 154 | libz \ |
| 155 | libdl \ |
| 156 | |
| 157 | LOCAL_STATIC_LIBRARIES += \ |
Andreas Huber | 5f5719e | 2011-03-08 15:59:28 -0800 | [diff] [blame] | 158 | libstagefright_chromium_http \ |
| 159 | libchromium_net \ |
| 160 | libwebcore \ |
| 161 | |
| 162 | ifneq ($(TARGET_SIMULATOR),true) |
| 163 | LOCAL_SHARED_LIBRARIES += libstlport |
| 164 | include external/stlport/libstlport.mk |
| 165 | endif |
Andreas Huber | dacaa73 | 2009-12-07 09:56:32 -0800 | [diff] [blame] | 166 | |
Andreas Huber | 92b94c7 | 2011-03-11 08:47:51 -0800 | [diff] [blame] | 167 | LOCAL_CPPFLAGS += -DCHROMIUM_AVAILABLE=1 |
| 168 | |
| 169 | endif # ifeq ($(HTTP_STACK),chrome) |
| 170 | |
| 171 | ################################################################################ |
| 172 | |
Andreas Huber | 4a0ec3f | 2009-12-10 09:44:29 -0800 | [diff] [blame] | 173 | LOCAL_SHARED_LIBRARIES += \ |
| 174 | libstagefright_amrnb_common \ |
James Dong | 17299ab | 2010-05-14 15:45:22 -0700 | [diff] [blame] | 175 | libstagefright_enc_common \ |
Andreas Huber | a557b24 | 2010-06-07 13:05:37 -0700 | [diff] [blame] | 176 | libstagefright_avc_common \ |
| 177 | libstagefright_foundation \ |
Andreas Huber | 4a0ec3f | 2009-12-10 09:44:29 -0800 | [diff] [blame] | 178 | |
Andreas Huber | 4ab5a6f | 2010-02-11 11:00:26 -0800 | [diff] [blame] | 179 | ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true) |
| 180 | LOCAL_LDLIBS += -lpthread -ldl |
Marco Nelissen | 7691af9 | 2010-02-19 15:16:57 -0800 | [diff] [blame] | 181 | LOCAL_SHARED_LIBRARIES += libdvm |
| 182 | LOCAL_CPPFLAGS += -DANDROID_SIMULATOR |
Andreas Huber | 4ab5a6f | 2010-02-11 11:00:26 -0800 | [diff] [blame] | 183 | endif |
| 184 | |
| 185 | ifneq ($(TARGET_SIMULATOR),true) |
| 186 | LOCAL_SHARED_LIBRARIES += libdl |
| 187 | endif |
| 188 | |
Marco Nelissen | 3a3ba05 | 2009-07-16 17:25:13 -0700 | [diff] [blame] | 189 | ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true) |
| 190 | LOCAL_LDLIBS += -lpthread |
| 191 | endif |
| 192 | |
Andreas Huber | e46b7be | 2009-07-14 16:56:47 -0700 | [diff] [blame] | 193 | LOCAL_CFLAGS += -Wno-multichar |
| 194 | |
Andreas Huber | 4b3913a | 2011-05-11 14:13:42 -0700 | [diff] [blame] | 195 | ifeq ($(BUILD_WITH_SOFTWARE_DECODERS),true) |
| 196 | LOCAL_CFLAGS += -DHAVE_SOFTWARE_DECODERS |
| 197 | endif |
| 198 | |
Andreas Huber | e46b7be | 2009-07-14 16:56:47 -0700 | [diff] [blame] | 199 | LOCAL_MODULE:= libstagefright |
| 200 | |
| 201 | include $(BUILD_SHARED_LIBRARY) |
| 202 | |
| 203 | include $(call all-makefiles-under,$(LOCAL_PATH)) |