Android.mk 7.24 KB
Newer Older
Mike Reed's avatar
Mike Reed committed
1
BASE_PATH := $(call my-dir)
2 3 4
LOCAL_PATH:= $(call my-dir)

#############################################################
Mike Reed's avatar
Mike Reed committed
5
#   build the skia+fretype+png+jpeg+zlib+gif library
6 7 8 9 10 11
#

include $(CLEAR_VARS)

LOCAL_ARM_MODE := arm

12 13 14 15 16 17
# need a flag to tell the C side when we're on devices with large memory
# budgets (i.e. larger than the low-end devices that initially shipped)
ifeq ($(ARCH_ARM_HAVE_VFP),true)
    LOCAL_CFLAGS += -DANDROID_LARGE_MEMORY_DEVICE
endif

18 19 20
# enable this if we turn on SK_DEBUG, otherwise we exceed our prelink budget
#LOCAL_PRELINK_MODULE := false

Mike Reed's avatar
Mike Reed committed
21
ifneq ($(ARCH_ARM_HAVE_VFP),true)
22 23 24
	LOCAL_CFLAGS += -DSK_SOFTWARE_FLOAT
endif

25 26 27 28
ifeq ($(ARCH_ARM_HAVE_NEON),true)
	LOCAL_CFLAGS += -D__ARM_HAVE_NEON
endif

29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
LOCAL_SRC_FILES:= \
	src/core/Sk64.cpp \
	src/core/SkBuffer.cpp \
	src/core/SkChunkAlloc.cpp \
	src/core/SkCordic.cpp \
	src/core/SkDebug.cpp \
	src/core/SkFloatBits.cpp \
	src/core/SkMath.cpp \
	src/core/SkMatrix.cpp \
	src/core/SkMemory_stdlib.cpp \
	src/core/SkPoint.cpp \
	src/core/SkRect.cpp \
	src/core/SkRegion.cpp \
	src/core/SkString.cpp \
	src/core/SkUtils.cpp \
Mike Reed's avatar
Mike Reed committed
44
	src/ports/SkDebug_android.cpp \
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
	src/effects/Sk1DPathEffect.cpp \
	src/effects/Sk2DPathEffect.cpp \
	src/effects/SkAvoidXfermode.cpp \
	src/effects/SkBlurDrawLooper.cpp \
	src/effects/SkBlurMask.cpp \
	src/effects/SkBlurMaskFilter.cpp \
	src/effects/SkColorFilters.cpp \
	src/effects/SkColorMatrixFilter.cpp \
	src/effects/SkCornerPathEffect.cpp \
	src/effects/SkDashPathEffect.cpp \
	src/effects/SkDiscretePathEffect.cpp \
	src/effects/SkEmbossMask.cpp \
	src/effects/SkEmbossMaskFilter.cpp \
	src/effects/SkGradientShader.cpp \
	src/effects/SkLayerDrawLooper.cpp \
	src/effects/SkLayerRasterizer.cpp \
	src/effects/SkPaintFlagsDrawFilter.cpp \
	src/effects/SkPixelXorXfermode.cpp \
Mike Reed's avatar
Mike Reed committed
63
	src/effects/SkPorterDuff.cpp \
Mike Reed's avatar
Mike Reed committed
64
	src/effects/SkTableMaskFilter.cpp \
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
	src/effects/SkTransparentShader.cpp \
	src/images/bmpdecoderhelper.cpp \
	src/images/SkFDStream.cpp \
	src/images/SkFlipPixelRef.cpp \
	src/images/SkImageDecoder.cpp \
	src/images/SkImageDecoder_libbmp.cpp \
	src/images/SkImageDecoder_libgif.cpp \
	src/images/SkImageDecoder_libjpeg.cpp \
	src/images/SkImageDecoder_libpng.cpp \
	src/images/SkImageDecoder_libico.cpp \
	src/images/SkImageDecoder_wbmp.cpp \
	src/images/SkImageEncoder.cpp \
	src/images/SkImageRef.cpp \
	src/images/SkImageRef_GlobalPool.cpp \
	src/images/SkImageRefPool.cpp \
80
	src/images/SkJpegUtility.cpp \
81
	src/images/SkBitmapRegionDecoder.cpp \
82 83 84 85 86 87 88 89 90 91
	src/images/SkMovie.cpp \
	src/images/SkMovie_gif.cpp \
	src/images/SkPageFlipper.cpp \
	src/images/SkScaledBitmapSampler.cpp \
	src/images/SkCreateRLEPixelRef.cpp \
	src/images/SkImageDecoder_Factory.cpp \
	src/images/SkImageEncoder_Factory.cpp \
	src/ports/SkFontHost_android.cpp \
	src/ports/SkFontHost_gamma.cpp \
	src/ports/SkFontHost_FreeType.cpp \
