BeagleRescue/libsdl2_mixer/external/mpg123-1.25.6/Android.mk

227 lines
6.9 KiB
Makefile

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libmpg123
LOCAL_C_INCLUDES := $(LOCAL_PATH)/android \
$(LOCAL_PATH)/src \
$(LOCAL_PATH)/src/compat \
$(LOCAL_PATH)/src/libmpg123 \
DECODER_CFLAGS_NEON := -DOPT_NEON -DREAL_IS_FLOAT
DECODER_SRC_NEON := \
src/libmpg123/stringbuf.c \
src/libmpg123/icy.c \
src/libmpg123/icy2utf8.c \
src/libmpg123/ntom.c \
src/libmpg123/synth.c \
src/libmpg123/synth_8bit.c \
src/libmpg123/layer1.c \
src/libmpg123/layer2.c \
src/libmpg123/layer3.c \
src/libmpg123/dct36_neon.S \
src/libmpg123/dct64_neon_float.S \
src/libmpg123/synth_neon_float.S \
src/libmpg123/synth_neon_s32.S \
src/libmpg123/synth_stereo_neon_float.S \
src/libmpg123/synth_stereo_neon_s32.S \
src/libmpg123/dct64_neon.S \
src/libmpg123/synth_neon.S \
src/libmpg123/synth_stereo_neon.S \
src/libmpg123/synth_s32.c \
src/libmpg123/synth_real.c \
src/libmpg123/feature.c \
DECODER_CFLAGS_NEON64 := -DOPT_MULTI -DOPT_GENERIC -DOPT_GENERIC_DITHER -DOPT_NEON64 -DREAL_IS_FLOAT
DECODER_SRC_NEON64 := \
src/libmpg123/stringbuf.c \
src/libmpg123/icy.c \
src/libmpg123/icy2utf8.c \
src/libmpg123/ntom.c \
src/libmpg123/synth.c \
src/libmpg123/synth_8bit.c \
src/libmpg123/layer1.c \
src/libmpg123/layer2.c \
src/libmpg123/layer3.c \
src/libmpg123/dct36_neon64.S \
src/libmpg123/dct64_neon64_float.S \
src/libmpg123/synth_neon64_float.S \
src/libmpg123/synth_neon64_s32.S \
src/libmpg123/synth_stereo_neon64_float.S \
src/libmpg123/synth_stereo_neon64_s32.S \
src/libmpg123/dct64_neon64.S \
src/libmpg123/synth_neon64.S \
src/libmpg123/synth_stereo_neon64.S \
src/libmpg123/synth_s32.c \
src/libmpg123/synth_real.c \
src/libmpg123/dither.c \
src/libmpg123/getcpuflags_arm.c \
src/libmpg123/check_neon.S \
src/libmpg123/feature.c \
# Unfortunately the assembly isn't relocatable so doesn't work on modern
# Android devices
DECODER_CFLAGS_X86 := -DOPT_GENERIC -DREAL_IS_FLOAT
DECODER_CFLAGS_X86_ASM := -DOPT_MULTI -DOPT_GENERIC -DOPT_GENERIC_DITHER -DOPT_I386 -DOPT_I586 -DOPT_I586_DITHER -DOPT_MMX -DOPT_3DNOW -DOPT_3DNOW_VINTAGE -DOPT_3DNOWEXT -DOPT_3DNOWEXT_VINTAGE -DOPT_SSE -DOPT_SSE_VINTAGE -DREAL_IS_FLOAT
DECODER_SRC_X86 := \
src/libmpg123/feature.c \
src/libmpg123/icy2utf8.c \
src/libmpg123/icy.c \
src/libmpg123/layer1.c \
src/libmpg123/layer2.c \
src/libmpg123/layer3.c \
src/libmpg123/ntom.c \
src/libmpg123/stringbuf.c \
src/libmpg123/synth_8bit.c \
src/libmpg123/synth.c \
src/libmpg123/synth_real.c \
src/libmpg123/synth_s32.c \
src/libmpg123/dither.c \
DECODER_SRC_X86_ASM := \
src/libmpg123/stringbuf.c \
src/libmpg123/icy.c \
src/libmpg123/icy2utf8.c \
src/libmpg123/ntom.c \
src/libmpg123/synth.c \
src/libmpg123/synth_8bit.c \
src/libmpg123/layer1.c \
src/libmpg123/layer2.c \
src/libmpg123/layer3.c \
src/libmpg123/synth_s32.c \
src/libmpg123/synth_real.c \
src/libmpg123/dct64_i386.c \
src/libmpg123/synth_i586.S \
src/libmpg123/synth_i586_dither.S \
src/libmpg123/dct64_mmx.S \
src/libmpg123/tabinit_mmx.S \
src/libmpg123/synth_mmx.S \
src/libmpg123/synth_3dnow.S \
src/libmpg123/dct64_3dnow.S \
src/libmpg123/equalizer_3dnow.S \
src/libmpg123/dct36_3dnow.S \
src/libmpg123/dct64_3dnowext.S \
src/libmpg123/synth_3dnowext.S \
src/libmpg123/dct36_3dnowext.S \
src/libmpg123/dct64_sse_float.S \
src/libmpg123/synth_sse_float.S \
src/libmpg123/synth_stereo_sse_float.S \
src/libmpg123/synth_sse_s32.S \
src/libmpg123/synth_stereo_sse_s32.S \
src/libmpg123/dct36_sse.S \
src/libmpg123/dct64_sse.S \
src/libmpg123/synth_sse.S \
src/libmpg123/getcpuflags.S \
src/libmpg123/dither.c \
src/libmpg123/feature.c \
DECODER_CFLAGS_X64 := -DOPT_MULTI -DOPT_X86_64 -DOPT_GENERIC -DOPT_GENERIC_DITHER -DREAL_IS_FLOAT -DOPT_AVX
DECODER_SRC_X64 := \
src/libmpg123/stringbuf.c \
src/libmpg123/icy.c \
src/libmpg123/icy.h \
src/libmpg123/icy2utf8.c \
src/libmpg123/icy2utf8.h \
src/libmpg123/ntom.c \
src/libmpg123/synth.c \
src/libmpg123/synth.h \
src/libmpg123/synth_8bit.c \
src/libmpg123/synth_8bit.h \
src/libmpg123/layer1.c \
src/libmpg123/layer2.c \
src/libmpg123/layer3.c \
src/libmpg123/synth_s32.c \
src/libmpg123/synth_real.c \
src/libmpg123/dct36_x86_64.S \
src/libmpg123/dct64_x86_64_float.S \
src/libmpg123/synth_x86_64_float.S \
src/libmpg123/synth_x86_64_s32.S \
src/libmpg123/synth_stereo_x86_64_float.S \
src/libmpg123/synth_stereo_x86_64_s32.S \
src/libmpg123/synth_x86_64.S \
src/libmpg123/dct64_x86_64.S \
src/libmpg123/synth_stereo_x86_64.S \
src/libmpg123/dither.c \
src/libmpg123/dither.h \
src/libmpg123/getcpuflags_x86_64.S \
src/libmpg123/dct36_avx.S \
src/libmpg123/dct64_avx_float.S \
src/libmpg123/synth_stereo_avx_float.S \
src/libmpg123/synth_stereo_avx_s32.S \
src/libmpg123/dct64_avx.S \
src/libmpg123/synth_stereo_avx.S \
src/libmpg123/feature.c
DECODER_CFLAGS_MIPS := -DOPT_GENERIC -DREAL_IS_FLOAT
DECODER_SRC_MIPS := \
src/libmpg123/stringbuf.c \
src/libmpg123/icy.c \
src/libmpg123/icy2utf8.c \
src/libmpg123/ntom.c \
src/libmpg123/synth.c \
src/libmpg123/synth_8bit.c \
src/libmpg123/layer1.c \
src/libmpg123/layer2.c \
src/libmpg123/layer3.c \
src/libmpg123/synth_s32.c \
src/libmpg123/synth_real.c \
src/libmpg123/feature.c
ifeq ($(TARGET_ARCH_ABI),armeabi)
DECODER_CFLAGS := $(DECODER_CFLAGS_NEON)
DECODER_SRC := $(DECODER_SRC_NEON)
endif
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
DECODER_CFLAGS := $(DECODER_CFLAGS_NEON)
DECODER_SRC := $(DECODER_SRC_NEON)
endif
ifeq ($(TARGET_ARCH_ABI),arm64-v8a)
DECODER_CFLAGS := $(DECODER_CFLAGS_NEON64)
DECODER_SRC := $(DECODER_SRC_NEON64)
endif
ifeq ($(TARGET_ARCH_ABI),x86)
DECODER_CFLAGS := $(DECODER_CFLAGS_X86)
DECODER_SRC := $(DECODER_SRC_X86)
endif
ifeq ($(TARGET_ARCH_ABI),x86_64)
DECODER_CFLAGS := $(DECODER_CFLAGS_X64)
DECODER_SRC := $(DECODER_SRC_X64)
endif
ifeq ($(TARGET_ARCH_ABI),mips)
DECODER_CFLAGS := $(DECODER_CFLAGS_MIPS)
DECODER_SRC := $(DECODER_SRC_MIPS)
endif
ifeq ($(TARGET_ARCH_ABI),mips64)
DECODER_CFLAGS := $(DECODER_CFLAGS_MIPS)
DECODER_SRC := $(DECODER_SRC_MIPS)
endif
LOCAL_CFLAGS := $(DECODER_CFLAGS)
LOCAL_SRC_FILES := \
src/libmpg123/parse.c \
src/libmpg123/frame.c \
src/libmpg123/format.c \
src/libmpg123/dct64.c \
src/libmpg123/equalizer.c \
src/libmpg123/id3.c \
src/libmpg123/optimize.c \
src/libmpg123/readers.c \
src/libmpg123/tabinit.c \
src/libmpg123/libmpg123.c \
src/libmpg123/index.c \
src/compat/compat_str.c \
src/compat/compat.c \
$(DECODER_SRC)
LOCAL_EXPORT_C_INCLUDES += $(LOCAL_C_INCLUDES)
include $(BUILD_SHARED_LIBRARY)