1LOCAL_PATH := $(call my-dir)
2include $(CLEAR_VARS)
3
4AAC_LIBRARY = fraunhofer
5
6LOCAL_SRC_FILES := basic_op/basicop2.c basic_op/oper_32b.c
7
8LOCAL_SRC_FILES += \
9	AACEncoder.cpp \
10	src/aac_rom.c \
11	src/aacenc.c \
12	src/aacenc_core.c \
13	src/adj_thr.c \
14	src/band_nrg.c \
15	src/bit_cnt.c \
16	src/bitbuffer.c \
17	src/bitenc.c \
18	src/block_switch.c \
19	src/channel_map.c \
20	src/dyn_bits.c \
21	src/grp_data.c \
22	src/interface.c \
23	src/line_pe.c \
24	src/ms_stereo.c \
25	src/pre_echo_control.c \
26	src/psy_configuration.c \
27	src/psy_main.c \
28	src/qc_main.c \
29	src/quantize.c \
30	src/sf_estim.c \
31	src/spreading.c \
32	src/stat_bits.c \
33	src/tns.c \
34	src/transform.c \
35	src/memalign.c
36
37ifneq ($(ARCH_ARM_HAVE_NEON),true)
38    LOCAL_SRC_FILES_arm := \
39        src/asm/ARMV5E/AutoCorrelation_v5.s \
40        src/asm/ARMV5E/band_nrg_v5.s \
41        src/asm/ARMV5E/CalcWindowEnergy_v5.s \
42        src/asm/ARMV5E/PrePostMDCT_v5.s \
43        src/asm/ARMV5E/R4R8First_v5.s \
44        src/asm/ARMV5E/Radix4FFT_v5.s
45
46    LOCAL_CFLAGS_arm := -DARMV5E -DARM_INASM -DARMV5_INASM
47    LOCAL_C_INCLUDES_arm := $(LOCAL_PATH)/src/asm/ARMV5E
48else
49    LOCAL_SRC_FILES_arm := \
50        src/asm/ARMV5E/AutoCorrelation_v5.s \
51        src/asm/ARMV5E/band_nrg_v5.s \
52        src/asm/ARMV5E/CalcWindowEnergy_v5.s \
53        src/asm/ARMV7/PrePostMDCT_v7.s \
54        src/asm/ARMV7/R4R8First_v7.s \
55        src/asm/ARMV7/Radix4FFT_v7.s
56    LOCAL_CFLAGS_arm := -DARMV5E -DARMV7Neon -DARM_INASM -DARMV5_INASM -DARMV6_INASM
57    LOCAL_C_INCLUDES_arm := $(LOCAL_PATH)/src/asm/ARMV5E
58    LOCAL_C_INCLUDES_arm += $(LOCAL_PATH)/src/asm/ARMV7
59endif
60
61LOCAL_MODULE := libstagefright_aacenc
62
63LOCAL_ARM_MODE := arm
64
65LOCAL_STATIC_LIBRARIES :=
66
67LOCAL_SHARED_LIBRARIES :=
68
69LOCAL_C_INCLUDES := \
70	frameworks/av/include \
71	frameworks/av/media/libstagefright/include \
72	frameworks/av/media/libstagefright/codecs/common/include \
73	$(LOCAL_PATH)/src \
74	$(LOCAL_PATH)/inc \
75	$(LOCAL_PATH)/basic_op
76
77LOCAL_CFLAGS += -Werror
78LOCAL_CLANG := true
79LOCAL_SANITIZE := signed-integer-overflow unsigned-integer-overflow
80
81include $(BUILD_STATIC_LIBRARY)
82
83################################################################################
84
85include $(CLEAR_VARS)
86
87ifeq ($(AAC_LIBRARY), fraunhofer)
88
89  include $(CLEAR_VARS)
90
91  LOCAL_SRC_FILES := \
92          SoftAACEncoder2.cpp
93
94  LOCAL_C_INCLUDES := \
95          frameworks/av/media/libstagefright/include \
96          frameworks/native/include/media/openmax \
97          external/aac/libAACenc/include \
98          external/aac/libFDK/include \
99          external/aac/libMpegTPEnc/include \
100          external/aac/libSBRenc/include \
101          external/aac/libSYS/include
102
103  LOCAL_CFLAGS :=
104
105  LOCAL_CFLAGS += -Werror
106  LOCAL_CLANG := true
107  LOCAL_SANITIZE := signed-integer-overflow unsigned-integer-overflow
108
109  LOCAL_STATIC_LIBRARIES := libFraunhoferAAC
110
111  LOCAL_SHARED_LIBRARIES := \
112          libstagefright_omx libstagefright_foundation libutils liblog
113
114  LOCAL_MODULE := libstagefright_soft_aacenc
115  LOCAL_MODULE_TAGS := optional
116
117  include $(BUILD_SHARED_LIBRARY)
118
119else # visualon
120
121  LOCAL_SRC_FILES := \
122          SoftAACEncoder.cpp
123
124  LOCAL_C_INCLUDES := \
125          frameworks/av/media/libstagefright/include \
126          frameworks/av/media/libstagefright/codecs/common/include \
127          frameworks/native/include/media/openmax
128
129  LOCAL_CFLAGS := -DOSCL_IMPORT_REF=
130
131  LOCAL_CFLAGS += -Werror
132  LOCAL_CLANG := true
133  LOCAL_SANITIZE := signed-integer-overflow unsigned-integer-overflow
134
135  LOCAL_STATIC_LIBRARIES := \
136          libstagefright_aacenc
137
138  LOCAL_SHARED_LIBRARIES := \
139          libstagefright_omx libstagefright_foundation libutils liblog \
140          libstagefright_enc_common
141
142  LOCAL_MODULE := libstagefright_soft_aacenc
143  LOCAL_MODULE_TAGS := optional
144
145  include $(BUILD_SHARED_LIBRARY)
146
147endif # $(AAC_LIBRARY)
148