1893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_PATH:= $(call my-dir) 2893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 3893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project# We need to build this for both the device (as a shared library) 4893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project# and the host (as a static library for tools to use). 5893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 6893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectcommon_SRC_FILES := \ 7893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project png.c \ 8893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngerror.c \ 9893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngget.c \ 10893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngmem.c \ 11893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngpread.c \ 12893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngread.c \ 13893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngrio.c \ 14893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngrtran.c \ 15893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngrutil.c \ 16893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngset.c \ 17893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngtrans.c \ 18893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngwio.c \ 19893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngwrite.c \ 20893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project pngwtran.c \ 21b50c217251b086440efcdb273c22f86a06c80cbaChris Craik pngwutil.c \ 22893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 23282702a927196cccbdf7ada46e7243df14638a35sireeshifeq ($(ARCH_ARM_HAVE_NEON),true) 24b43974131d78bade0d174820aba22a97d986086aRiley Andrewsmy_cflags_arm := -DPNG_ARM_NEON_OPT=2 25282702a927196cccbdf7ada46e7243df14638a35sireeshendif 26bdcf23a86887898898df425b4ef282dc3f035ddfStephen Hines 27b43974131d78bade0d174820aba22a97d986086aRiley Andrewsmy_cflags_arm64 := -DPNG_ARM_NEON_OPT=2 2843608cfba1024f3d1bfe3d0b4db58adece411cd9sireesh 29bdcf23a86887898898df425b4ef282dc3f035ddfStephen Hines# BUG: http://llvm.org/PR19472 - SLP vectorization (on ARM at least) crashes 30bdcf23a86887898898df425b4ef282dc3f035ddfStephen Hines# when we can't lower a vectorized bswap. 31bdcf23a86887898898df425b4ef282dc3f035ddfStephen Hinesmy_cflags_arm += -fno-slp-vectorize 32bdcf23a86887898898df425b4ef282dc3f035ddfStephen Hines 333446b93c40f62058a34e8ffee6fe44962cfa0d15Ying Wangmy_src_files_arm := \ 34b478e66e7c2621eef5f465e4629ce642db00716bSireesh Tripurari arm/arm_init.c \ 35b478e66e7c2621eef5f465e4629ce642db00716bSireesh Tripurari arm/filter_neon.S \ 36b478e66e7c2621eef5f465e4629ce642db00716bSireesh Tripurari arm/filter_neon_intrinsics.c 37b50c217251b086440efcdb273c22f86a06c80cbaChris Craik 38b50c217251b086440efcdb273c22f86a06c80cbaChris Craik 39b50c217251b086440efcdb273c22f86a06c80cbaChris Craikcommon_CFLAGS := -std=gnu89 #-fvisibility=hidden ## -fomit-frame-pointer 40671f9cd672375a3ceb873a4982744aa730ad1bafRaphael Moll 41893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project# For the host 42893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project# ===================================================== 43893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 44893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectinclude $(CLEAR_VARS) 45893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_SRC_FILES := $(common_SRC_FILES) 46893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_CFLAGS += $(common_CFLAGS) 4743d98c911f71b24901570feb85cb1f8fd7f70fe5Tim MurrayLOCAL_ASFLAGS += $(common_ASFLAGS) 48b74a801b7043a266412300a9382debe08b154e27Trevor DrakeLOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH) 494e7f18a26cbb842e7fda3e9bd9c1378a5a67e210Narayan KamathLOCAL_STATIC_LIBRARIES := libz 50893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_MODULE:= libpng 51893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectinclude $(BUILD_HOST_STATIC_LIBRARY) 52893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 53893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 54b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines# For the device (static) 55b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines# ===================================================== 56b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines 57b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hinesinclude $(CLEAR_VARS) 58b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_CLANG := true 59b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_SRC_FILES := $(common_SRC_FILES) 60b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_CFLAGS += $(common_CFLAGS) -ftrapv 613446b93c40f62058a34e8ffee6fe44962cfa0d15Ying WangLOCAL_CFLAGS_arm := $(my_cflags_arm) 6243d98c911f71b24901570feb85cb1f8fd7f70fe5Tim MurrayLOCAL_ASFLAGS += $(common_ASFLAGS) 633446b93c40f62058a34e8ffee6fe44962cfa0d15Ying WangLOCAL_SRC_FILES_arm := $(my_src_files_arm) 6443608cfba1024f3d1bfe3d0b4db58adece411cd9sireeshLOCAL_CFLAGS_arm64 := $(my_cflags_arm64) 6543608cfba1024f3d1bfe3d0b4db58adece411cd9sireeshLOCAL_SRC_FILES_arm64 := $(my_src_files_arm) 661afb0701ab5098f30919edfcf8f89ce012380261Dan AlbertLOCAL_ADDRESS_SANITIZER := false 67b74a801b7043a266412300a9382debe08b154e27Trevor DrakeLOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH) 68b74a801b7043a266412300a9382debe08b154e27Trevor DrakeLOCAL_SHARED_LIBRARIES := libz 69b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_MODULE:= libpng 70b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hinesinclude $(BUILD_STATIC_LIBRARY) 71b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines 72b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines# For the device (shared) 73893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project# ===================================================== 74893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 75893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectinclude $(CLEAR_VARS) 76deba48b32d593851724bdce88dd9b754c4722645Stephen HinesLOCAL_CLANG := true 77893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_SRC_FILES := $(common_SRC_FILES) 7814cab8628b01f030647fb0a42dac7a5c031bb50eGeremy CondraLOCAL_CFLAGS += $(common_CFLAGS) -ftrapv 793446b93c40f62058a34e8ffee6fe44962cfa0d15Ying WangLOCAL_CFLAGS_arm := $(my_cflags_arm) 8043d98c911f71b24901570feb85cb1f8fd7f70fe5Tim MurrayLOCAL_ASFLAGS += $(common_ASFLAGS) 813446b93c40f62058a34e8ffee6fe44962cfa0d15Ying WangLOCAL_SRC_FILES_arm := $(my_src_files_arm) 8243608cfba1024f3d1bfe3d0b4db58adece411cd9sireeshLOCAL_CFLAGS_arm64 := $(my_cflags_arm64) 8343608cfba1024f3d1bfe3d0b4db58adece411cd9sireeshLOCAL_SRC_FILES_arm64 := $(my_src_files_arm) 84b74a801b7043a266412300a9382debe08b154e27Trevor DrakeLOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH) 85b74a801b7043a266412300a9382debe08b154e27Trevor DrakeLOCAL_SHARED_LIBRARIES := libz 86893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_MODULE:= libpng 87b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hinesinclude $(BUILD_SHARED_LIBRARY) 88893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 8914cab8628b01f030647fb0a42dac7a5c031bb50eGeremy Condra# For testing 9014cab8628b01f030647fb0a42dac7a5c031bb50eGeremy Condra# ===================================================== 91893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project 9214cab8628b01f030647fb0a42dac7a5c031bb50eGeremy Condrainclude $(CLEAR_VARS) 93b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_CLANG := true 94b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_SRC_FILES:= pngtest.c 9514cab8628b01f030647fb0a42dac7a5c031bb50eGeremy CondraLOCAL_MODULE := pngtest 96b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_SHARED_LIBRARIES:= libpng libz 9714cab8628b01f030647fb0a42dac7a5c031bb50eGeremy CondraLOCAL_MODULE_TAGS := debug 9814cab8628b01f030647fb0a42dac7a5c031bb50eGeremy Condrainclude $(BUILD_EXECUTABLE) 99