diff --git a/Android.mk b/Android.mk index b0bec4b4..15b00873 100644 --- a/Android.mk +++ b/Android.mk @@ -1,6 +1,13 @@ -LOCAL_PATH:= $(call my-dir) +LOCAL_PATH := $(call my-dir) + +WEBP_CFLAGS := -Wall -DANDROID -DHAVE_MALLOC_H -DHAVE_PTHREAD -DWEBP_USE_THREAD + +ifeq ($(APP_OPTIM),release) + WEBP_CFLAGS += -finline-functions -frename-registers -ffast-math -s +endif include $(CLEAR_VARS) + LOCAL_SRC_FILES := \ src/dec/alpha.c \ src/dec/buffer.c \ @@ -52,13 +59,12 @@ LOCAL_SRC_FILES := \ src/utils/thread.c \ src/utils/utils.c \ -LOCAL_CFLAGS := -Wall -DANDROID -DHAVE_MALLOC_H -DHAVE_PTHREAD \ - -DWEBP_USE_THREAD \ - -finline-functions -frename-registers -ffast-math \ - -s -fomit-frame-pointer -Isrc/webp - +LOCAL_CFLAGS := $(WEBP_CFLAGS) LOCAL_C_INCLUDES += $(LOCAL_PATH)/src +# prefer arm over thumb mode for performance gains +LOCAL_ARM_MODE := arm + ifeq ($(TARGET_ARCH_ABI),armeabi-v7a) # Setting LOCAL_ARM_NEON will enable -mfpu=neon which may cause illegal # instructions to be generated for armv7a code. Instead target the neon code @@ -69,8 +75,22 @@ ifeq ($(TARGET_ARCH_ABI),armeabi-v7a) endif LOCAL_STATIC_LIBRARIES := cpufeatures -LOCAL_MODULE:= webp +LOCAL_MODULE := webp include $(BUILD_STATIC_LIBRARY) +include $(CLEAR_VARS) + +LOCAL_SRC_FILES := \ + examples/dwebp.c \ + examples/example_util.c \ + +LOCAL_CFLAGS := $(WEBP_CFLAGS) +LOCAL_C_INCLUDES := $(LOCAL_PATH)/src +LOCAL_STATIC_LIBRARIES := webp + +LOCAL_MODULE := dwebp + +include $(BUILD_EXECUTABLE) + $(call import-module,android/cpufeatures)