92
	src/ports/SkFontHost_tables.cpp \
93 94 95 96 97 98 99 100 101 102 103 104
	src/ports/SkGlobals_global.cpp \
	src/ports/SkImageRef_ashmem.cpp \
	src/ports/SkOSFile_stdio.cpp \
	src/ports/SkTime_Unix.cpp \
	src/core/SkAlphaRuns.cpp \
	src/core/SkBitmap.cpp \
	src/core/SkBitmap_scroll.cpp \
	src/core/SkBitmapProcShader.cpp \
	src/core/SkBitmapProcState.cpp \
	src/core/SkBitmapProcState_matrixProcs.cpp \
	src/core/SkBitmapSampler.cpp \
	src/core/SkBlitRow_D16.cpp \
105
	src/core/SkBlitRow_D32.cpp \
106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
	src/core/SkBlitRow_D4444.cpp \
	src/core/SkBlitter.cpp \
	src/core/SkBlitter_4444.cpp \
	src/core/SkBlitter_A1.cpp \
	src/core/SkBlitter_A8.cpp \
	src/core/SkBlitter_ARGB32.cpp \
	src/core/SkBlitter_RGB16.cpp \
	src/core/SkBlitter_Sprite.cpp \
	src/core/SkCanvas.cpp \
	src/core/SkColor.cpp \
	src/core/SkColorFilter.cpp \
	src/core/SkColorTable.cpp \
	src/core/SkComposeShader.cpp \
	src/core/SkDeque.cpp \
	src/core/SkDevice.cpp \
	src/core/SkDither.cpp \
	src/core/SkDraw.cpp \
	src/core/SkEdge.cpp \
124 125
	src/core/SkEdgeBuilder.cpp \
	src/core/SkEdgeClipper.cpp \
126 127 128 129 130 131
	src/core/SkFilterProc.cpp \
	src/core/SkFlattenable.cpp \
	src/core/SkGeometry.cpp \
	src/core/SkGlobals.cpp \
	src/core/SkGlyphCache.cpp \
	src/core/SkGraphics.cpp \
132
	src/core/SkLineClipper.cpp \
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
	src/core/SkMMapStream.cpp \
	src/core/SkMask.cpp \
	src/core/SkMaskFilter.cpp \
	src/core/SkPackBits.cpp \
	src/core/SkPaint.cpp \
	src/core/SkPath.cpp \
	src/core/SkPathEffect.cpp \
	src/core/SkPathHeap.cpp \
	src/core/SkPathMeasure.cpp \
	src/core/SkPicture.cpp \
	src/core/SkPictureFlat.cpp \
	src/core/SkPicturePlayback.cpp \
	src/core/SkPictureRecord.cpp \
	src/core/SkPixelRef.cpp \
	src/core/SkProcSpriteBlitter.cpp \
	src/core/SkPtrRecorder.cpp \
	src/core/SkQuadClipper.cpp \
	src/core/SkRasterizer.cpp \
	src/core/SkRefCnt.cpp \
	src/core/SkRegion_path.cpp \
	src/core/SkScalerContext.cpp \
	src/core/SkScan.cpp \
	src/core/SkScan_AntiPath.cpp \
	src/core/SkScan_Antihair.cpp \
	src/core/SkScan_Hairline.cpp \
	src/core/SkScan_Path.cpp \
	src/core/SkShader.cpp \
Mike Reed's avatar
Mike Reed committed
160
	src/core/SkShape.cpp \
161 162 163 164 165 166 167 168 169 170
	src/core/SkSpriteBlitter_ARGB32.cpp \
	src/core/SkSpriteBlitter_RGB16.cpp \
	src/core/SkStream.cpp \
	src/core/SkStroke.cpp \
	src/core/SkStrokerPriv.cpp \
	src/core/SkTSearch.cpp \
	src/core/SkTypeface.cpp \
	src/core/SkUnPreMultiply.cpp \
	src/core/SkXfermode.cpp \
	src/core/SkWriter32.cpp \
Mike Reed's avatar
Mike Reed committed
171
	src/utils/SkBoundaryPatch.cpp \
172 173 174
	src/utils/SkCamera.cpp \
	src/utils/SkDumpCanvas.cpp \
	src/utils/SkInterpolator.cpp \
