1
2###############################################################################
3#
4# THIS FILE IS AUTOGENERATED BY GYP_TO_ANDROID.PY. DO NOT EDIT.
5#
6# For bugs, please contact scroggo@google.com or djsollen@google.com
7#
8###############################################################################
9
10BASE_PATH := $(call my-dir)
11LOCAL_PATH:= $(call my-dir)
12
13###############################################################################
14#
15# PROBLEMS WITH SKIA DEBUGGING?? READ THIS...
16#
17# The debug build results in changes to the Skia headers. This means that those
18# using libskia must also be built with the debug version of the Skia headers.
19# There are a few scenarios where this comes into play:
20#
21# (1) You're building debug code that depends on libskia.
22#   (a) If libskia is built in release, then define SK_RELEASE when building
23#       your sources.
24#   (b) If libskia is built with debugging (see step 2), then no changes are
25#       needed since your sources and libskia have been built with SK_DEBUG.
26# (2) You're building libskia in debug mode.
27#   (a) RECOMMENDED: You can build the entire system in debug mode. Do this by
28#       updating your build/core/config.mk to include -DSK_DEBUG on the line
29#       that defines COMMON_GLOBAL_CFLAGS
30#   (b) You can update all the users of libskia to define SK_DEBUG when they are
31#       building their sources.
32#
33# NOTE: If neither SK_DEBUG or SK_RELEASE are defined then Skia checks NDEBUG to
34#       determine which build type to use.
35###############################################################################
36
37###############################################################################
38# STATIC LIBRARY
39#
40# This target is only to be used internally for only one of two purposes...
41#  (1) statically linking into testing frameworks
42#  (2) as an inclusion target for the libskia.so shared library
43###############################################################################
44
45include $(CLEAR_VARS)
46LOCAL_FDO_SUPPORT := true
47ifneq ($(strip $(TARGET_FDO_CFLAGS)),)
48	# This should be the last -Oxxx specified in LOCAL_CFLAGS
49	LOCAL_CFLAGS += -O2
50endif
51
52LOCAL_ARM_MODE := thumb
53# used for testing
54#LOCAL_CFLAGS += -g -O0
55
56LOCAL_CFLAGS += \
57	-fPIC \
58	-Wno-unused-parameter \
59	-U_FORTIFY_SOURCE \
60	-D_FORTIFY_SOURCE=1 \
61	-DSKIA_IMPLEMENTATION=1 \
62	-Wno-clobbered -Wno-error \
63	-fexceptions
64
65LOCAL_CPPFLAGS := \
66	-std=c++11 \
67	-fno-threadsafe-statics
68
69LOCAL_SRC_FILES := \
70	src/codec/SkAndroidCodec.cpp \
71	src/codec/SkBmpCodec.cpp \
72	src/codec/SkBmpMaskCodec.cpp \
73	src/codec/SkBmpRLECodec.cpp \
74	src/codec/SkBmpStandardCodec.cpp \
75	src/codec/SkCodec.cpp \
76	src/codec/SkGifCodec.cpp \
77	src/codec/SkIcoCodec.cpp \
78	src/codec/SkJpegCodec.cpp \
79	src/codec/SkJpegDecoderMgr.cpp \
80	src/codec/SkJpegUtility_codec.cpp \
81	src/codec/SkMaskSwizzler.cpp \
82	src/codec/SkMasks.cpp \
83	src/codec/SkPngCodec.cpp \
84	src/codec/SkSampler.cpp \
85	src/codec/SkSampledCodec.cpp \
86	src/codec/SkSwizzler.cpp \
87	src/codec/SkWbmpCodec.cpp \
88	src/codec/SkWebpAdapterCodec.cpp \
89	src/codec/SkWebpCodec.cpp \
90	src/codec/SkCodecImageGenerator.cpp \
91	src/ports/SkImageGenerator_skia.cpp \
92	src/android/SkBitmapRegionCanvas.cpp \
93	src/android/SkBitmapRegionCodec.cpp \
94	src/android/SkBitmapRegionDecoder.cpp \
95	src/c/sk_paint.cpp \
96	src/c/sk_surface.cpp \
97	src/core/SkAAClip.cpp \
98	src/core/SkAnnotation.cpp \
99	src/core/SkAdvancedTypefaceMetrics.cpp \
100	src/core/SkAlphaRuns.cpp \
101	src/core/SkBBHFactory.cpp \
102	src/core/SkBigPicture.cpp \
103	src/core/SkBitmap.cpp \
104	src/core/SkBitmapCache.cpp \
105	src/core/SkBitmapController.cpp \
106	src/core/SkBitmapDevice.cpp \
107	src/core/SkBitmapHeap.cpp \
108	src/core/SkBitmapProcShader.cpp \
109	src/core/SkBitmapProcState.cpp \
110	src/core/SkBitmapProcState_matrixProcs.cpp \
111	src/core/SkBitmapProvider.cpp \
112	src/core/SkBitmapScaler.cpp \
113	src/core/SkBlitMask_D32.cpp \
114	src/core/SkBlitRow_D16.cpp \
115	src/core/SkBlitRow_D32.cpp \
116	src/core/SkBlitter.cpp \
117	src/core/SkBlitter_A8.cpp \
118	src/core/SkBlitter_ARGB32.cpp \
119	src/core/SkBlitter_PM4f.cpp \
120	src/core/SkBlitter_RGB16.cpp \
121	src/core/SkBlitter_Sprite.cpp \
122	src/core/SkBuffer.cpp \
123	src/core/SkCachedData.cpp \
124	src/core/SkCanvas.cpp \
125	src/core/SkChecksum.cpp \
126	src/core/SkChunkAlloc.cpp \
127	src/core/SkClipStack.cpp \
128	src/core/SkColor.cpp \
129	src/core/SkColorFilter.cpp \
130	src/core/SkColorFilterShader.cpp \
131	src/core/SkColorMatrixFilterRowMajor255.cpp \
132	src/core/SkColorSpace.cpp \
133	src/core/SkColorTable.cpp \
134	src/core/SkComposeShader.cpp \
135	src/core/SkConfig8888.cpp \
136	src/core/SkConvolver.cpp \
137	src/core/SkCubicClipper.cpp \
138	src/core/SkData.cpp \
139	src/core/SkDataTable.cpp \
140	src/core/SkDebug.cpp \
141	src/core/SkDeque.cpp \
142	src/core/SkDevice.cpp \
143	src/core/SkDeviceLooper.cpp \
144	src/core/SkDeviceProfile.cpp \
145	src/lazy/SkDiscardableMemoryPool.cpp \
146	src/lazy/SkDiscardablePixelRef.cpp \
147	src/core/SkDistanceFieldGen.cpp \
148	src/core/SkDither.cpp \
149	src/core/SkDraw.cpp \
150	src/core/SkDrawable.cpp \
151	src/core/SkDrawLooper.cpp \
152	src/core/SkEdgeBuilder.cpp \
153	src/core/SkEdgeClipper.cpp \
154	src/core/SkEdge.cpp \
155	src/core/SkError.cpp \
156	src/core/SkFilterProc.cpp \
157	src/core/SkFlattenable.cpp \
158	src/core/SkFlattenableSerialization.cpp \
159	src/core/SkFloatBits.cpp \
160	src/core/SkFont.cpp \
161	src/core/SkFontHost.cpp \
162	src/core/SkFontMgr.cpp \
163	src/core/SkFontStyle.cpp \
164	src/core/SkFontDescriptor.cpp \
165	src/core/SkFontStream.cpp \
166	src/core/SkGeometry.cpp \
167	src/core/SkGlobalInitialization_core.cpp \
168	src/core/SkGlyphCache.cpp \
169	src/core/SkGraphics.cpp \
170	src/core/SkHalf.cpp \
171	src/core/SkImageFilter.cpp \
172	src/core/SkImageInfo.cpp \
173	src/core/SkImageCacherator.cpp \
174	src/core/SkImageGenerator.cpp \
175	src/core/SkLightingShader.cpp \
176	src/core/SkLinearBitmapPipeline.cpp \
177	src/core/SkLineClipper.cpp \
178	src/core/SkLocalMatrixImageFilter.cpp \
179	src/core/SkLocalMatrixShader.cpp \
180	src/core/SkMallocPixelRef.cpp \
181	src/core/SkMask.cpp \
182	src/core/SkMaskCache.cpp \
183	src/core/SkMaskFilter.cpp \
184	src/core/SkMaskGamma.cpp \
185	src/core/SkMath.cpp \
186	src/core/SkMatrix.cpp \
187	src/core/SkMatrixImageFilter.cpp \
188	src/core/SkMetaData.cpp \
189	src/core/SkMipMap.cpp \
190	src/core/SkMiniRecorder.cpp \
191	src/core/SkModeColorFilter.cpp \
192	src/core/SkMultiPictureDraw.cpp \
193	src/core/SkNinePatchIter.cpp \
194	src/core/SkOpts.cpp \
195	src/core/SkPaint.cpp \
196	src/core/SkPaintPriv.cpp \
197	src/core/SkPath.cpp \
198	src/core/SkPathEffect.cpp \
199	src/core/SkPathMeasure.cpp \
200	src/core/SkPathRef.cpp \
201	src/core/SkPicture.cpp \
202	src/core/SkPictureContentInfo.cpp \
203	src/core/SkPictureData.cpp \
204	src/core/SkPictureFlat.cpp \
205	src/core/SkPictureImageGenerator.cpp \
206	src/core/SkPicturePlayback.cpp \
207	src/core/SkPictureRecord.cpp \
208	src/core/SkPictureRecorder.cpp \
209	src/core/SkPictureShader.cpp \
210	src/core/SkPixelRef.cpp \
211	src/core/SkPixmap.cpp \
212	src/core/SkPoint.cpp \
213	src/core/SkPoint3.cpp \
214	src/core/SkPtrRecorder.cpp \
215	src/core/SkQuadClipper.cpp \
216	src/core/SkRasterClip.cpp \
217	src/core/SkRasterizer.cpp \
218	src/core/SkReadBuffer.cpp \
219	src/core/SkRecord.cpp \
220	src/core/SkRecords.cpp \
221	src/core/SkRecordDraw.cpp \
222	src/core/SkRecordOpts.cpp \
223	src/core/SkRecorder.cpp \
224	src/core/SkRect.cpp \
225	src/core/SkRefDict.cpp \
226	src/core/SkRegion.cpp \
227	src/core/SkRegion_path.cpp \
228	src/core/SkRemote.cpp \
229	src/core/SkResourceCache.cpp \
230	src/core/SkRRect.cpp \
231	src/core/SkRTree.cpp \
232	src/core/SkRWBuffer.cpp \
233	src/core/SkScalar.cpp \
234	src/core/SkScalerContext.cpp \
235	src/core/SkScan.cpp \
236	src/core/SkScan_AntiPath.cpp \
237	src/core/SkScan_Antihair.cpp \
238	src/core/SkScan_Hairline.cpp \
239	src/core/SkScan_Path.cpp \
240	src/core/SkSemaphore.cpp \
241	src/core/SkShader.cpp \
242	src/core/SkSharedMutex.cpp \
243	src/core/SkSpanProcs.cpp \
244	src/core/SkSpecialImage.cpp \
245	src/core/SkSpecialSurface.cpp \
246	src/core/SkSpinlock.cpp \
247	src/core/SkSpriteBlitter_ARGB32.cpp \
248	src/core/SkSpriteBlitter_RGB16.cpp \
249	src/core/SkSpriteBlitter4f.cpp \
250	src/core/SkStream.cpp \
251	src/core/SkString.cpp \
252	src/core/SkStringUtils.cpp \
253	src/core/SkStroke.cpp \
254	src/core/SkStrokeRec.cpp \
255	src/core/SkStrokerPriv.cpp \
256	src/core/SkTaskGroup.cpp \
257	src/core/SkTextBlob.cpp \
258	src/core/SkTime.cpp \
259	src/core/SkThreadID.cpp \
260	src/core/SkTLS.cpp \
261	src/core/SkTSearch.cpp \
262	src/core/SkTypeface.cpp \
263	src/core/SkTypefaceCache.cpp \
264	src/core/SkUnPreMultiply.cpp \
265	src/core/SkUtils.cpp \
266	src/core/SkValidatingReadBuffer.cpp \
267	src/core/SkVarAlloc.cpp \
268	src/core/SkVertState.cpp \
269	src/core/SkWriteBuffer.cpp \
270	src/core/SkWriter32.cpp \
271	src/core/SkXfermode.cpp \
272	src/core/SkXfermode4f.cpp \
273	src/core/SkXfermodeU64.cpp \
274	src/core/SkXfermodeInterpretation.cpp \
275	src/core/SkYUVPlanesCache.cpp \
276	src/doc/SkDocument.cpp \
277	src/image/SkImage.cpp \
278	src/image/SkImage_Generator.cpp \
279	src/image/SkImage_Raster.cpp \
280	src/image/SkImageShader.cpp \
281	src/image/SkSurface.cpp \
282	src/image/SkSurface_Raster.cpp \
283	src/pathops/SkAddIntersections.cpp \
284	src/pathops/SkDConicLineIntersection.cpp \
285	src/pathops/SkDCubicLineIntersection.cpp \
286	src/pathops/SkDCubicToQuads.cpp \
287	src/pathops/SkDLineIntersection.cpp \
288	src/pathops/SkDQuadLineIntersection.cpp \
289	src/pathops/SkIntersections.cpp \
290	src/pathops/SkOpAngle.cpp \
291	src/pathops/SkOpBuilder.cpp \
292	src/pathops/SkOpCoincidence.cpp \
293	src/pathops/SkOpContour.cpp \
294	src/pathops/SkOpCubicHull.cpp \
295	src/pathops/SkOpEdgeBuilder.cpp \
296	src/pathops/SkOpSegment.cpp \
297	src/pathops/SkOpSpan.cpp \
298	src/pathops/SkPathOpsCommon.cpp \
299	src/pathops/SkPathOpsConic.cpp \
300	src/pathops/SkPathOpsCubic.cpp \
301	src/pathops/SkPathOpsCurve.cpp \
302	src/pathops/SkPathOpsDebug.cpp \
303	src/pathops/SkPathOpsLine.cpp \
304	src/pathops/SkPathOpsOp.cpp \
305	src/pathops/SkPathOpsPoint.cpp \
306	src/pathops/SkPathOpsQuad.cpp \
307	src/pathops/SkPathOpsRect.cpp \
308	src/pathops/SkPathOpsSimplify.cpp \
309	src/pathops/SkPathOpsTSect.cpp \
310	src/pathops/SkPathOpsTightBounds.cpp \
311	src/pathops/SkPathOpsTypes.cpp \
312	src/pathops/SkPathOpsWinding.cpp \
313	src/pathops/SkPathWriter.cpp \
314	src/pathops/SkReduceOrder.cpp \
315	src/effects/GrCircleBlurFragmentProcessor.cpp \
316	src/effects/Sk1DPathEffect.cpp \
317	src/effects/Sk2DPathEffect.cpp \
318	src/effects/SkAlphaThresholdFilter.cpp \
319	src/effects/SkArcToPathEffect.cpp \
320	src/effects/SkArithmeticMode.cpp \
321	src/effects/SkArithmeticMode_gpu.cpp \
322	src/effects/SkAvoidXfermode.cpp \
323	src/effects/SkBlurDrawLooper.cpp \
324	src/effects/SkBlurMask.cpp \
325	src/effects/SkBlurImageFilter.cpp \
326	src/effects/SkBlurMaskFilter.cpp \
327	src/effects/SkColorCubeFilter.cpp \
328	src/effects/SkColorFilterImageFilter.cpp \
329	src/effects/SkColorMatrix.cpp \
330	src/effects/SkColorMatrixFilter.cpp \
331	src/effects/SkComposeImageFilter.cpp \
332	src/effects/SkCornerPathEffect.cpp \
333	src/effects/SkDashPathEffect.cpp \
334	src/effects/SkDiscretePathEffect.cpp \
335	src/effects/SkDisplacementMapEffect.cpp \
336	src/effects/SkDropShadowImageFilter.cpp \
337	src/effects/SkEmbossMask.cpp \
338	src/effects/SkEmbossMaskFilter.cpp \
339	src/effects/SkImageSource.cpp \
340	src/effects/SkGpuBlurUtils.cpp \
341	src/effects/SkLayerDrawLooper.cpp \
342	src/effects/SkLayerRasterizer.cpp \
343	src/effects/SkLightingImageFilter.cpp \
344	src/effects/SkLumaColorFilter.cpp \
345	src/effects/SkMagnifierImageFilter.cpp \
346	src/effects/SkMatrixConvolutionImageFilter.cpp \
347	src/effects/SkMergeImageFilter.cpp \
348	src/effects/SkMorphologyImageFilter.cpp \
349	src/effects/SkOffsetImageFilter.cpp \
350	src/effects/SkPackBits.cpp \
351	src/effects/SkPaintFlagsDrawFilter.cpp \
352	src/effects/SkPaintImageFilter.cpp \
353	src/effects/SkPerlinNoiseShader.cpp \
354	src/effects/SkPictureImageFilter.cpp \
355	src/effects/SkPixelXorXfermode.cpp \
356	src/effects/SkTableColorFilter.cpp \
357	src/effects/SkTableMaskFilter.cpp \
358	src/effects/SkTestImageFilters.cpp \
359	src/effects/SkTileImageFilter.cpp \
360	src/effects/SkXfermodeImageFilter.cpp \
361	src/effects/gradients/Sk4fGradientBase.cpp \
362	src/effects/gradients/Sk4fLinearGradient.cpp \
363	src/effects/gradients/SkClampRange.cpp \
364	src/effects/gradients/SkGradientBitmapCache.cpp \
365	src/effects/gradients/SkGradientShader.cpp \
366	src/effects/gradients/SkLinearGradient.cpp \
367	src/effects/gradients/SkRadialGradient.cpp \
368	src/effects/gradients/SkTwoPointConicalGradient.cpp \
369	src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp \
370	src/effects/gradients/SkSweepGradient.cpp \
371	src/gpu/GrAuditTrail.cpp \
372	src/gpu/GrBatchAtlas.cpp \
373	src/gpu/GrBatchFlushState.cpp \
374	src/gpu/GrBatchTest.cpp \
375	src/gpu/GrBlend.cpp \
376	src/gpu/GrBlurUtils.cpp \
377	src/gpu/GrBufferAllocPool.cpp \
378	src/gpu/GrCaps.cpp \
379	src/gpu/GrClip.cpp \
380	src/gpu/GrClipMaskManager.cpp \
381	src/gpu/GrContext.cpp \
382	src/gpu/GrCoordTransform.cpp \
383	src/gpu/GrDefaultGeoProcFactory.cpp \
384	src/gpu/GrDrawContext.cpp \
385	src/gpu/GrPathRenderingDrawContext.cpp \
386	src/gpu/GrDrawingManager.cpp \
387	src/gpu/GrDrawTarget.cpp \
388	src/gpu/GrFragmentProcessor.cpp \
389	src/gpu/GrGpu.cpp \
390	src/gpu/GrGpuResource.cpp \
391	src/gpu/GrGpuFactory.cpp \
392	src/gpu/GrImageIDTextureAdjuster.cpp \
393	src/gpu/GrInvariantOutput.cpp \
394	src/gpu/GrLayerAtlas.cpp \
395	src/gpu/GrLayerCache.cpp \
396	src/gpu/GrLayerHoister.cpp \
397	src/gpu/GrMemoryPool.cpp \
398	src/gpu/GrOvalRenderer.cpp \
399	src/gpu/GrPaint.cpp \
400	src/gpu/GrPath.cpp \
401	src/gpu/GrPathProcessor.cpp \
402	src/gpu/GrPathRange.cpp \
403	src/gpu/GrPathRendererChain.cpp \
404	src/gpu/GrPathRenderer.cpp \
405	src/gpu/GrPathRendering.cpp \
406	src/gpu/GrPathUtils.cpp \
407	src/gpu/GrPipeline.cpp \
408	src/gpu/GrPipelineBuilder.cpp \
409	src/gpu/GrPrimitiveProcessor.cpp \
410	src/gpu/GrProgramElement.cpp \
411	src/gpu/GrProcessor.cpp \
412	src/gpu/GrProcessorUnitTest.cpp \
413	src/gpu/GrProcOptInfo.cpp \
414	src/gpu/GrGpuResourceRef.cpp \
415	src/gpu/GrRecordReplaceDraw.cpp \
416	src/gpu/GrRectanizer_pow2.cpp \
417	src/gpu/GrRectanizer_skyline.cpp \
418	src/gpu/GrRenderTarget.cpp \
419	src/gpu/GrReducedClip.cpp \
420	src/gpu/GrResourceCache.cpp \
421	src/gpu/GrResourceProvider.cpp \
422	src/gpu/GrStencil.cpp \
423	src/gpu/GrStencilAttachment.cpp \
424	src/gpu/GrStrokeInfo.cpp \
425	src/gpu/GrTessellator.cpp \
426	src/gpu/GrTraceMarker.cpp \
427	src/gpu/GrTestUtils.cpp \
428	src/gpu/GrSWMaskHelper.cpp \
429	src/gpu/GrSoftwarePathRenderer.cpp \
430	src/gpu/GrSurface.cpp \
431	src/gpu/GrTexture.cpp \
432	src/gpu/GrTextureParamsAdjuster.cpp \
433	src/gpu/GrTextureProvider.cpp \
434	src/gpu/GrTextureToYUVPlanes.cpp \
435	src/gpu/GrTextureAccess.cpp \
436	src/gpu/GrXferProcessor.cpp \
437	src/gpu/GrYUVProvider.cpp \
438	src/gpu/batches/GrAAHairLinePathRenderer.cpp \
439	src/gpu/batches/GrAALinearizingConvexPathRenderer.cpp \
440	src/gpu/batches/GrAAConvexTessellator.cpp \
441	src/gpu/batches/GrAADistanceFieldPathRenderer.cpp \
442	src/gpu/batches/GrAAConvexPathRenderer.cpp \
443	src/gpu/batches/GrAAFillRectBatch.cpp \
444	src/gpu/batches/GrAAStrokeRectBatch.cpp \
445	src/gpu/batches/GrAtlasTextBatch.cpp \
446	src/gpu/batches/GrBatch.cpp \
447	src/gpu/batches/GrCopySurfaceBatch.cpp \
448	src/gpu/batches/GrDashLinePathRenderer.cpp \
449	src/gpu/batches/GrDefaultPathRenderer.cpp \
450	src/gpu/batches/GrDrawBatch.cpp \
451	src/gpu/batches/GrDrawAtlasBatch.cpp \
452	src/gpu/batches/GrDrawPathBatch.cpp \
453	src/gpu/batches/GrDrawVerticesBatch.cpp \
454	src/gpu/batches/GrNonAAFillRectBatch.cpp \
455	src/gpu/batches/GrNonAAStrokeRectBatch.cpp \
456	src/gpu/batches/GrNinePatch.cpp \
457	src/gpu/batches/GrPLSPathRenderer.cpp \
458	src/gpu/batches/GrRectBatchFactory.cpp \
459	src/gpu/batches/GrStencilAndCoverPathRenderer.cpp \
460	src/gpu/batches/GrTessellatingPathRenderer.cpp \
461	src/gpu/batches/GrVertexBatch.cpp \
462	src/gpu/effects/GrConfigConversionEffect.cpp \
463	src/gpu/effects/GrConstColorProcessor.cpp \
464	src/gpu/effects/GrCoverageSetOpXP.cpp \
465	src/gpu/effects/GrCustomXfermode.cpp \
466	src/gpu/effects/GrBezierEffect.cpp \
467	src/gpu/effects/GrConvolutionEffect.cpp \
468	src/gpu/effects/GrConvexPolyEffect.cpp \
469	src/gpu/effects/GrBicubicEffect.cpp \
470	src/gpu/effects/GrBitmapTextGeoProc.cpp \
471	src/gpu/effects/GrDashingEffect.cpp \
472	src/gpu/effects/GrDisableColorXP.cpp \
473	src/gpu/effects/GrDistanceFieldGeoProc.cpp \
474	src/gpu/effects/GrDitherEffect.cpp \
475	src/gpu/effects/GrMatrixConvolutionEffect.cpp \
476	src/gpu/effects/GrOvalEffect.cpp \
477	src/gpu/effects/GrPorterDuffXferProcessor.cpp \
478	src/gpu/effects/GrRRectEffect.cpp \
479	src/gpu/effects/GrSimpleTextureEffect.cpp \
480	src/gpu/effects/GrSingleTextureEffect.cpp \
481	src/gpu/effects/GrTextureDomain.cpp \
482	src/gpu/effects/GrTextureStripAtlas.cpp \
483	src/gpu/effects/GrXfermodeFragmentProcessor.cpp \
484	src/gpu/effects/GrYUVEffect.cpp \
485	src/gpu/text/GrAtlasTextBlob.cpp \
486	src/gpu/text/GrAtlasTextBlob_regenInBatch.cpp \
487	src/gpu/text/GrAtlasTextContext.cpp \
488	src/gpu/text/GrBatchFontCache.cpp \
489	src/gpu/text/GrDistanceFieldAdjustTable.cpp \
490	src/gpu/text/GrFontScaler.cpp \
491	src/gpu/text/GrStencilAndCoverTextContext.cpp \
492	src/gpu/text/GrTextBlobCache.cpp \
493	src/gpu/text/GrTextUtils.cpp \
494	src/gpu/gl/GrGLAssembleInterface.cpp \
495	src/gpu/gl/GrGLBufferImpl.cpp \
496	src/gpu/gl/GrGLCaps.cpp \
497	src/gpu/gl/GrGLContext.cpp \
498	src/gpu/gl/GrGLGLSL.cpp \
499	src/gpu/gl/GrGLGpu.cpp \
500	src/gpu/gl/GrGLGpuProgramCache.cpp \
501	src/gpu/gl/GrGLExtensions.cpp \
502	src/gpu/gl/GrGLIndexBuffer.cpp \
503	src/gpu/gl/GrGLInterface.cpp \
504	src/gpu/gl/GrGLNoOpInterface.cpp \
505	src/gpu/gl/GrGLPath.cpp \
506	src/gpu/gl/GrGLPathRange.cpp \
507	src/gpu/gl/GrGLPathRendering.cpp \
508	src/gpu/gl/GrGLProgram.cpp \
509	src/gpu/gl/GrGLProgramDesc.cpp \
510	src/gpu/gl/GrGLProgramDataManager.cpp \
511	src/gpu/gl/GrGLRenderTarget.cpp \
512	src/gpu/gl/GrGLStencilAttachment.cpp \
513	src/gpu/gl/GrGLTexture.cpp \
514	src/gpu/gl/GrGLTextureRenderTarget.cpp \
515	src/gpu/gl/GrGLTransferBuffer.cpp \
516	src/gpu/gl/GrGLUtil.cpp \
517	src/gpu/gl/GrGLUniformHandler.cpp \
518	src/gpu/gl/GrGLVaryingHandler.cpp \
519	src/gpu/gl/GrGLVertexArray.cpp \
520	src/gpu/gl/GrGLVertexBuffer.cpp \
521	src/gpu/gl/builders/GrGLProgramBuilder.cpp \
522	src/gpu/gl/builders/GrGLShaderStringBuilder.cpp \
523	src/gpu/gl/builders/GrGLSLPrettyPrint.cpp \
524	src/gpu/glsl/GrGLSL.cpp \
525	src/gpu/glsl/GrGLSLBlend.cpp \
526	src/gpu/glsl/GrGLSLCaps.cpp \
527	src/gpu/glsl/GrGLSLFragmentProcessor.cpp \
528	src/gpu/glsl/GrGLSLFragmentShaderBuilder.cpp \
529	src/gpu/glsl/GrGLSLGeometryProcessor.cpp \
530	src/gpu/glsl/GrGLSLGeometryShaderBuilder.cpp \
531	src/gpu/glsl/GrGLSLPrimitiveProcessor.cpp \
532	src/gpu/glsl/GrGLSLProgramBuilder.cpp \
533	src/gpu/glsl/GrGLSLProgramDataManager.cpp \
534	src/gpu/glsl/GrGLSLShaderBuilder.cpp \
535	src/gpu/glsl/GrGLSLUtil.cpp \
536	src/gpu/glsl/GrGLSLVarying.cpp \
537	src/gpu/glsl/GrGLSLVertexShaderBuilder.cpp \
538	src/gpu/glsl/GrGLSLXferProcessor.cpp \
539	src/gpu/SkGpuDevice.cpp \
540	src/gpu/SkGpuDevice_drawTexture.cpp \
541	src/gpu/SkGr.cpp \
542	src/gpu/SkGrPixelRef.cpp \
543	src/gpu/SkGrTexturePixelRef.cpp \
544	src/image/SkImage_Gpu.cpp \
545	src/image/SkSurface_Gpu.cpp \
546	src/gpu/gl/SkGLContext.cpp \
547	src/gpu/gl/GrGLDefaultInterface_native.cpp \
548	src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp \
549	src/gpu/gl/egl/SkCreatePlatformGLContext_egl.cpp \
550	src/gpu/gl/debug/GrGLCreateDebugInterface.cpp \
551	src/gpu/gl/debug/GrBufferObj.cpp \
552	src/gpu/gl/debug/GrTextureObj.cpp \
553	src/gpu/gl/debug/GrTextureUnitObj.cpp \
554	src/gpu/gl/debug/GrFrameBufferObj.cpp \
555	src/gpu/gl/debug/GrShaderObj.cpp \
556	src/gpu/gl/debug/GrProgramObj.cpp \
557	src/gpu/gl/debug/GrDebugGL.cpp \
558	src/gpu/gl/debug/SkDebugGLContext.cpp \
559	src/gpu/gl/GrGLCreateNullInterface.cpp \
560	src/gpu/gl/SkNullGLContext.cpp \
561	src/images/bmpdecoderhelper.cpp \
562	src/images/SkForceLinking.cpp \
563	src/images/SkImageDecoder.cpp \
564	src/images/SkImageDecoder_FactoryDefault.cpp \
565	src/images/SkImageDecoder_FactoryRegistrar.cpp \
566	src/images/SkImageDecoder_wbmp.cpp \
567	src/images/SkImageDecoder_libbmp.cpp \
568	src/images/SkImageDecoder_libgif.cpp \
569	src/images/SkImageDecoder_libico.cpp \
570	src/images/SkImageDecoder_libwebp.cpp \
571	src/images/SkImageDecoder_libjpeg.cpp \
572	src/images/SkImageDecoder_libpng.cpp \
573	src/images/SkImageEncoder.cpp \
574	src/images/SkImageEncoder_Factory.cpp \
575	src/images/SkImageEncoder_argb.cpp \
576	src/images/SkJpegUtility.cpp \
577	src/images/SkMovie.cpp \
578	src/images/SkMovie_gif.cpp \
579	src/images/SkPageFlipper.cpp \
580	src/images/SkScaledBitmapSampler.cpp \
581	src/doc/SkDocument_PDF.cpp \
582	src/pdf/SkDeflate.cpp \
583	src/pdf/SkJpegInfo.cpp \
584	src/pdf/SkPDFBitmap.cpp \
585	src/pdf/SkPDFCanon.cpp \
586	src/pdf/SkPDFDevice.cpp \
587	src/pdf/SkPDFFont.cpp \
588	src/pdf/SkPDFFormXObject.cpp \
589	src/pdf/SkPDFGraphicState.cpp \
590	src/pdf/SkPDFMetadata.cpp \
591	src/pdf/SkPDFResourceDict.cpp \
592	src/pdf/SkPDFShader.cpp \
593	src/pdf/SkPDFStream.cpp \
594	src/pdf/SkPDFTypes.cpp \
595	src/pdf/SkPDFUtils.cpp \
596	src/core/SkForceCPlusPlusLinking.cpp \
597	src/fonts/SkFontMgr_indirect.cpp \
598	src/fonts/SkRemotableFontMgr.cpp \
599	src/ports/SkFontMgr_android_factory.cpp \
600	src/ports/SkGlobalInitialization_default.cpp \
601	src/ports/SkMemory_malloc.cpp \
602	src/ports/SkOSEnvironment.cpp \
603	src/ports/SkOSFile_posix.cpp \
604	src/ports/SkOSFile_stdio.cpp \
605	src/ports/SkOSLibrary_posix.cpp \
606	src/ports/SkDiscardableMemory_none.cpp \
607	src/ports/SkTime_Unix.cpp \
608	src/ports/SkTLS_pthread.cpp \
609	src/ports/SkFontHost_FreeType.cpp \
610	src/ports/SkFontHost_FreeType_common.cpp \
611	src/ports/SkFontMgr_android.cpp \
612	src/ports/SkFontMgr_android_parser.cpp \
613	src/ports/SkFontMgr_custom.cpp \
614	src/ports/SkDebug_android.cpp \
615	src/sfnt/SkOTTable_name.cpp \
616	src/sfnt/SkOTUtils.cpp \
617	src/utils/SkBase64.cpp \
618	src/utils/SkBitmapSourceDeserializer.cpp \
619	src/utils/SkBitSet.cpp \
620	src/utils/SkBoundaryPatch.cpp \
621	src/utils/SkFrontBufferedStream.cpp \
622	src/utils/SkCamera.cpp \
623	src/utils/SkCanvasStack.cpp \
624	src/utils/SkCanvasStateUtils.cpp \
625	src/utils/SkDashPath.cpp \
626	src/utils/SkDumpCanvas.cpp \
627	src/utils/SkEventTracer.cpp \
628	src/utils/SkImageGeneratorUtils.cpp \
629	src/utils/SkInterpolator.cpp \
630	src/utils/SkLayer.cpp \
631	src/utils/SkMatrix22.cpp \
632	src/utils/SkMatrix44.cpp \
633	src/utils/SkMD5.cpp \
634	src/utils/SkMeshUtils.cpp \
635	src/utils/SkNinePatch.cpp \
636	src/utils/SkNWayCanvas.cpp \
637	src/utils/SkNullCanvas.cpp \
638	src/utils/SkOSFile.cpp \
639	src/utils/SkPaintFilterCanvas.cpp \
640	src/utils/SkParse.cpp \
641	src/utils/SkParseColor.cpp \
642	src/utils/SkParsePath.cpp \
643	src/utils/SkPatchGrid.cpp \
644	src/utils/SkPatchUtils.cpp \
645	src/utils/SkRGBAToYUV.cpp \
646	src/utils/SkRTConf.cpp \
647	src/utils/SkTextBox.cpp \
648	src/utils/SkTextureCompressor.cpp \
649	src/utils/SkTextureCompressor_ASTC.cpp \
650	src/utils/SkTextureCompressor_R11EAC.cpp \
651	src/utils/SkTextureCompressor_LATC.cpp \
652	src/utils/SkThreadUtils_pthread.cpp \
653	src/utils/SkWhitelistTypefaces.cpp \
654	src/fonts/SkGScalerContext.cpp \
655	src/fonts/SkRandomScalerContext.cpp \
656	src/fonts/SkTestScalerContext.cpp \
657	src/codec/SkRawAdapterCodec.cpp \
658	src/codec/SkRawCodec.cpp \
659	third_party/etc1/etc1.cpp \
660	third_party/ktx/ktx.cpp
661
662LOCAL_SHARED_LIBRARIES := \
663	liblog \
664	libGLESv2 \
665	libEGL \
666	libz \
667	libexpat \
668	libjpeg \
669	libpng \
670	libicuuc \
671	libicui18n \
672	libft2 \
673	libdng_sdk \
674	libpiex
675
676LOCAL_STATIC_LIBRARIES := \
677	libgif \
678	libwebp-decode \
679	libwebp-encode \
680	libsfntly
681
682LOCAL_C_INCLUDES := \
683	external/libjpeg-turbo \
684	external/libpng \
685	$(LOCAL_PATH)/include/codec \
686	$(LOCAL_PATH)/include/private \
687	$(LOCAL_PATH)/src/codec \
688	$(LOCAL_PATH)/src/core \
689	$(LOCAL_PATH)/src/utils \
690	$(LOCAL_PATH)/include/c \
691	$(LOCAL_PATH)/include/config \
692	$(LOCAL_PATH)/include/core \
693	$(LOCAL_PATH)/include/pathops \
694	external/giflib \
695	external/webp/include \
696	$(LOCAL_PATH)/include/android \
697	$(LOCAL_PATH)/src/android \
698	$(LOCAL_PATH)/include/ports \
699	$(LOCAL_PATH)/include/utils \
700	$(LOCAL_PATH)/include/images \
701	$(LOCAL_PATH)/src/sfnt \
702	$(LOCAL_PATH)/src/image \
703	$(LOCAL_PATH)/src/opts \
704	$(LOCAL_PATH)/include/gpu \
705	$(LOCAL_PATH)/src/gpu \
706	$(LOCAL_PATH)/include/effects \
707	$(LOCAL_PATH)/include/client/android \
708	$(LOCAL_PATH)/src/effects \
709	$(LOCAL_PATH)/third_party/etc1 \
710	$(LOCAL_PATH)/third_party/ktx \
711	$(LOCAL_PATH)/src/lazy \
712	external/expat/lib \
713	external/freetype/include \
714	$(LOCAL_PATH)/include/utils/win \
715	$(LOCAL_PATH)/src/ports \
716	$(LOCAL_PATH)/src/pdf \
717	external/sfntly/cpp/src \
718	external/zlib \
719	external/dng_sdk \
720	external/piex
721
722LOCAL_EXPORT_C_INCLUDE_DIRS := \
723	$(LOCAL_PATH)/include/codec \
724	$(LOCAL_PATH)/include/android \
725	$(LOCAL_PATH)/include/c \
726	$(LOCAL_PATH)/include/config \
727	$(LOCAL_PATH)/include/core \
728	$(LOCAL_PATH)/include/pathops \
729	$(LOCAL_PATH)/include/effects \
730	$(LOCAL_PATH)/include/client/android \
731	$(LOCAL_PATH)/include/gpu \
732	$(LOCAL_PATH)/include/images \
733	$(LOCAL_PATH)/include/ports \
734	$(LOCAL_PATH)/include/utils \
735	$(LOCAL_PATH)/src/utils
736
737LOCAL_MODULE := \
738	libskia_static
739
740LOCAL_SRC_FILES_arm += \
741	src/core/SkUtilsArm.cpp \
742	src/opts/SkBitmapProcState_opts_arm.cpp \
743	src/opts/SkBlitMask_opts_arm.cpp \
744	src/opts/SkBlitRow_opts_arm.cpp
745
746LOCAL_CFLAGS_arm += \
747	-DqDNGBigEndian=0
748
749ifeq ($(ARCH_ARM_HAVE_NEON), true)
750LOCAL_SRC_FILES_arm += \
751	src/opts/SkBitmapProcState_arm_neon.cpp \
752	src/opts/SkBitmapProcState_matrixProcs_neon.cpp \
753	src/opts/SkBlitMask_opts_arm_neon.cpp \
754	src/opts/SkBlitRow_opts_arm_neon.cpp \
755	src/opts/SkOpts_neon.cpp
756
757LOCAL_CFLAGS_arm += \
758	-DSK_ARM_HAS_NEON
759
760endif
761
762LOCAL_CFLAGS_x86 += \
763	-msse2 \
764	-mfpmath=sse
765
766LOCAL_SRC_FILES_x86 += \
767	src/opts/SkBitmapFilter_opts_SSE2.cpp \
768	src/opts/SkBitmapProcState_opts_SSE2.cpp \
769	src/opts/SkBlitRow_opts_SSE2.cpp \
770	src/opts/opts_check_x86.cpp \
771	src/opts/SkBitmapProcState_opts_SSSE3.cpp \
772	src/opts/SkOpts_ssse3.cpp \
773	src/opts/SkBlitRow_opts_SSE4.cpp \
774	src/opts/SkOpts_sse41.cpp
775
776LOCAL_CFLAGS_x86 += \
777	-DqDNGBigEndian=0
778
779LOCAL_SRC_FILES_x86_64 += \
780	src/opts/SkBitmapFilter_opts_SSE2.cpp \
781	src/opts/SkBitmapProcState_opts_SSE2.cpp \
782	src/opts/SkBlitRow_opts_SSE2.cpp \
783	src/opts/opts_check_x86.cpp \
784	src/opts/SkBitmapProcState_opts_SSSE3.cpp \
785	src/opts/SkOpts_ssse3.cpp \
786	src/opts/SkBlitRow_opts_SSE4.cpp \
787	src/opts/SkOpts_sse41.cpp
788
789LOCAL_CFLAGS_mips += \
790	-EL
791
792LOCAL_SRC_FILES_mips += \
793	src/opts/SkBitmapProcState_opts_none.cpp \
794	src/opts/SkBlitMask_opts_none.cpp \
795	src/opts/SkBlitRow_opts_none.cpp
796
797LOCAL_CFLAGS_mips64 += \
798	-EL
799
800LOCAL_SRC_FILES_mips64 += \
801	src/opts/SkBitmapProcState_opts_none.cpp \
802	src/opts/SkBlitMask_opts_none.cpp \
803	src/opts/SkBlitRow_opts_none.cpp
804
805LOCAL_SRC_FILES_arm64 += \
806	src/opts/SkBitmapProcState_arm_neon.cpp \
807	src/opts/SkBitmapProcState_matrixProcs_neon.cpp \
808	src/opts/SkBitmapProcState_opts_arm.cpp \
809	src/opts/SkBlitMask_opts_arm.cpp \
810	src/opts/SkBlitMask_opts_arm_neon.cpp \
811	src/opts/SkBlitRow_opts_arm.cpp \
812	src/opts/SkBlitRow_opts_arm_neon.cpp \
813	src/opts/SkOpts_neon.cpp
814
815LOCAL_MODULE_CLASS := STATIC_LIBRARIES
816include $(BUILD_STATIC_LIBRARY)
817
818
819###############################################################################
820# SHARED LIBRARY
821###############################################################################
822
823include $(CLEAR_VARS)
824LOCAL_MODULE_CLASS := SHARED_LIBRARIES
825LOCAL_MODULE := libskia
826LOCAL_WHOLE_STATIC_LIBRARIES := libskia_static
827LOCAL_EXPORT_C_INCLUDE_DIRS := \
828	$(LOCAL_PATH)/include/codec \
829	$(LOCAL_PATH)/include/android \
830	$(LOCAL_PATH)/include/c \
831	$(LOCAL_PATH)/include/config \
832	$(LOCAL_PATH)/include/core \
833	$(LOCAL_PATH)/include/pathops \
834	$(LOCAL_PATH)/include/effects \
835	$(LOCAL_PATH)/include/client/android \
836	$(LOCAL_PATH)/include/gpu \
837	$(LOCAL_PATH)/include/images \
838	$(LOCAL_PATH)/include/ports \
839	$(LOCAL_PATH)/include/utils \
840	$(LOCAL_PATH)/src/utils
841
842include $(BASE_PATH)/skia_static_deps.mk
843include $(BUILD_SHARED_LIBRARY)
844
845#############################################################
846# Build the skia tools
847#
848
849# benchmark (timings)
850include $(BASE_PATH)/bench/Android.mk
851
852#disable build in PDK
853ifneq ($(TARGET_BUILD_PDK),true)
854# diamond-master (one test to rule them all)
855include $(BASE_PATH)/dm/Android.mk
856endif
857