1d9618f23226f46c752e56f712bc4b505117d8b4bAndreas HuberLOCAL_PATH:= $(call my-dir)
2d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huberinclude $(CLEAR_VARS)
3d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber
4d9618f23226f46c752e56f712bc4b505117d8b4bAndreas HuberLOCAL_SRC_FILES := \
5d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber	src/pvmp3_normalize.cpp \
6d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_alias_reduction.cpp \
7d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_crc.cpp \
8d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_decode_header.cpp \
9d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_decode_huff_cw.cpp \
10d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_getbits.cpp \
11d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_dequantize_sample.cpp \
12d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_framedecoder.cpp \
13d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_get_main_data_size.cpp \
14d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_get_side_info.cpp \
15d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_get_scale_factors.cpp \
16d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_mpeg2_get_scale_data.cpp \
17d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_mpeg2_get_scale_factors.cpp \
18d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_mpeg2_stereo_proc.cpp \
19d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_huffman_decoding.cpp \
20d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_huffman_parsing.cpp \
21d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_tables.cpp \
22d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_imdct_synth.cpp \
23d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_mdct_6.cpp \
24d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_dct_6.cpp \
25d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_poly_phase_synthesis.cpp \
26d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_equalizer.cpp \
27d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_seek_synch.cpp \
28d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_stereo_proc.cpp \
29d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/pvmp3_reorder.cpp \
30d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber
31d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huberifeq ($(TARGET_ARCH),arm)
32d9618f23226f46c752e56f712bc4b505117d8b4bAndreas HuberLOCAL_SRC_FILES += \
33d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber	src/asm/pvmp3_polyphase_filter_window_gcc.s \
34d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/asm/pvmp3_mdct_18_gcc.s \
35d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber 	src/asm/pvmp3_dct_9_gcc.s \
36d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber	src/asm/pvmp3_dct_16_gcc.s
37c54176addef15699a518b69cd6bbd40ffc95e72eAndreas Huberelse
38c54176addef15699a518b69cd6bbd40ffc95e72eAndreas HuberLOCAL_SRC_FILES += \
39c54176addef15699a518b69cd6bbd40ffc95e72eAndreas Huber 	src/pvmp3_polyphase_filter_window.cpp \
40c54176addef15699a518b69cd6bbd40ffc95e72eAndreas Huber 	src/pvmp3_mdct_18.cpp \
41c54176addef15699a518b69cd6bbd40ffc95e72eAndreas Huber 	src/pvmp3_dct_9.cpp \
42c54176addef15699a518b69cd6bbd40ffc95e72eAndreas Huber 	src/pvmp3_dct_16.cpp
43d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huberendif
44d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber
45d9618f23226f46c752e56f712bc4b505117d8b4bAndreas HuberLOCAL_C_INCLUDES := \
46559bf2836f5da25b75bfb229fec0d20d540ee426James Dong        frameworks/av/media/libstagefright/include \
47d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber        $(LOCAL_PATH)/src \
48d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber        $(LOCAL_PATH)/include
49d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber
50d9618f23226f46c752e56f712bc4b505117d8b4bAndreas HuberLOCAL_CFLAGS := \
51d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber        -DOSCL_UNUSED_ARG=
52d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber
5384333e0475bc911adc16417f4ca327c975cf6c36Andreas HuberLOCAL_CFLAGS += -Werror
5484333e0475bc911adc16417f4ca327c975cf6c36Andreas Huber
55d9618f23226f46c752e56f712bc4b505117d8b4bAndreas HuberLOCAL_MODULE := libstagefright_mp3dec
56d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber
57424c6cbfa75da5f4f889ab6517dfee4dd024ba2dJames WylderLOCAL_ARM_MODE := arm
58424c6cbfa75da5f4f889ab6517dfee4dd024ba2dJames Wylder
59d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huberinclude $(BUILD_STATIC_LIBRARY)
60d9618f23226f46c752e56f712bc4b505117d8b4bAndreas Huber
61bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber################################################################################
62bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber
63bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huberinclude $(CLEAR_VARS)
64bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber
65bbba88cb1bdc34705d1477208990a06904c022e7Andreas HuberLOCAL_SRC_FILES := \
66bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber        SoftMP3.cpp
67bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber
68bbba88cb1bdc34705d1477208990a06904c022e7Andreas HuberLOCAL_C_INCLUDES := \
69559bf2836f5da25b75bfb229fec0d20d540ee426James Dong        frameworks/av/media/libstagefright/include \
706c6b4d0d2b98a7ceee8b697daaf611f8df3254fbJames Dong        frameworks/native/include/media/openmax \
71bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber        $(LOCAL_PATH)/src \
72bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber        $(LOCAL_PATH)/include
73bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber
7484333e0475bc911adc16417f4ca327c975cf6c36Andreas HuberLOCAL_CFLAGS += -Werror
7584333e0475bc911adc16417f4ca327c975cf6c36Andreas Huber
76bbba88cb1bdc34705d1477208990a06904c022e7Andreas HuberLOCAL_SHARED_LIBRARIES := \
77da0dc0af0effe9fbfb3ce3187c8472fca2baf3c6Ying Wang        libstagefright libstagefright_omx libstagefright_foundation libutils liblog
78bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber
79bbba88cb1bdc34705d1477208990a06904c022e7Andreas HuberLOCAL_STATIC_LIBRARIES := \
80bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber        libstagefright_mp3dec
81bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber
82bbba88cb1bdc34705d1477208990a06904c022e7Andreas HuberLOCAL_MODULE := libstagefright_soft_mp3dec
83a920660c2ae1548471c40c664ed3ac01b87c57b6Andreas HuberLOCAL_MODULE_TAGS := optional
84bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huber
85bbba88cb1bdc34705d1477208990a06904c022e7Andreas Huberinclude $(BUILD_SHARED_LIBRARY)
86