Files
EhViewer/jni/Android.mk
T
2014-10-18 20:35:17 +08:00

212 lines
5.5 KiB
Makefile

LOCAL_PATH := $(call my-dir)
##################################################
### libjpeg-turbo ###
##################################################
include $(CLEAR_VARS)
LOCAL_MODULE := libjpeg-turbo
LOCAL_SRC_FILES:= \
libjpeg-turbo/jaricom.c \
libjpeg-turbo/jcomapi.c \
libjpeg-turbo/jdapimin.c \
libjpeg-turbo/jdapistd.c \
libjpeg-turbo/jdarith.c \
libjpeg-turbo/jdatadst.c \
libjpeg-turbo/jdatadst-tj.c \
libjpeg-turbo/jdatasrc.c \
libjpeg-turbo/jdatasrc-tj.c \
libjpeg-turbo/jdcoefct.c \
libjpeg-turbo/jdcolor.c \
libjpeg-turbo/jddctmgr.c \
libjpeg-turbo/jdhuff.c \
libjpeg-turbo/jdinput.c \
libjpeg-turbo/jdmainct.c \
libjpeg-turbo/jdmarker.c \
libjpeg-turbo/jdmaster.c \
libjpeg-turbo/jdmerge.c \
libjpeg-turbo/jdphuff.c \
libjpeg-turbo/jdpostct.c \
libjpeg-turbo/jdsample.c \
libjpeg-turbo/jdtrans.c \
libjpeg-turbo/jerror.c \
libjpeg-turbo/jfdctflt.c \
libjpeg-turbo/jfdctfst.c \
libjpeg-turbo/jfdctint.c \
libjpeg-turbo/jidctflt.c \
libjpeg-turbo/jidctfst.c \
libjpeg-turbo/jidctint.c \
libjpeg-turbo/jidctred.c \
libjpeg-turbo/jmemmgr.c \
libjpeg-turbo/jmemnobs.c \
libjpeg-turbo/jquant1.c \
libjpeg-turbo/jquant2.c \
libjpeg-turbo/jutils.c \
libjpeg-turbo/transupp.c \
libjpeg-turbo/turbojpeg.c
LOCAL_CFLAGS := -O3 -DANDROID
ifeq ($(TARGET_ARCH_ABI),$(filter $(TARGET_ARCH_ABI), armeabi armeabi-v7a))
# Don't add -mfpu=neon
# Some arm v7 cpu do not support neon,
# libjpeg-turbo can check neon in init_simd()
# through parse_proc_cpuinfo()
#LOCAL_CFLAGS += -mfpu=neon
LOCAL_SRC_FILES += \
libjpeg-turbo/simd/jsimd_arm.c \
libjpeg-turbo/simd/jsimd_arm_neon.S
endif
ifeq ($(TARGET_ARCH_ABI),arm64-v8a)
LOCAL_SRC_FILES += \
libjpeg-turbo/simd/jsimd_arm64.c \
libjpeg-turbo/simd/jsimd_arm64_neon.S
endif
ifeq ($(TARGET_ARCH_ABI),x86)
LOCAL_SRC_FILES += \
libjpeg-turbo/simd/jsimd_i386.c \
libjpeg-turbo/simd/jsimdcpu.asm \
libjpeg-turbo/simd/jfdctflt-3dn.asm \
libjpeg-turbo/simd/jidctflt-3dn.asm \
libjpeg-turbo/simd/jquant-3dn.asm \
libjpeg-turbo/simd/jccolor-mmx.asm \
libjpeg-turbo/simd/jcgray-mmx.asm \
libjpeg-turbo/simd/jcsample-mmx.asm \
libjpeg-turbo/simd/jdcolor-mmx.asm \
libjpeg-turbo/simd/jdmerge-mmx.asm \
libjpeg-turbo/simd/jdsample-mmx.asm \
libjpeg-turbo/simd/jfdctfst-mmx.asm \
libjpeg-turbo/simd/jfdctint-mmx.asm \
libjpeg-turbo/simd/jidctfst-mmx.asm \
libjpeg-turbo/simd/jidctint-mmx.asm \
libjpeg-turbo/simd/jidctred-mmx.asm \
libjpeg-turbo/simd/jquant-mmx.asm \
libjpeg-turbo/simd/jfdctflt-sse.asm \
libjpeg-turbo/simd/jidctflt-sse.asm \
libjpeg-turbo/simd/jquant-sse.asm \
libjpeg-turbo/simd/jccolor-sse2.asm \
libjpeg-turbo/simd/jcgray-sse2.asm \
libjpeg-turbo/simd/jcsample-sse2.asm \
libjpeg-turbo/simd/jdcolor-sse2.asm \
libjpeg-turbo/simd/jdmerge-sse2.asm \
libjpeg-turbo/simd/jdsample-sse2.asm \
libjpeg-turbo/simd/jfdctfst-sse2.asm \
libjpeg-turbo/simd/jfdctint-sse2.asm \
libjpeg-turbo/simd/jidctflt-sse2.asm \
libjpeg-turbo/simd/jidctfst-sse2.asm \
libjpeg-turbo/simd/jidctint-sse2.asm \
libjpeg-turbo/simd/jidctred-sse2.asm \
libjpeg-turbo/simd/jquantf-sse2.asm \
libjpeg-turbo/simd/jquanti-sse2.asm
LOCAL_ASMFLAGS:= -Plibjpeg-turbo/simd/jsimdcfg.inc
endif
ifeq ($(TARGET_ARCH_ABI),mips)
LOCAL_SRC_FILES += \
libjpeg-turbo/simd/jsimd_mips.c \
libjpeg-turbo/simd/jsimd_mips_dspr2.S
endif
include $(BUILD_STATIC_LIBRARY)
##################################################
### libz ###
##################################################
include $(CLEAR_VARS)
LOCAL_MODULE := libz
LOCAL_SRC_FILES := \
zlib/adler32.c \
zlib/crc32.c \
zlib/inffast.c \
zlib/inflate.c \
zlib/inftrees.c \
zlib/trees.c \
zlib/zutil.c
LOCAL_CFLAGS := -O3 -DANDROID
include $(BUILD_STATIC_LIBRARY)
##################################################
### libpng ###
##################################################
include $(CLEAR_VARS)
LOCAL_MODULE := libpng
LOCAL_SRC_FILES := \
libpng/png.c \
libpng/pngerror.c \
libpng/pngget.c \
libpng/pngmem.c \
libpng/pngpread.c \
libpng/pngread.c \
libpng/pngrio.c \
libpng/pngrtran.c \
libpng/pngrutil.c \
libpng/pngset.c \
libpng/pngtrans.c
LOCAL_CFLAGS := -O3 -DANDROID
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
# Add -mfpu=neon
# libpng only check neon when add -mfpu=neon
LOCAL_CFLAGS += -mfpu=neon
endif
ifeq ($(TARGET_ARCH_ABI),$(filter $(TARGET_ARCH_ABI), armeabi armeabi-v7a arm64-v8a))
LOCAL_SRC_FILES += \
libpng/arm/arm_init.c \
libpng/arm/filter_neon_intrinsics.c \
libpng/arm/filter_neon.S
endif
LOCAL_STATIC_LIBRARIES := libz
include $(BUILD_STATIC_LIBRARY)
##################################################
### libgif ###
##################################################
include $(CLEAR_VARS)
LOCAL_MODULE := libgif
LOCAL_SRC_FILES := \
giflib/dgif_lib.c \
giflib/gif_hash.c \
giflib/gifalloc.c
LOCAL_CFLAGS := -O3 -DANDROID
include $(BUILD_STATIC_LIBRARY)
##################################################
### libimage ###
##################################################
include $(CLEAR_VARS)
#RELEASE_FLAG := true
LOCAL_MODULE := libimage
LOCAL_SRC_FILES := \
image.c \
jpeg.c \
png.c \
gif.c \
utils.c
LOCAL_CFLAGS := -O3 -DANDROID
LOCAL_STATIC_LIBRARIES := libjpeg-turbo libpng libgif
LOCAL_LDLIBS := -lGLESv2
ifdef RELEASE_FLAG
LOCAL_CFLAGS += -DRELEASE
else
LOCAL_LDLIBS += -llog
endif
include $(BUILD_SHARED_LIBRARY)