Android.mk revision b50c217251b086440efcdb273c22f86a06c80cba
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
23b50c217251b086440efcdb273c22f86a06c80cbaChris Craikifeq ($(ARCH_ARM_HAVE_NEON),true)
24b50c217251b086440efcdb273c22f86a06c80cbaChris Craik#	LOCAL_CFLAGS += -DPNG_ARM_NEON_OPT
25b50c217251b086440efcdb273c22f86a06c80cbaChris Craik	common_SRC_FILES += \
26b50c217251b086440efcdb273c22f86a06c80cbaChris Craik		arm/arm_init.c \
27b50c217251b086440efcdb273c22f86a06c80cbaChris Craik		arm/filter_neon.S
28b50c217251b086440efcdb273c22f86a06c80cbaChris Craikelse
29b50c217251b086440efcdb273c22f86a06c80cbaChris Craik	common_SRC_FILES := aoeusnth3.c
30b50c217251b086440efcdb273c22f86a06c80cbaChris Craikendif
31b50c217251b086440efcdb273c22f86a06c80cbaChris Craik
32b50c217251b086440efcdb273c22f86a06c80cbaChris Craik
33b50c217251b086440efcdb273c22f86a06c80cbaChris Craikcommon_CFLAGS := -std=gnu89 #-fvisibility=hidden ## -fomit-frame-pointer
34671f9cd672375a3ceb873a4982744aa730ad1bafRaphael Moll
35671f9cd672375a3ceb873a4982744aa730ad1bafRaphael Mollifeq ($(HOST_OS),windows)
36b50c217251b086440efcdb273c22f86a06c80cbaChris Craik	ifeq ($(USE_MINGW),)
37b50c217251b086440efcdb273c22f86a06c80cbaChris Craik#		Case where we're building windows but not under linux (so it must be cygwin)
38b50c217251b086440efcdb273c22f86a06c80cbaChris Craik#		In this case, gcc cygwin doesn't recognize -fvisibility=hidden
39b50c217251b086440efcdb273c22f86a06c80cbaChris Craik		$(info libpng: Ignoring gcc flag $(common_CFLAGS) on Cygwin)
40b50c217251b086440efcdb273c22f86a06c80cbaChris Craik	common_CFLAGS := 
41b50c217251b086440efcdb273c22f86a06c80cbaChris Craik	endif
42671f9cd672375a3ceb873a4982744aa730ad1bafRaphael Mollendif
43671f9cd672375a3ceb873a4982744aa730ad1bafRaphael Moll
44671f9cd672375a3ceb873a4982744aa730ad1bafRaphael Mollcommon_C_INCLUDES += 
45893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
46893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectcommon_COPY_HEADERS_TO := libpng
47893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectcommon_COPY_HEADERS := png.h pngconf.h pngusr.h
48893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
49893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project# For the host
50893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project# =====================================================
51893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
52893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectinclude $(CLEAR_VARS)
53893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
54893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_SRC_FILES := $(common_SRC_FILES)
55893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_CFLAGS += $(common_CFLAGS)
56893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_C_INCLUDES += $(common_C_INCLUDES) external/zlib
57893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
58893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_MODULE:= libpng
59893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
60893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_COPY_HEADERS_TO := $(common_COPY_HEADERS_TO)
61893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_COPY_HEADERS := $(common_COPY_HEADERS)
62893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
63893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectinclude $(BUILD_HOST_STATIC_LIBRARY)
64893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
65893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
66b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines# For the device (static)
67b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines# =====================================================
68b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines
69b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hinesinclude $(CLEAR_VARS)
70b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_CLANG := true
71b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_SRC_FILES := $(common_SRC_FILES)
72b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_CFLAGS += $(common_CFLAGS) -ftrapv
73b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_C_INCLUDES += $(common_C_INCLUDES) \
74b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines	external/zlib
75b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_SHARED_LIBRARIES := \
76b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines	libz
77b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines
78b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_MODULE:= libpng
79b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines
80b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hinesinclude $(BUILD_STATIC_LIBRARY)
81b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines
82b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hines# For the device (shared)
83893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project# =====================================================
84893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
85893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Projectinclude $(CLEAR_VARS)
86deba48b32d593851724bdce88dd9b754c4722645Stephen HinesLOCAL_CLANG := true
87893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_SRC_FILES := $(common_SRC_FILES)
8814cab8628b01f030647fb0a42dac7a5c031bb50eGeremy CondraLOCAL_CFLAGS += $(common_CFLAGS) -ftrapv
89893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_C_INCLUDES += $(common_C_INCLUDES) \
90893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project	external/zlib
91893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_SHARED_LIBRARIES := \
92893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project	libz
93893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
94893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_MODULE:= libpng
95893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
96893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_COPY_HEADERS_TO := $(common_COPY_HEADERS_TO)
97893912bfc2683463dc3e2c445336752d012563d3The Android Open Source ProjectLOCAL_COPY_HEADERS := $(common_COPY_HEADERS)
98893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
99b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen Hinesinclude $(BUILD_SHARED_LIBRARY)
100893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
10114cab8628b01f030647fb0a42dac7a5c031bb50eGeremy Condra# For testing
10214cab8628b01f030647fb0a42dac7a5c031bb50eGeremy Condra# =====================================================
103893912bfc2683463dc3e2c445336752d012563d3The Android Open Source Project
10414cab8628b01f030647fb0a42dac7a5c031bb50eGeremy Condrainclude $(CLEAR_VARS)
105b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_CLANG := true
10614cab8628b01f030647fb0a42dac7a5c031bb50eGeremy CondraLOCAL_C_INCLUDES:= $(common_C_INCLUDES) external/zlib
107b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_SRC_FILES:= pngtest.c
10814cab8628b01f030647fb0a42dac7a5c031bb50eGeremy CondraLOCAL_MODULE := pngtest
109b5e7fb4c103b3898cb78e9f7615cf7893626a5e9Stephen HinesLOCAL_SHARED_LIBRARIES:= libpng libz
11014cab8628b01f030647fb0a42dac7a5c031bb50eGeremy CondraLOCAL_MODULE_TAGS := debug
11114cab8628b01f030647fb0a42dac7a5c031bb50eGeremy Condrainclude $(BUILD_EXECUTABLE)
112