Mike Reed's avatar
Mike Reed committed
175
	src/utils/SkLayer.cpp \
Mike Reed's avatar
Mike Reed committed
176
	src/utils/SkMeshUtils.cpp \
177 178 179
	src/utils/SkNinePatch.cpp \
	src/utils/SkProxyCanvas.cpp

Marco Nelissen's avatar
Marco Nelissen committed
180 181
ifeq ($(TARGET_ARCH),arm)
LOCAL_SRC_FILES += \
182 183
	src/opts/SkBlitRow_opts_arm.cpp \
	src/opts/SkBitmapProcState_opts_arm.cpp
Marco Nelissen's avatar
Marco Nelissen committed
184 185
else
LOCAL_SRC_FILES += \
186 187
	src/opts/SkBlitRow_opts_none.cpp \
	src/opts/SkBitmapProcState_opts_none.cpp
Marco Nelissen's avatar
Marco Nelissen committed
188 189
endif

190 191 192 193
# these are for emoji support, needed by webkit
LOCAL_SRC_FILES += \
	emoji/EmojiFont.cpp

194 195
LOCAL_SHARED_LIBRARIES := \
	libcutils \
Wei-Ta Chen's avatar
Wei-Ta Chen committed
196 197
        libemoji \
	libjpeg \
198 199 200 201 202 203
	libutils \
	libz

LOCAL_STATIC_LIBRARIES := \
	libft2 \
	libpng \
Wei-Ta Chen's avatar
Wei-Ta Chen committed
204
	libgif
205 206 207 208 209 210 211 212 213 214 215 216

LOCAL_C_INCLUDES += \
	$(LOCAL_PATH)/src/core \
	$(LOCAL_PATH)/include/core \
	$(LOCAL_PATH)/include/effects \
	$(LOCAL_PATH)/include/images \
	$(LOCAL_PATH)/include/utils \
	$(LOCAL_PATH)/include/xml \
	external/freetype/include \
	external/zlib \
	external/libpng \
	external/giflib \
217 218
	external/jpeg \
    frameworks/opt/emoji
219 220 221 222 223 224 225

ifeq ($(NO_FALLBACK_FONT),true)
	LOCAL_CFLAGS += -DNO_FALLBACK_FONT
endif

LOCAL_LDLIBS += -lpthread

Mike Reed's avatar
Mike Reed committed
226
LOCAL_MODULE:= libskia
227 228 229 230 231 232 233 234 235 236 237

include $(BUILD_SHARED_LIBRARY)

#############################################################
# Build the skia-opengl glue library
#

include $(CLEAR_VARS)

LOCAL_ARM_MODE := arm

Mike Reed's avatar
Mike Reed committed
238
ifneq ($(ARCH_ARM_HAVE_VFP),true)
239 240 241
	LOCAL_CFLAGS += -DSK_SOFTWARE_FLOAT
endif

242 243 244 245
ifeq ($(ARCH_ARM_HAVE_NEON),true)
	LOCAL_CFLAGS += -D__ARM_HAVE_NEON
endif

246 247 248 249 250 251 252 253 254 255 256
LOCAL_SRC_FILES:= \
	src/gl/SkGL.cpp \
	src/gl/SkGLCanvas.cpp \
	src/gl/SkGLDevice.cpp \
	src/gl/SkGLDevice_SWLayer.cpp \
	src/gl/SkGLTextCache.cpp \
	src/gl/SkTextureCache.cpp

LOCAL_SHARED_LIBRARIES := \
	libcutils \
	libutils \
Mike Reed's avatar
Mike Reed committed
257
	libskia \
258 259 260 261 262 263 264 265 266 267 268 269 270 271
	libGLESv1_CM

LOCAL_C_INCLUDES += \
	$(LOCAL_PATH)/src/core \
	$(LOCAL_PATH)/src/gl \
	$(LOCAL_PATH)/include/core \
	$(LOCAL_PATH)/include/effects \
	$(LOCAL_PATH)/include/utils

LOCAL_LDLIBS += -lpthread

LOCAL_MODULE:= libskiagl

include $(BUILD_SHARED_LIBRARY)
272 273

#############################################################
Mike Reed's avatar
Mike Reed committed
274
# Build the skia tools
275 276
#

Mike Reed's avatar
Mike Reed committed
277 278 279 280 281
# benchmark (timings)
include $(BASE_PATH)/bench/Android.mk

# golden-master (fidelity / regression test)
include $(BASE_PATH)/gm/Android.mk
282 283 284

# unit-tests
include $(BASE_PATH)/tests/Android.mk