diff options
author | Derek Sollenberger <djsollen@google.com> | 2012-01-18 08:56:56 -0500 |
---|---|---|
committer | Derek Sollenberger <derek@android.com> | 2012-02-06 14:14:40 -0500 |
commit | 1cab2921ab279367f8206cdadc9259d12e603548 (patch) | |
tree | 2852f9dc2481f639122e18fc7831ae6ca43d6d5a /gyp | |
parent | d7176fd5571bc9878d3cdac8696eaa35ec170d9d (diff) | |
download | external_skia-1cab2921ab279367f8206cdadc9259d12e603548.zip external_skia-1cab2921ab279367f8206cdadc9259d12e603548.tar.gz external_skia-1cab2921ab279367f8206cdadc9259d12e603548.tar.bz2 |
Skia merge (revision 3022)
This CL has companion changes to account for API updates in...
(1) frameworks/base
(2) external/webkit
Change-Id: Ibb989e76e8bd24313849f9631dbef42cdef9eb7d
Diffstat (limited to 'gyp')
-rw-r--r-- | gyp/FileReaderApp.gyp | 78 | ||||
-rw-r--r-- | gyp/SampleApp.gyp | 281 | ||||
-rw-r--r-- | gyp/SimpleCocoaApp.gyp | 65 | ||||
-rw-r--r-- | gyp/all.gyp | 41 | ||||
-rw-r--r-- | gyp/android_system.gyp | 21 | ||||
-rw-r--r-- | gyp/animator.gyp | 193 | ||||
-rw-r--r-- | gyp/apptype_console.gypi | 21 | ||||
-rw-r--r-- | gyp/bench.gyp | 36 | ||||
-rw-r--r-- | gyp/bench.gypi | 71 | ||||
-rw-r--r-- | gyp/common.gypi | 70 | ||||
-rw-r--r-- | gyp/common_conditions.gypi | 212 | ||||
-rw-r--r-- | gyp/common_variables.gypi | 25 | ||||
-rw-r--r-- | gyp/core.gyp | 327 | ||||
-rw-r--r-- | gyp/effects.gyp | 92 | ||||
-rw-r--r-- | gyp/experimental.gyp | 31 | ||||
-rw-r--r-- | gyp/freetype.gyp | 69 | ||||
-rw-r--r-- | gyp/gm.gyp | 44 | ||||
-rw-r--r-- | gyp/gmslides.gypi | 55 | ||||
-rw-r--r-- | gyp/gpu.gyp | 356 | ||||
-rw-r--r-- | gyp/iOSSampleApp.gyp | 279 | ||||
-rw-r--r-- | gyp/images.gyp | 149 | ||||
-rw-r--r-- | gyp/libtess.gyp | 59 | ||||
-rw-r--r-- | gyp/opts.gyp | 81 | ||||
-rw-r--r-- | gyp/pdf.gyp | 66 | ||||
-rw-r--r-- | gyp/ports.gyp | 114 | ||||
-rw-r--r-- | gyp/svg.gyp | 91 | ||||
-rw-r--r-- | gyp/tests.gyp | 95 | ||||
-rw-r--r-- | gyp/tools.gyp | 73 | ||||
-rw-r--r-- | gyp/utils.gyp | 161 | ||||
-rw-r--r-- | gyp/views.gyp | 118 | ||||
-rw-r--r-- | gyp/xml.gyp | 58 | ||||
-rw-r--r-- | gyp/xps.gyp | 67 | ||||
-rw-r--r-- | gyp/zlib.gyp | 40 |
33 files changed, 3539 insertions, 0 deletions
diff --git a/gyp/FileReaderApp.gyp b/gyp/FileReaderApp.gyp new file mode 100644 index 0000000..c5651c7 --- /dev/null +++ b/gyp/FileReaderApp.gyp @@ -0,0 +1,78 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'FileReaderApp', + 'type': 'executable', + 'mac_bundle' : 1, + + 'include_dirs' : [ + '../include/pipe', + '../experimental/FileReaderApp', + '../experimental/SimpleCocoaApp', + ], + 'sources': [ + '../experimental/FileReaderApp/ReaderView.cpp', + '../src/pipe/SkGPipeRead.cpp', + ], + 'sources!': [ + '../src/utils/mac/SkOSWindow_Mac.cpp', + ], + 'dependencies': [ + 'core.gyp:core', + 'effects.gyp:effects', + 'opts.gyp:opts', + 'ports.gyp:ports', + 'utils.gyp:utils', + 'views.gyp:views', + 'xml.gyp:xml', + ], + 'conditions' : [ + # Only supports Mac currently + ['skia_os == "mac"', { + 'sources': [ + '../experimental/SimpleCocoaApp/SkNSWindow.mm', + '../experimental/SimpleCocoaApp/SkNSView.mm', + '../experimental/FileReaderApp/FileReaderApp-Info.plist', + '../experimental/FileReaderApp/FileReaderAppDelegate.mm', + '../experimental/FileReaderApp/FileReaderApp_Prefix.pch', + '../experimental/FileReaderApp/FileReaderWindow.mm', + '../experimental/FileReaderApp/main.m', + '../include/utils/mac/SkCGUtils.h', + '../src/utils/mac/SkCreateCGImageRef.cpp', + ], + 'link_settings': { + 'libraries': [ + '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework', + '$(SDKROOT)/System/Library/Frameworks/AppKit.framework', + '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', + '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', + ], + 'libraries!': [ + # Currently skia mac apps rely on Carbon and AGL for UI. Future + # apps should use Cocoa instead and dependencies on Carbon and AGL + # should eventually be removed + '$(SDKROOT)/System/Library/Frameworks/Carbon.framework', + '$(SDKROOT)/System/Library/Frameworks/AGL.framework', + ], + }, + 'xcode_settings' : { + 'INFOPLIST_FILE' : '../experimental/FileReaderApp/FileReaderApp-Info.plist', + }, + 'mac_bundle_resources' : [ + '../experimental/FileReaderApp/English.lproj/InfoPlist.strings', + '../experimental/FileReaderApp/English.lproj/MainMenu.xib', + ], + }], + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/SampleApp.gyp b/gyp/SampleApp.gyp new file mode 100644 index 0000000..fed4bf4 --- /dev/null +++ b/gyp/SampleApp.gyp @@ -0,0 +1,281 @@ + +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'SampleApp', + 'type': 'executable', + 'mac_bundle' : 1, + 'include_dirs' : [ + '../src/core', # needed to get SkConcaveToTriangle, maybe this should be moved to include dir? + '../gm', # needed to pull gm.h + '../include/pipe', # To pull in SkGPipe.h for pipe reader/writer + '../samplecode', # To pull SampleApp.h and SampleCode.h + ], + 'includes': [ + 'gmslides.gypi', + ], + 'sources': [ + '../gm/gm.cpp', + '../gm/gm.h', + + '../samplecode/GMSampleView.h', + '../samplecode/ClockFaceView.cpp', + '../samplecode/OverView.cpp', + '../samplecode/Sample2PtRadial.cpp', + '../samplecode/SampleAAClip.cpp', + '../samplecode/SampleAAClip2.cpp', + '../samplecode/SampleAARects.cpp', + '../samplecode/SampleAARectModes.cpp', + '../samplecode/SampleAll.cpp', + '../samplecode/SampleAnimator.cpp', + '../samplecode/SampleApp.cpp', + '../samplecode/SampleArc.cpp', + '../samplecode/SampleAvoid.cpp', + '../samplecode/SampleBigBlur.cpp', + '../samplecode/SampleBigGradient.cpp', + '../samplecode/SampleBitmapRect.cpp', + '../samplecode/SampleBlur.cpp', + '../samplecode/SampleCamera.cpp', + '../samplecode/SampleCircle.cpp', + '../samplecode/SampleClip.cpp', + '../samplecode/SampleCode.h', + '../samplecode/SampleColorFilter.cpp', + '../samplecode/SampleComplexClip.cpp', + '../samplecode/SampleConcavePaths.cpp', + '../samplecode/SampleCull.cpp', + '../samplecode/SampleDecode.cpp', + '../samplecode/SampleDegenerateTwoPtRadials.cpp', + '../samplecode/SampleDither.cpp', + '../samplecode/SampleDitherBitmap.cpp', + '../samplecode/SampleDrawBitmap.cpp', + '../samplecode/SampleDrawLooper.cpp', + '../samplecode/SampleEffects.cpp', + '../samplecode/SampleEmboss.cpp', + '../samplecode/SampleEmptyPath.cpp', + '../samplecode/SampleEncode.cpp', + '../samplecode/SampleFillType.cpp', + '../samplecode/SampleFilter.cpp', + '../samplecode/SampleFilter2.cpp', + '../samplecode/SampleFontCache.cpp', + '../samplecode/SampleFontScalerTest.cpp', + '../samplecode/SampleFuzz.cpp', + '../samplecode/SampleGradients.cpp', + '../samplecode/SampleHairCurves.cpp', + '../samplecode/SampleHairline.cpp', + '../samplecode/SampleHairModes.cpp', + '../samplecode/SampleImage.cpp', + '../samplecode/SampleImageDir.cpp', + '../samplecode/SampleLayerMask.cpp', + '../samplecode/SampleLayers.cpp', + '../samplecode/SampleLCD.cpp', + '../samplecode/SampleLineClipper.cpp', + '../samplecode/SampleLines.cpp', + '../samplecode/SampleMeasure.cpp', + '../samplecode/SampleMipMap.cpp', + '../samplecode/SampleMovie.cpp', + '../samplecode/SampleNinePatch.cpp', + '../samplecode/SampleOvalTest.cpp', + '../samplecode/SampleOverflow.cpp', + '../samplecode/SamplePageFlip.cpp', + '../samplecode/SamplePatch.cpp', + '../samplecode/SamplePath.cpp', + '../samplecode/SamplePathClip.cpp', + '../samplecode/SamplePathEffects.cpp', + '../samplecode/SamplePicture.cpp', + '../samplecode/SamplePoints.cpp', + '../samplecode/SamplePolyToPoly.cpp', + '../samplecode/SampleRegion.cpp', + '../samplecode/SampleRepeatTile.cpp', + '../samplecode/SampleShaders.cpp', + '../samplecode/SampleShaderText.cpp', + '../samplecode/SampleShapes.cpp', + '../samplecode/SampleSkLayer.cpp', + '../samplecode/SampleSlides.cpp', + '../samplecode/SampleStrokePath.cpp', + '../samplecode/SampleStrokeText.cpp', + '../samplecode/SampleTests.cpp', + '../samplecode/SampleText.cpp', + '../samplecode/SampleTextAlpha.cpp', + '../samplecode/SampleTextBox.cpp', + '../samplecode/SampleTextEffects.cpp', + '../samplecode/SampleTextOnPath.cpp', + '../samplecode/SampleTextureDomain.cpp', + '../samplecode/SampleTiling.cpp', + '../samplecode/SampleTinyBitmap.cpp', + '../samplecode/SampleTriangles.cpp', + '../samplecode/SampleTypeface.cpp', + '../samplecode/SampleUnitMapper.cpp', + '../samplecode/SampleVertices.cpp', + '../samplecode/SampleXfermodes.cpp', + '../samplecode/SampleXfermodesBlur.cpp', + '../samplecode/TransitionView.cpp', + + # Dependencies for the pipe code in SampleApp + '../src/pipe/SkGPipeRead.cpp', + '../src/pipe/SkGPipeWrite.cpp', + + # DrawingBoard + #'../experimental/DrawingBoard/SkColorPalette.h', + #'../experimental/DrawingBoard/SkColorPalette.cpp', + #'../experimental/DrawingBoard/SkNetPipeController.h', + #'../experimental/DrawingBoard/SkNetPipeController.cpp', + #'../experimental/DrawingBoard/SampleDrawingClient.cpp', + #'../experimental/DrawingBoard/SampleDrawingServer.cpp', + + # Networking + #'../experimental/Networking/SampleNetPipeReader.cpp', + #'../experimental/Networking/SkSockets.cpp', + #'../experimental/Networking/SkSockets.h', + + # Debugger + '../experimental/Debugger/DebuggerViews.h', + '../experimental/Debugger/DebuggerContentView.cpp', + '../experimental/Debugger/DebuggerCommandsView.cpp', + '../experimental/Debugger/DebuggerStateView.cpp', + '../experimental/Debugger/SkDebugDumper.cpp', + '../experimental/Debugger/SkDebugDumper.h', + ], + 'sources!': [ + '../samplecode/SampleSkLayer.cpp', #relies on SkMatrix44 which doesn't compile + '../samplecode/SampleTests.cpp', #includes unknown file SkShaderExtras.h + '../samplecode/SampleWarp.cpp', + '../samplecode/SampleFontCache.cpp', + ], + 'dependencies': [ + 'core.gyp:core', + 'effects.gyp:effects', + 'images.gyp:images', + 'ports.gyp:ports', + 'views.gyp:views', + 'utils.gyp:utils', + 'animator.gyp:animator', + 'xml.gyp:xml', + 'svg.gyp:svg', + 'experimental.gyp:experimental', + 'gpu.gyp:gr', + 'gpu.gyp:skgr', + 'pdf.gyp:pdf', + ], + 'conditions' : [ + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', { + 'sources!': [ + '../samplecode/SampleDecode.cpp', + ], + }], + [ 'skia_os == "win"', { + 'sources!': [ + # require UNIX functions + '../samplecode/SampleEncode.cpp', + '../samplecode/SamplePageFlip.cpp', + ], + }], + [ 'skia_os == "mac"', { + 'sources!': [ + '../samplecode/SampleDecode.cpp', + ], + 'sources': [ + # Sample App specific files + '../src/utils/mac/SampleApp-Info.plist', + '../src/utils/mac/SampleAppDelegate.h', + '../src/utils/mac/SampleAppDelegate.mm', + '../src/utils/mac/SkSampleNSView.h', + '../src/utils/mac/SkSampleNSView.mm', + + # Mac files + '../src/utils/mac/SkEventNotifier.h', + '../src/utils/mac/SkEventNotifier.mm', + '../src/utils/mac/skia_mac.mm', + '../src/utils/mac/SkNSView.h', + '../src/utils/mac/SkNSView.mm', + '../src/utils/mac/SkOptionsTableView.h', + '../src/utils/mac/SkOptionsTableView.mm', + '../src/utils/mac/SkOSWindow_Mac.mm', + '../src/utils/mac/SkTextFieldCell.h', + '../src/utils/mac/SkTextFieldCell.m', + ], + 'libraries': [ + '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework', + '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', + ], + 'xcode_settings' : { + 'INFOPLIST_FILE' : '../src/utils/mac/SampleApp-Info.plist', + }, + 'mac_bundle_resources' : [ + '../src/utils/mac/SampleApp.xib', + ], + }], + [ 'skia_os == "ios"', { + # TODO: This doesn't build properly yet, but it's getting there. + 'sources!': [ + '../samplecode/SampleDecode.cpp', + ], + 'sources': [ + '../experimental/iOSSampleApp/SkIOSNotifier.mm', + '../experimental/iOSSampleApp/SkTime_iOS.mm', + '../experimental/iOSSampleApp/SkUIDetailViewController.mm', + '../experimental/iOSSampleApp/SkUIRootViewController.mm', + '../experimental/iOSSampleApp/SkUIView_shell.mm', + + '../experimental/iOSSampleApp/iOSSampleApp_Prefix.pch', + '../experimental/iOSSampleApp/Shared/main.m', + '../experimental/iOSSampleApp/iPad/AppDelegate_iPad.mm', + '../experimental/iOSSampleApp/iPad/SkUISplitViewController.mm', + '../experimental/iOSSampleApp/iPhone/AppDelegate_iPhone.mm', + '../experimental/iOSSampleApp/iPhone/SkUINavigationController.mm', + + '../src/utils/ios/SkOSWindow_iOS.mm', + '../src/utils/ios/SkImageDecoder_iOS.mm', + '../src/utils/ios/SkStream_NSData.mm', + '../src/utils/ios/SkOSFile_iOS.mm', + + '../src/utils/mac/SkCreateCGImageRef.cpp', + '../experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig', + '../experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig', + ], + 'include_dirs' : [ + '../experimental/iOSSampleApp', + '../experimental/iOSSampleApp/iPad', + '../experimental/iOSSampleApp/iPhone', + '../include/utils/ios', + '../../include/gpu', + ], + 'xcode_config_file': '../experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig', + 'mac_bundle_resources' : [ + '../experimental/iOSSampleApp/iPad/MainWindow_iPad.xib', + '../experimental/iOSSampleApp/iPhone/MainWindow_iPhone.xib', + ], + }], + [ 'skia_os == "android"', { + 'sources!': [ + '../samplecode/SampleAnimator.cpp', + '../samplecode/SampleUnitMapper.cpp', + ], + 'dependencies!': [ + 'animator.gyp:animator', + 'experimental.gyp:experimental', + ], + 'dependencies': [ + 'android_system.gyp:sampleApp', + ], + }], + ], + 'msvs_settings': { + 'VCLinkerTool': { + 'SubSystem': '2', + 'AdditionalDependencies': [ + 'd3d9.lib', + ], + }, + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/SimpleCocoaApp.gyp b/gyp/SimpleCocoaApp.gyp new file mode 100644 index 0000000..ed35d54 --- /dev/null +++ b/gyp/SimpleCocoaApp.gyp @@ -0,0 +1,65 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'SimpleCocoaApp', + 'type': 'executable', + 'mac_bundle' : 1, + 'include_dirs' : [ + '../experimental/SimpleCocoaApp/', + ], + 'sources': [ + '../src/utils/mac/SkEventNotifier.h', + '../src/utils/mac/SkEventNotifier.mm', + '../src/utils/mac/skia_mac.mm', + '../src/utils/mac/SkNSView.h', + '../src/utils/mac/SkNSView.mm', + '../src/utils/mac/SkOptionsTableView.h', + '../src/utils/mac/SkOptionsTableView.mm', + '../src/utils/mac/SkOSWindow_Mac.mm', + '../src/utils/mac/SkTextFieldCell.h', + '../src/utils/mac/SkTextFieldCell.m', + + '../experimental/SimpleCocoaApp/SimpleApp-Info.plist', + '../experimental/SimpleCocoaApp/SimpleApp.h', + '../experimental/SimpleCocoaApp/SimpleApp.mm', + + ], + 'dependencies': [ + 'core.gyp:core', + 'opts.gyp:opts', + 'utils.gyp:utils', + 'views.gyp:views', + 'xml.gyp:xml', + ], + 'conditions' : [ + # Only supports Mac currently + [ 'skia_os == "mac"', { + 'sources': [ + '../include/utils/mac/SkCGUtils.h', + '../src/utils/mac/SkCreateCGImageRef.cpp', + ], + 'link_settings': { + 'libraries': [ + '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', + ], + }, + 'xcode_settings' : { + 'INFOPLIST_FILE' : '../experimental/SimpleCocoaApp/SimpleApp-Info.plist', + }, + 'mac_bundle_resources' : [ + '../experimental/SimpleCocoaApp/SimpleApp.xib', + ], + }], + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/all.gyp b/gyp/all.gyp new file mode 100644 index 0000000..37844bb --- /dev/null +++ b/gyp/all.gyp @@ -0,0 +1,41 @@ +# Creates a Makefile that is capable of building all executable targets. +# +# To build on Linux: +# ./gyp_skia && make all +# +# Building on other platforms not tested yet. +# + +# +# +# +# +# +# THIS IS DEPRECATED IN FAVOR OF trunk/skia.gyp !!! +# Questions? Contact epoger@google.com +# +# +# +# + +{ + 'targets': [ + { + 'target_name': 'all', + 'type': 'none', + 'dependencies': [ + 'bench.gyp:bench', + 'gm.gyp:gm', + 'SampleApp.gyp:SampleApp', + 'tests.gyp:tests', + 'tools.gyp:tools', + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/android_system.gyp b/gyp/android_system.gyp new file mode 100644 index 0000000..27a82f3 --- /dev/null +++ b/gyp/android_system.gyp @@ -0,0 +1,21 @@ +# This GYP file stores the dependencies necessary to build Skia on the Android +# platform. The OS doesn't provide many stable libraries as part of the +# distribution so we have to build a few of them ourselves. +# +# We tried adding this gyp file to the android directory at the root of +# the Skia repo, but that resulted in the generated makefiles being created +# outside of the intended output directory. So to avoid this we created a simple +# shim here that includes the android_system.gypi file. The actual dependencies +# are defined and maintained in that gypi file. +# +# Also this assumes that the android directory is a sibling to the directory +# that contains your primary Skia checkout. If it is not then you must manually +# edit the includes below to specify the actual location of the android.gypi. +# This is due to the fact that we cannot use variables in an includes as the +# variable expansion step for gyp happens after the includes are processed. +{ + 'includes': [ + 'common.gypi', + '../../android/gyp/android.gypi', + ], +}
\ No newline at end of file diff --git a/gyp/animator.gyp b/gyp/animator.gyp new file mode 100644 index 0000000..fc61e71 --- /dev/null +++ b/gyp/animator.gyp @@ -0,0 +1,193 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'animator', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/effects', + '../include/animator', + '../include/views', + '../include/xml', + '../include/utils', + '../include/images', + ], + 'sources': [ + '../include/animator/SkAnimator.h', + '../include/animator/SkAnimatorView.h', + + '../src/animator/SkAnimate.h', + '../src/animator/SkAnimateActive.cpp', + '../src/animator/SkAnimateActive.h', + '../src/animator/SkAnimateBase.cpp', + '../src/animator/SkAnimateBase.h', + '../src/animator/SkAnimateField.cpp', + '../src/animator/SkAnimateMaker.cpp', + '../src/animator/SkAnimateMaker.h', + '../src/animator/SkAnimateProperties.h', + '../src/animator/SkAnimateSet.cpp', + '../src/animator/SkAnimateSet.h', + '../src/animator/SkAnimator.cpp', + '../src/animator/SkAnimatorScript.cpp', + '../src/animator/SkAnimatorScript.h', + #'../src/animator/SkAnimatorScript2.cpp', fails on windows + #'../src/animator/SkAnimatorScript2.h', + '../src/animator/SkBase64.cpp', + '../src/animator/SkBase64.h', + '../src/animator/SkBoundable.cpp', + '../src/animator/SkBoundable.h', + '../src/animator/SkBuildCondensedInfo.cpp', + #'../src/animator/SkCondensedDebug.cpp', fails on windows + #'../src/animator/SkCondensedRelease.cpp', + '../src/animator/SkDisplayable.cpp', + '../src/animator/SkDisplayable.h', + '../src/animator/SkDisplayAdd.cpp', + '../src/animator/SkDisplayAdd.h', + '../src/animator/SkDisplayApply.cpp', + '../src/animator/SkDisplayApply.h', + '../src/animator/SkDisplayBounds.cpp', + '../src/animator/SkDisplayBounds.h', + '../src/animator/SkDisplayEvent.cpp', + '../src/animator/SkDisplayEvent.h', + '../src/animator/SkDisplayEvents.cpp', + '../src/animator/SkDisplayEvents.h', + '../src/animator/SkDisplayInclude.cpp', + '../src/animator/SkDisplayInclude.h', + '../src/animator/SkDisplayInput.cpp', + '../src/animator/SkDisplayInput.h', + '../src/animator/SkDisplayList.cpp', + '../src/animator/SkDisplayList.h', + '../src/animator/SkDisplayMath.cpp', + '../src/animator/SkDisplayMath.h', + '../src/animator/SkDisplayMovie.cpp', + '../src/animator/SkDisplayMovie.h', + '../src/animator/SkDisplayNumber.cpp', + '../src/animator/SkDisplayNumber.h', + '../src/animator/SkDisplayPost.cpp', + '../src/animator/SkDisplayPost.h', + '../src/animator/SkDisplayRandom.cpp', + '../src/animator/SkDisplayRandom.h', + '../src/animator/SkDisplayScreenplay.cpp', + '../src/animator/SkDisplayScreenplay.h', + '../src/animator/SkDisplayType.cpp', + '../src/animator/SkDisplayType.h', + '../src/animator/SkDisplayTypes.cpp', + '../src/animator/SkDisplayTypes.h', + '../src/animator/SkDisplayXMLParser.cpp', + '../src/animator/SkDisplayXMLParser.h', + '../src/animator/SkDraw3D.cpp', + '../src/animator/SkDraw3D.h', + '../src/animator/SkDrawable.cpp', + '../src/animator/SkDrawable.h', + '../src/animator/SkDrawBitmap.cpp', + '../src/animator/SkDrawBitmap.h', + '../src/animator/SkDrawBlur.cpp', + '../src/animator/SkDrawBlur.h', + '../src/animator/SkDrawClip.cpp', + '../src/animator/SkDrawClip.h', + '../src/animator/SkDrawColor.cpp', + '../src/animator/SkDrawColor.h', + '../src/animator/SkDrawDash.cpp', + '../src/animator/SkDrawDash.h', + '../src/animator/SkDrawDiscrete.cpp', + '../src/animator/SkDrawDiscrete.h', + '../src/animator/SkDrawEmboss.cpp', + '../src/animator/SkDrawEmboss.h', + '../src/animator/SkDrawExtraPathEffect.cpp', + '../src/animator/SkDrawFull.cpp', + '../src/animator/SkDrawFull.h', + '../src/animator/SkDrawGradient.cpp', + '../src/animator/SkDrawGradient.h', + '../src/animator/SkDrawGroup.cpp', + '../src/animator/SkDrawGroup.h', + '../src/animator/SkDrawLine.cpp', + '../src/animator/SkDrawLine.h', + '../src/animator/SkDrawMatrix.cpp', + '../src/animator/SkDrawMatrix.h', + '../src/animator/SkDrawOval.cpp', + '../src/animator/SkDrawOval.h', + '../src/animator/SkDrawPaint.cpp', + '../src/animator/SkDrawPaint.h', + '../src/animator/SkDrawPath.cpp', + '../src/animator/SkDrawPath.h', + '../src/animator/SkDrawPoint.cpp', + '../src/animator/SkDrawPoint.h', + '../src/animator/SkDrawRectangle.cpp', + '../src/animator/SkDrawRectangle.h', + '../src/animator/SkDrawSaveLayer.cpp', + '../src/animator/SkDrawSaveLayer.h', + '../src/animator/SkDrawShader.cpp', + '../src/animator/SkDrawShader.h', + '../src/animator/SkDrawText.cpp', + '../src/animator/SkDrawText.h', + '../src/animator/SkDrawTextBox.cpp', + '../src/animator/SkDrawTextBox.h', + '../src/animator/SkDrawTo.cpp', + '../src/animator/SkDrawTo.h', + '../src/animator/SkDrawTransparentShader.cpp', + '../src/animator/SkDrawTransparentShader.h', + '../src/animator/SkDump.cpp', + '../src/animator/SkDump.h', + '../src/animator/SkExtras.h', + '../src/animator/SkGetCondensedInfo.cpp', + '../src/animator/SkHitClear.cpp', + '../src/animator/SkHitClear.h', + '../src/animator/SkHitTest.cpp', + '../src/animator/SkHitTest.h', + '../src/animator/SkIntArray.h', + '../src/animator/SkMatrixParts.cpp', + '../src/animator/SkMatrixParts.h', + '../src/animator/SkMemberInfo.cpp', + '../src/animator/SkMemberInfo.h', + '../src/animator/SkOpArray.cpp', + '../src/animator/SkOpArray.h', + '../src/animator/SkOperand.h', + '../src/animator/SkOperand2.h', + '../src/animator/SkOperandInterpolator.h', + '../src/animator/SkOperandIterpolator.cpp', + '../src/animator/SkPaintParts.cpp', + '../src/animator/SkPaintParts.h', + '../src/animator/SkParseSVGPath.cpp', + '../src/animator/SkPathParts.cpp', + '../src/animator/SkPathParts.h', + '../src/animator/SkPostParts.cpp', + '../src/animator/SkPostParts.h', + '../src/animator/SkScript.cpp', + '../src/animator/SkScript.h', + '../src/animator/SkScript2.h', + '../src/animator/SkScriptCallBack.h', + '../src/animator/SkScriptDecompile.cpp', + '../src/animator/SkScriptRuntime.cpp', + '../src/animator/SkScriptRuntime.h', + '../src/animator/SkScriptTokenizer.cpp', + '../src/animator/SkSnapshot.cpp', + '../src/animator/SkSnapshot.h', + '../src/animator/SkTDArray_Experimental.h', + '../src/animator/SkTextOnPath.cpp', + '../src/animator/SkTextOnPath.h', + '../src/animator/SkTextToPath.cpp', + '../src/animator/SkTextToPath.h', + '../src/animator/SkTime.cpp', + '../src/animator/SkTypedArray.cpp', + '../src/animator/SkTypedArray.h', + '../src/animator/SkXMLAnimatorWriter.cpp', + '../src/animator/SkXMLAnimatorWriter.h', + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/animator', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/apptype_console.gypi b/gyp/apptype_console.gypi new file mode 100644 index 0000000..f2f6e1c --- /dev/null +++ b/gyp/apptype_console.gypi @@ -0,0 +1,21 @@ +# target_defaults used for executable targets that generate a console app +{ + 'target_defaults': { + 'msvs_settings': { + 'VCLinkerTool': { + #Allows for creation / output to console. + #Console (/SUBSYSTEM:CONSOLE) + 'SubSystem': '1', + + #Console app, use main/wmain + 'EntryPointSymbol': 'mainCRTStartup', + }, + }, + }, +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/bench.gyp b/gyp/bench.gyp new file mode 100644 index 0000000..0c5e2ea --- /dev/null +++ b/gyp/bench.gyp @@ -0,0 +1,36 @@ +# GYP file to build performance testbench. +# +{ + 'includes': [ + 'apptype_console.gypi', + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'bench', + 'type': 'executable', + 'include_dirs' : [ + '../src/core', + '../src/gpu', + ], + 'includes': [ + 'bench.gypi' + ], + 'dependencies': [ + 'core.gyp:core', + 'effects.gyp:effects', + 'gpu.gyp:gr', + 'gpu.gyp:skgr', + 'images.gyp:images', + 'ports.gyp:ports', + 'utils.gyp:utils', + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/bench.gypi b/gyp/bench.gypi new file mode 100644 index 0000000..5fbfef7 --- /dev/null +++ b/gyp/bench.gypi @@ -0,0 +1,71 @@ +# sources and conditions used in skia's bench.gyp and chromium's skia.gyp +# +{ + 'sources': [ + '../bench/benchmain.cpp', + '../bench/BenchTimer.h', + '../bench/BenchTimer.cpp', + '../bench/BenchSysTimer_mach.h', + '../bench/BenchSysTimer_mach.cpp', + '../bench/BenchSysTimer_posix.h', + '../bench/BenchSysTimer_posix.cpp', + '../bench/BenchSysTimer_windows.h', + '../bench/BenchSysTimer_windows.cpp', + '../bench/BenchGpuTimer_gl.h', + '../bench/BenchGpuTimer_gl.cpp', + + '../bench/SkBenchmark.h', + '../bench/SkBenchmark.cpp', + + '../bench/AAClipBench.cpp', + '../bench/BitmapBench.cpp', + '../bench/BlurBench.cpp', + '../bench/ChromeBench.cpp', + '../bench/DecodeBench.cpp', + '../bench/FontScalerBench.cpp', + '../bench/GradientBench.cpp', + '../bench/MathBench.cpp', + '../bench/MatrixBench.cpp', + '../bench/MutexBench.cpp', + '../bench/PathBench.cpp', + '../bench/RectBench.cpp', + '../bench/RepeatTileBench.cpp', + '../bench/ScalarBench.cpp', + '../bench/ShaderMaskBench.cpp', + '../bench/TextBench.cpp', + '../bench/VertBench.cpp', + ], + 'conditions': [ + [ 'skia_os != "mac"', { + 'sources!': [ + '../bench/BenchSysTimer_mach.h', + '../bench/BenchSysTimer_mach.cpp', + ], + }], + [ 'skia_os not in ["linux", "freebsd", "openbsd", "solaris", "android"]', { + 'sources!': [ + '../bench/BenchSysTimer_posix.h', + '../bench/BenchSysTimer_posix.cpp', + ], + }], + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', { + 'link_settings': { + 'libraries': [ + '-lrt', + ], + }, + }], + [ 'skia_os != "win"', { + 'sources!': [ + '../bench/BenchSysTimer_windows.h', + '../bench/BenchSysTimer_windows.cpp', + ], + }], + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/common.gypi b/gyp/common.gypi new file mode 100644 index 0000000..30424de --- /dev/null +++ b/gyp/common.gypi @@ -0,0 +1,70 @@ +# Copyright 2011 The Android Open Source Project +# +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +{ + 'includes': [ + 'common_variables.gypi', + ], + 'target_defaults': { + + # Validate the 'skia_os' setting against 'OS', because only certain + # combinations work. You should only override 'skia_os' for certain + # situations, like building for iOS on a Mac. + 'variables': { + 'conditions': [ + ['skia_os != OS and not (skia_os == "ios" and OS == "mac")', + {'error': '<!(Cannot build with skia_os=<(skia_os) on OS=<(OS))'}], + ['skia_mesa and skia_os not in ["mac", "linux"]', + {'error': '<!(skia_mesa=1 only supported with skia_os="mac" or "linux".)'}], + ], + }, + 'includes': [ + 'common_conditions.gypi' + ], + 'conditions': [ + [ 'skia_scalar == "float"', + { + 'defines': [ + 'SK_SCALAR_IS_FLOAT', + 'SK_CAN_USE_FLOAT', + ], + }, { # else, skia_scalar != "float" + 'defines': [ + 'SK_SCALAR_IS_FIXED', + 'SK_CAN_USE_FLOAT', # we can still use floats along the way + ], + } + ], + [ 'skia_mesa', { + 'defines': [ + 'SK_MESA', + ], + 'direct_dependent_settings': { + 'defines': [ + 'SK_MESA', + ], + }, + }], + ], + 'configurations': { + 'Debug': { + 'defines': [ + 'SK_DEBUG', + 'GR_DEBUG=1', + ], + }, + 'Release': { + 'defines': [ + 'SK_RELEASE', + 'GR_RELEASE=1', + ], + }, + }, + }, # end 'target_defaults' +} +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/common_conditions.gypi b/gyp/common_conditions.gypi new file mode 100644 index 0000000..e18cbc1 --- /dev/null +++ b/gyp/common_conditions.gypi @@ -0,0 +1,212 @@ +# conditions used in both common.gypi and skia.gyp in chromium +# +{ + 'conditions' : [ + + ['skia_os == "win"', + { + 'defines': [ + 'SK_BUILD_FOR_WIN32', + 'SK_IGNORE_STDINT_DOT_H', + '_CRT_SECURE_NO_WARNINGS', + ], + 'msvs_cygwin_shell': 0, + 'msvs_settings': { + 'VCCLCompilerTool': { + 'WarningLevel': '1', + 'WarnAsError': 'false', + 'DebugInformationFormat': '3', + 'AdditionalOptions': [ '/MP' ], + }, + 'VCLinkerTool': { + 'AdditionalDependencies': [ + 'OpenGL32.lib', + 'usp10.lib', + ], + }, + }, + 'configurations': { + 'Debug': { + 'msvs_settings': { + 'VCCLCompilerTool': { + 'DebugInformationFormat': '4', # editAndContiue (/ZI) + 'ProgramDataBaseFileName': '$(OutDir)\\$(ProjectName).pdb', + 'Optimization': '0', # optimizeDisabled (/Od) + 'PreprocessorDefinitions': ['_DEBUG'], + 'RuntimeLibrary': '3', # rtMultiThreadedDebugDLL (/MDd) + 'ExceptionHandling': '0', + 'RuntimeTypeInfo': 'false', # /GR- + 'WarningLevel': '3', # level3 (/W3) + }, + 'VCLinkerTool': { + 'GenerateDebugInformation': 'true', # /DEBUG + 'LinkIncremental': '2', # /INCREMENTAL + }, + }, + }, + 'Release': { + 'msvs_settings': { + 'VCCLCompilerTool': { + 'DebugInformationFormat': '3', # programDatabase (/Zi) + 'ProgramDataBaseFileName': '$(OutDir)\\$(ProjectName).pdb', + 'Optimization': '3', # full (/Ox) + 'WholeProgramOptimization': 'true', #/GL + # Changing the floating point model requires rebaseling gm images + #'FloatingPointModel': '2', # fast (/fp:fast) + 'FavorSizeOrSpeed': '1', # speed (/Ot) + 'PreprocessorDefinitions': ['NDEBUG'], + 'RuntimeLibrary': '2', # rtMultiThreadedDLL (/MD) + 'ExceptionHandling': '0', + 'RuntimeTypeInfo': 'false', # /GR- + 'WarningLevel': '3', # level3 (/W3) + }, + 'VCLinkerTool': { + 'GenerateDebugInformation': 'true', # /DEBUG + 'LinkTimeCodeGeneration': '1', # useLinkTimeCodeGeneration /LTCG + }, + 'VCLibrarianTool': { + 'LinkTimeCodeGeneration': 'true', # useLinkTimeCodeGeneration /LTCG + }, + }, + }, + }, + }, + ], + + ['skia_os in ["linux", "freebsd", "openbsd", "solaris"]', + { + 'defines': [ + 'SK_SAMPLES_FOR_X', + 'SK_BUILD_FOR_UNIX', + ], + 'configurations': { + 'Debug': { + 'cflags': ['-g'] + }, + 'Release': { + 'cflags': ['-O2'] + }, + }, + 'cflags': [ + # TODO(tony): Enable -Werror once all the strict-aliasing problems + # are fixed. + #'-Werror', + '-Wall', + '-Wextra', + '-Wno-unused', + # suppressions below here were added for clang + '-Wno-unused-parameter', + '-Wno-c++11-extensions' + ], + 'include_dirs' : [ + '/usr/include/freetype2', + ], + }, + ], + + ['skia_os == "mac"', + { + 'defines': [ + 'SK_BUILD_FOR_MAC', + ], + 'configurations': { + 'Debug': { + 'xcode_settings': { + 'GCC_OPTIMIZATION_LEVEL': '0', + }, + }, + 'Release': { + 'xcode_settings': { + 'GCC_OPTIMIZATION_LEVEL': '3', + }, + }, + }, + 'xcode_settings': { + 'SYMROOT': '<(DEPTH)/xcodebuild', + 'SDKROOT': 'macosx10.6', +# trying to get this to work, but it needs clang I think... +# 'WARNING_CFLAGS': '-Wexit-time-destructors', + 'CLANG_WARN_CXX0X_EXTENSIONS': 'NO', + }, + }, + ], + + ['skia_os == "ios"', + { + 'defines': [ + 'SK_BUILD_FOR_IOS', + ], + 'configurations': { + 'Debug': { + 'xcode_settings': { + 'GCC_OPTIMIZATION_LEVEL': '0', + }, + }, + }, + 'xcode_settings': { + 'SYMROOT': '<(DEPTH)/xcodebuild', + }, + }, + ], + + ['skia_os == "android"', + { + 'defines': [ + 'SK_BUILD_FOR_ANDROID', + 'SK_BUILD_FOR_ANDROID_NDK', + 'SK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0', + ], + 'configurations': { + 'Debug': { + 'cflags': ['-g'] + }, + 'Release': { + 'cflags': ['-O2'] + }, + }, + 'libraries': [ + '-lstdc++', + '-lm', + '-llog', + ], + 'cflags': [ + '-fno-exceptions', + '-fno-rtti', + ], + 'conditions': [ + [ 'skia_target_arch == "arm" and arm_thumb == 1', { + 'cflags': [ + '-mthumb', + ], + }], + [ 'skia_target_arch == "arm" and armv7 == 1', { + 'defines': [ + '__ARM_ARCH__=7', + ], + 'cflags': [ + '-march=armv7-a', + ], + 'conditions': [ + [ 'arm_neon == 1', { + 'defines': [ + '__ARM_HAVE_NEON', + ], + 'cflags': [ + '-mfloat-abi=softfp', + '-mfpu=neon', + ], + }], + ], + }], + ], + }, + ], + + ], # end 'conditions' +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/common_variables.gypi b/gyp/common_variables.gypi new file mode 100644 index 0000000..94e2b9b --- /dev/null +++ b/gyp/common_variables.gypi @@ -0,0 +1,25 @@ +# variables used in both common.gypi and skia.gyp in chromium +# +{ + # Define all variables, allowing for override in GYP_DEFINES. + # + # One such variable is 'skia_os', which we use instead of 'OS' throughout + # our gyp files. We set it automatically based on 'OS', but allow the + # user to override it via GYP_DEFINES if they like. + 'variables': { + 'skia_scalar%': 'float', + 'skia_os%': '<(OS)', + 'skia_mesa%': 0, + 'skia_target_arch%': '', + }, + 'skia_scalar%': '<(skia_scalar)', + 'skia_os': '<(skia_os)', + 'skia_mesa': '<(skia_mesa)', + 'skia_target_arch': '<(skia_target_arch)', +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/core.gyp b/gyp/core.gyp new file mode 100644 index 0000000..f83f482 --- /dev/null +++ b/gyp/core.gyp @@ -0,0 +1,327 @@ +# Core Skia library code. +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'core', + 'type': 'static_library', + 'msvs_guid': 'B7760B5E-BFA8-486B-ACFD-49E3A6DE8E76', + 'sources': [ + '../src/core/ARGB32_Clamp_Bilinear_BitmapShader.h', + '../src/core/Sk64.cpp', + '../src/core/SkAAClip.cpp', + '../src/core/SkAdvancedTypefaceMetrics.cpp', + '../src/core/SkAlphaRuns.cpp', + '../src/core/SkAntiRun.h', + '../src/core/SkBitmap.cpp', + '../src/core/SkBitmapProcShader.cpp', + '../src/core/SkBitmapProcShader.h', + '../src/core/SkBitmapProcState.cpp', + '../src/core/SkBitmapProcState.h', + '../src/core/SkBitmapProcState_matrix.h', + '../src/core/SkBitmapProcState_matrixProcs.cpp', + '../src/core/SkBitmapProcState_sample.h', + '../src/core/SkBitmapSampler.cpp', + '../src/core/SkBitmapSampler.h', + '../src/core/SkBitmapSamplerTemplate.h', + '../src/core/SkBitmapShader16BilerpTemplate.h', + '../src/core/SkBitmapShaderTemplate.h', + '../src/core/SkBitmap_scroll.cpp', + '../src/core/SkBlitBWMaskTemplate.h', + '../src/core/SkBlitMask_D32.cpp', + '../src/core/SkBlitRow_D16.cpp', + '../src/core/SkBlitRow_D32.cpp', + '../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/SkBuffer.cpp', + '../src/core/SkCanvas.cpp', + '../src/core/SkChunkAlloc.cpp', + '../src/core/SkClampRange.cpp', + '../src/core/SkClipStack.cpp', + '../src/core/SkColor.cpp', + '../src/core/SkColorFilter.cpp', + '../src/core/SkColorTable.cpp', + '../src/core/SkComposeShader.cpp', + '../src/core/SkConcaveToTriangles.cpp', + '../src/core/SkConcaveToTriangles.h', + '../src/core/SkConfig8888.h', + '../src/core/SkCordic.cpp', + '../src/core/SkCordic.h', + '../src/core/SkCoreBlitters.h', + '../src/core/SkCubicClipper.cpp', + '../src/core/SkCubicClipper.h', + '../src/core/SkData.cpp', + '../src/core/SkDebug.cpp', + '../src/core/SkDeque.cpp', + '../src/core/SkDevice.cpp', + '../src/core/SkDither.cpp', + '../src/core/SkDraw.cpp', + '../src/core/SkDrawProcs.h', + '../src/core/SkEdgeBuilder.cpp', + '../src/core/SkEdgeClipper.cpp', + '../src/core/SkEdge.cpp', + '../src/core/SkEdge.h', + '../src/core/SkFP.h', + '../src/core/SkFilterProc.cpp', + '../src/core/SkFilterProc.h', + '../src/core/SkFlattenable.cpp', + '../src/core/SkFloat.cpp', + '../src/core/SkFloat.h', + '../src/core/SkFloatBits.cpp', + '../src/core/SkFontHost.cpp', + '../src/core/SkGeometry.cpp', + '../src/core/SkGlyphCache.cpp', + '../src/core/SkGlyphCache.h', + '../src/core/SkGraphics.cpp', + '../src/core/SkLineClipper.cpp', + '../src/core/SkMallocPixelRef.cpp', + '../src/core/SkMask.cpp', + '../src/core/SkMaskFilter.cpp', + '../src/core/SkMath.cpp', + '../src/core/SkMatrix.cpp', + '../src/core/SkMetaData.cpp', + '../src/core/SkMMapStream.cpp', + '../src/core/SkPackBits.cpp', + '../src/core/SkPaint.cpp', + '../src/core/SkPath.cpp', + '../src/core/SkPathEffect.cpp', + '../src/core/SkPathHeap.cpp', + '../src/core/SkPathHeap.h', + '../src/core/SkPathMeasure.cpp', + '../src/core/SkPicture.cpp', + '../src/core/SkPictureFlat.cpp', + '../src/core/SkPictureFlat.h', + '../src/core/SkPicturePlayback.cpp', + '../src/core/SkPicturePlayback.h', + '../src/core/SkPictureRecord.cpp', + '../src/core/SkPictureRecord.h', + '../src/core/SkPixelRef.cpp', + '../src/core/SkPoint.cpp', + '../src/core/SkProcSpriteBlitter.cpp', + '../src/core/SkPtrRecorder.cpp', + '../src/core/SkQuadClipper.cpp', + '../src/core/SkQuadClipper.h', + '../src/core/SkRasterClip.cpp', + '../src/core/SkRasterizer.cpp', + '../src/core/SkRect.cpp', + '../src/core/SkRefDict.cpp', + '../src/core/SkRegion.cpp', + '../src/core/SkRegionPriv.h', + '../src/core/SkRegion_path.cpp', + '../src/core/SkScalar.cpp', + '../src/core/SkScalerContext.cpp', + '../src/core/SkScan.cpp', + '../src/core/SkScanPriv.h', + '../src/core/SkScan_AntiPath.cpp', + '../src/core/SkScan_Antihair.cpp', + '../src/core/SkScan_Hairline.cpp', + '../src/core/SkScan_Path.cpp', + '../src/core/SkShader.cpp', + '../src/core/SkShape.cpp', + '../src/core/SkSpriteBlitter_ARGB32.cpp', + '../src/core/SkSpriteBlitter_RGB16.cpp', + '../src/core/SkSinTable.h', + '../src/core/SkSpriteBlitter.h', + '../src/core/SkSpriteBlitterTemplate.h', + '../src/core/SkStream.cpp', + '../src/core/SkString.cpp', + '../src/core/SkStroke.cpp', + '../src/core/SkStrokerPriv.cpp', + '../src/core/SkStrokerPriv.h', + '../src/core/SkTextFormatParams.h', + '../src/core/SkTSearch.cpp', + '../src/core/SkTSort.h', + '../src/core/SkTemplatesPriv.h', + '../src/core/SkTypeface.cpp', + '../src/core/SkTypefaceCache.cpp', + '../src/core/SkTypefaceCache.h', + '../src/core/SkUnPreMultiply.cpp', + '../src/core/SkUtils.cpp', + '../src/core/SkWriter32.cpp', + '../src/core/SkXfermode.cpp', + + '../include/core/Sk64.h', + '../include/core/SkAdvancedTypefaceMetrics.h', + '../include/core/SkAutoKern.h', + '../include/core/SkBitmap.h', + '../include/core/SkBlitRow.h', + '../include/core/SkBlitter.h', + '../include/core/SkBounder.h', + '../include/core/SkBuffer.h', + '../include/core/SkCanvas.h', + '../include/core/SkChunkAlloc.h', + '../include/core/SkClampRange.h', + '../include/core/SkClipStack.h', + '../include/core/SkColor.h', + '../include/core/SkColorFilter.h', + '../include/core/SkColorPriv.h', + '../include/core/SkColorShader.h', + '../include/core/SkComposeShader.h', + '../include/core/SkData.h', + '../include/core/SkDeque.h', + '../include/core/SkDescriptor.h', + '../include/core/SkDevice.h', + '../include/core/SkDither.h', + '../include/core/SkDraw.h', + '../include/core/SkDrawFilter.h', + '../include/core/SkDrawLooper.h', + '../include/core/SkEndian.h', + '../include/core/SkFDot6.h', + '../include/core/SkFixed.h', + '../include/core/SkFlattenable.h', + '../include/core/SkFloatBits.h', + '../include/core/SkFloatingPoint.h', + '../include/core/SkFontHost.h', + '../include/core/SkGeometry.h', + '../include/core/SkGraphics.h', + '../include/core/SkMallocPixelRef.h', + '../include/core/SkMask.h', + '../include/core/SkMaskFilter.h', + '../include/core/SkMath.h', + '../include/core/SkMatrix.h', + '../include/core/SkMetaData.h', + '../include/core/SkMMapStream.h', + '../include/core/SkOSFile.h', + '../include/core/SkPackBits.h', + '../include/core/SkPaint.h', + '../include/core/SkPath.h', + '../include/core/SkPathEffect.h', + '../include/core/SkPathMeasure.h', + '../include/core/SkPerspIter.h', + '../include/core/SkPicture.h', + '../include/core/SkPixelRef.h', + '../include/core/SkPoint.h', + '../include/core/SkPtrRecorder.h', + '../include/core/SkRandom.h', + '../include/core/SkRasterizer.h', + '../include/core/SkReader32.h', + '../include/core/SkRect.h', + '../include/core/SkRefCnt.h', + '../include/core/SkRefDict.h', + '../include/core/SkRegion.h', + '../include/core/SkScalar.h', + '../include/core/SkScalarCompare.h', + '../include/core/SkScalerContext.h', + '../include/core/SkScan.h', + '../include/core/SkShader.h', + '../include/core/SkStream.h', + '../include/core/SkString.h', + '../include/core/SkStroke.h', + '../include/core/SkTArray.h', + '../include/core/SkTDArray.h', + '../include/core/SkTDStack.h', + '../include/core/SkTDict.h', + '../include/core/SkTRegistry.h', + '../include/core/SkTScopedPtr.h', + '../include/core/SkTSearch.h', + '../include/core/SkTemplates.h', + '../include/core/SkThread.h', + '../include/core/SkThread_platform.h', + '../include/core/SkTime.h', + '../include/core/SkTLazy.h', + '../include/core/SkTrace.h', + '../include/core/SkTypeface.h', + '../include/core/SkTypes.h', + '../include/core/SkUnPreMultiply.h', + '../include/core/SkUnitMapper.h', + '../include/core/SkUtils.h', + '../include/core/SkWriter32.h', + '../include/core/SkXfermode.h', + ], + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/ports', + '../include/xml', + '../src/core', + ], + 'msvs_disabled_warnings': [4244, 4267,4345, 4390, 4554, 4800], + 'conditions': [ + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', { + 'cflags': [ + '-Wno-unused', + '-Wno-unused-function', + ], + 'link_settings': { + 'libraries': [ + '-lfreetype', + '-lpthread', + ], + }, + }], + [ 'skia_os == "mac"', { + 'include_dirs': [ + '../include/utils/mac', + '../third_party/freetype/include/**', + ], + 'sources': [ + '../include/utils/mac/SkCGUtils.h', + ], + 'link_settings': { + 'libraries': [ + '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework', + ], + }, + }], + [ 'skia_os == "ios"', { + 'include_dirs': [ + '../include/utils/ios', + ], + 'sources': [ + '../include/utils/mac/SkCGUtils.h', + ], + 'link_settings': { + 'libraries': [ + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/CoreFoundation.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/CoreGraphics.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/CoreText.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/UIKit.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/Foundation.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/QuartzCore.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/OpenGLES.framework', + ], + }, + }], + [ 'skia_os == "win"', { + 'include_dirs': [ + 'config/win', + ], + 'sources!': [ + '../include/core/SkMMapStream.h', + '../src/core/SkMMapStream.cpp', + ], + }], + [ 'skia_os == "android"', { + 'dependencies': [ + 'android_system.gyp:ft2', + ], + }], + ], + 'direct_dependent_settings': { + 'include_dirs': [ + 'config', + '../include/config', + '../include/core', + 'ext', + ], + }, + 'dependencies': [ + 'opts.gyp:opts' + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/effects.gyp b/gyp/effects.gyp new file mode 100644 index 0000000..28f0017 --- /dev/null +++ b/gyp/effects.gyp @@ -0,0 +1,92 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'effects', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/effects', + ], + 'sources': [ + '../include/effects/Sk1DPathEffect.h', + '../include/effects/Sk2DPathEffect.h', + '../include/effects/SkAvoidXfermode.h', + '../include/effects/SkArithmeticMode.h', + '../include/effects/SkBlurDrawLooper.h', + '../include/effects/SkBlurImageFilter.h', + '../include/effects/SkBlurMaskFilter.h', + '../include/effects/SkColorMatrix.h', + '../include/effects/SkColorMatrixFilter.h', + '../include/effects/SkCornerPathEffect.h', + '../include/effects/SkDashPathEffect.h', + '../include/effects/SkDiscretePathEffect.h', + '../include/effects/SkDrawExtraPathEffect.h', + '../include/effects/SkEffects.h', + '../include/effects/SkEmbossMaskFilter.h', + '../include/effects/SkGradientShader.h', + '../include/effects/SkGroupShape.h', + '../include/effects/SkKernel33MaskFilter.h', + '../include/effects/SkLayerDrawLooper.h', + '../include/effects/SkLayerRasterizer.h', + '../include/effects/SkPaintFlagsDrawFilter.h', + '../include/effects/SkPixelXorXfermode.h', + '../include/effects/SkPorterDuff.h', + '../include/effects/SkRectShape.h', + '../include/effects/SkTableColorFilter.h', + '../include/effects/SkTableMaskFilter.h', + '../include/effects/SkTransparentShader.h', + + '../src/effects/Sk1DPathEffect.cpp', + '../src/effects/Sk2DPathEffect.cpp', + '../src/effects/SkAvoidXfermode.cpp', + '../src/effects/SkArithmeticMode.cpp', + '../src/effects/SkBitmapCache.cpp', + '../src/effects/SkBitmapCache.h', + '../src/effects/SkBlurDrawLooper.cpp', + '../src/effects/SkBlurMask.cpp', + '../src/effects/SkBlurMask.h', + '../src/effects/SkBlurImageFilter.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/SkEffects.cpp', + '../src/effects/SkEmbossMask.cpp', + '../src/effects/SkEmbossMask.h', + '../src/effects/SkEmbossMask_Table.h', + '../src/effects/SkEmbossMaskFilter.cpp', + '../src/effects/SkGradientShader.cpp', + '../src/effects/SkGroupShape.cpp', + '../src/effects/SkKernel33MaskFilter.cpp', + '../src/effects/SkLayerDrawLooper.cpp', + '../src/effects/SkLayerRasterizer.cpp', + '../src/effects/SkPaintFlagsDrawFilter.cpp', + '../src/effects/SkPixelXorXfermode.cpp', + '../src/effects/SkPorterDuff.cpp', + '../src/effects/SkRadialGradient_Table.h', + '../src/effects/SkRectShape.cpp', + '../src/effects/SkTableColorFilter.cpp', + '../src/effects/SkTableMaskFilter.cpp', + '../src/effects/SkTestImageFilters.cpp', + '../src/effects/SkTransparentShader.cpp', + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/effects', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/experimental.gyp b/gyp/experimental.gyp new file mode 100644 index 0000000..c5b8c5e --- /dev/null +++ b/gyp/experimental.gyp @@ -0,0 +1,31 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'experimental', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + ], + 'sources': [ + '../experimental/SkSetPoly3To3.cpp', + '../experimental/SkSetPoly3To3_A.cpp', + '../experimental/SkSetPoly3To3_D.cpp', + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../experimental', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/freetype.gyp b/gyp/freetype.gyp new file mode 100644 index 0000000..e86a338 --- /dev/null +++ b/gyp/freetype.gyp @@ -0,0 +1,69 @@ +{ +# 'includes': [ +# 'common.gypi', +# ], + 'targets': [ + { + 'target_name': 'skfreetype', + 'type': 'static_library', + 'sources': [ + '../third_party/freetype/src/base/ftbbox.c', + '../third_party/freetype/src/base/ftbitmap.c', + '../third_party/freetype/src/base/ftglyph.c', + '../third_party/freetype/src/base/ftlcdfil.c', + '../third_party/freetype/src/base/ftstroke.c', + '../third_party/freetype/src/base/ftxf86.c', + '../third_party/freetype/src/base/ftbase.c', + '../third_party/freetype/src/base/ftsystem.c', + '../third_party/freetype/src/base/ftinit.c', + '../third_party/freetype/src/base/ftgasp.c', + '../third_party/freetype/src/base/ftfstype.c', + '../third_party/freetype/src/raster/raster.c', + '../third_party/freetype/src/sfnt/sfnt.c', + '../third_party/freetype/src/smooth/smooth.c', + '../third_party/freetype/src/autofit/autofit.c', + '../third_party/freetype/src/truetype/truetype.c', + '../third_party/freetype/src/cff/cff.c', + '../third_party/freetype/src/psnames/psnames.c', + '../third_party/freetype/src/pshinter/pshinter.c', + +# added for linker + '../third_party/freetype/src/lzw/ftlzw.c', + '../third_party/freetype/src/gzip/ftgzip.c', + '../third_party/freetype/src/cid/type1cid.c', + '../third_party/freetype/src/bdf/bdf.c', + '../third_party/freetype/src/psaux/psaux.c', + '../third_party/freetype/src/pcf/pcf.c', + '../third_party/freetype/src/pfr/pfr.c', + '../third_party/freetype/src/type1/type1.c', + '../third_party/freetype/src/type42/type42.c', + '../third_party/freetype/src/winfonts/winfnt.c', + ], + 'include_dirs': [ + '../third_party/freetype/internal', + '../third_party/freetype/builds', + '../third_party/freetype/include', + '../third_party/freetype', + ], + 'cflags': [ + '-W', + '-Wall', + '-fPIC', + '-DPIC', + '-DDARWIN_NO_CARBON', + '-DFT2_BUILD_LIBRARY', + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../third_party/freetype/include', # For ft2build.h + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/gm.gyp b/gyp/gm.gyp new file mode 100644 index 0000000..43075dc --- /dev/null +++ b/gyp/gm.gyp @@ -0,0 +1,44 @@ +# GYP file to build the "gm" (golden master) executable. +{ + 'includes': [ + 'apptype_console.gypi', + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'gm', + 'type': 'executable', + 'includes': [ + 'gmslides.gypi', + ], + 'sources': [ + '../gm/gm.cpp', + '../gm/gmmain.cpp', + ], + 'dependencies': [ + 'core.gyp:core', + 'effects.gyp:effects', + 'gpu.gyp:gr', + 'gpu.gyp:skgr', + 'images.gyp:images', + 'ports.gyp:ports', + 'pdf.gyp:pdf', + 'utils.gyp:utils', + ], + #mac does not like empty dependency. + 'conditions': [ + [ 'skia_os == "win"', { + 'dependencies': [ + 'xps.gyp:xps', + ], + }], + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/gmslides.gypi b/gyp/gmslides.gypi new file mode 100644 index 0000000..66692d1 --- /dev/null +++ b/gyp/gmslides.gypi @@ -0,0 +1,55 @@ +# include this gypi to include all the golden master slides. +{ + 'sources': [ + '../gm/aaclip.cpp', + '../gm/aarectmodes.cpp', + '../gm/arithmode.cpp', + '../gm/bitmapcopy.cpp', + '../gm/bitmapfilters.cpp', + '../gm/bitmapscroll.cpp', + '../gm/blurs.cpp', + '../gm/colormatrix.cpp', + '../gm/complexclip.cpp', + '../gm/complexclip2.cpp', + '../gm/cubicpaths.cpp', + '../gm/degeneratesegments.cpp', + '../gm/drawbitmaprect.cpp', + '../gm/emptypath.cpp', + '../gm/filltypes.cpp', + '../gm/filltypespersp.cpp', + '../gm/fontscaler.cpp', + '../gm/gradients.cpp', + '../gm/gradtext.cpp', + '../gm/hairmodes.cpp', + '../gm/imageblur.cpp', + '../gm/lcdtext.cpp', + '../gm/linepaths.cpp', + '../gm/ninepatchstretch.cpp', + '../gm/nocolorbleed.cpp', + '../gm/pathfill.cpp', + '../gm/pathreverse.cpp', + '../gm/points.cpp', + '../gm/poly2poly.cpp', + '../gm/quadpaths.cpp', + '../gm/shadertext.cpp', + '../gm/shadows.cpp', + '../gm/shapes.cpp', + '../gm/strokefill.cpp', + '../gm/strokerects.cpp', + '../gm/strokes.cpp', + '../gm/tablecolorfilter.cpp', + '../gm/testimagefilters.cpp', + '../gm/texdata.cpp', + '../gm/tilemodes.cpp', + '../gm/tinybitmap.cpp', + '../gm/verttext.cpp', + '../gm/verttext2.cpp', + '../gm/xfermodes.cpp', + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/gpu.gyp b/gyp/gpu.gyp new file mode 100644 index 0000000..9fcded1 --- /dev/null +++ b/gyp/gpu.gyp @@ -0,0 +1,356 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'target_defaults': { + 'conditions': [ + ['skia_os != "win"', { + 'sources/': [ ['exclude', '_win.(h|cpp)$'], + ], + }], + ['skia_os != "mac"', { + 'sources/': [ ['exclude', '_mac.(h|cpp)$'], + ], + }], + ['skia_os != "linux"', { + 'sources/': [ ['exclude', '_unix.(h|cpp)$'], + ], + }], + ['skia_os != "ios"', { + 'sources/': [ ['exclude', '_iOS.(h|cpp)$'], + ], + }], + ['skia_os != "android"', { + 'sources/': [ ['exclude', '_android.(h|cpp)$'], + ], + }], + [ 'skia_os == "android"', { + 'defines': [ + 'GR_ANDROID_BUILD=1', + ], + }], + [ 'skia_os == "mac"', { + 'defines': [ + 'GR_MAC_BUILD=1', + ], + }], + [ 'skia_os == "linux"', { + 'defines': [ + 'GR_LINUX_BUILD=1', + ], + }], + [ 'skia_os == "ios"', { + 'defines': [ + 'GR_IOS_BUILD=1', + ], + }], + [ 'skia_os == "win"', { + 'defines': [ + 'GR_WIN32_BUILD=1', + 'GR_GL_FUNCTION_TYPE=__stdcall', + ], + }], + ], + 'direct_dependent_settings': { + 'conditions': [ + [ 'skia_os == "android"', { + 'defines': [ + 'GR_ANDROID_BUILD=1', + ], + }], + [ 'skia_os == "mac"', { + 'defines': [ + 'GR_MAC_BUILD=1', + ], + }], + [ 'skia_os == "linux"', { + 'defines': [ + 'GR_LINUX_BUILD=1', + ], + }], + [ 'skia_os == "ios"', { + 'defines': [ + 'GR_IOS_BUILD=1', + ], + }], + [ 'skia_os == "win"', { + 'defines': [ + 'GR_WIN32_BUILD=1', + 'GR_GL_FUNCTION_TYPE=__stdcall', + ], + }], + ], + 'include_dirs': [ + '../include/gpu', + ], + }, + }, + 'targets': [ + { + 'target_name': 'skgr', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../src/core', + '../include/gpu', + ], + 'sources': [ + '../include/gpu/SkGLContext.h', + '../include/gpu/SkMesaGLContext.h', + '../include/gpu/SkNativeGLContext.h', + '../include/gpu/SkNullGLContext.h', + '../include/gpu/SkGpuCanvas.h', + '../include/gpu/SkGpuDevice.h', + '../include/gpu/SkGr.h', + '../include/gpu/SkGrTexturePixelRef.h', + + '../src/gpu/GrPrintf_skia.cpp', + '../src/gpu/SkGLContext.cpp', + '../src/gpu/SkGpuCanvas.cpp', + '../src/gpu/SkGpuDevice.cpp', + '../src/gpu/SkGr.cpp', + '../src/gpu/SkGrFontScaler.cpp', + '../src/gpu/SkGrTexturePixelRef.cpp', + '../src/gpu/SkNullGLContext.cpp', + + '../src/gpu/android/SkNativeGLContext_android.cpp', + + '../src/gpu/mac/SkNativeGLContext_mac.cpp', + + '../src/gpu/win/SkNativeGLContext_win.cpp', + + '../src/gpu/unix/SkNativeGLContext_unix.cpp', + + '../src/gpu/mesa/SkMesaGLContext.cpp', + ], + 'conditions': [ + [ 'not skia_mesa', { + 'sources!': [ + '../src/gpu/mesa/SkMesaGLContext.cpp', + ], + }], + [ 'skia_mesa and skia_os == "mac"', { + 'include_dirs': [ + '$(SDKROOT)/usr/X11/include/', + ], + }], + ], + }, + { + 'target_name': 'gr', + 'type': 'static_library', + 'include_dirs': [ + '../include/core', + '../include/config', + '../include/gpu', + ], + 'dependencies': [ + 'libtess.gyp:libtess', + ], + 'sources': [ + '../include/gpu/GrClip.h', + '../include/gpu/GrClipIterator.h', + '../include/gpu/GrColor.h', + '../include/gpu/GrConfig.h', + '../include/gpu/GrContext.h', + '../include/gpu/GrFontScaler.h', + '../include/gpu/GrGLConfig.h', + '../include/gpu/GrGLConfig_chrome.h', + '../include/gpu/GrGLDefines.h', + '../include/gpu/GrGLInterface.h', + '../include/gpu/GrGlyph.h', + '../include/gpu/GrInstanceCounter.h', + '../include/gpu/GrKey.h', + '../include/gpu/GrMatrix.h', + '../include/gpu/GrNoncopyable.h', + '../include/gpu/GrPaint.h', + '../include/gpu/GrPath.h', + '../include/gpu/GrPoint.h', + '../include/gpu/GrRect.h', + '../include/gpu/GrRefCnt.h', + '../include/gpu/GrRenderTarget.h', + '../include/gpu/GrResource.h', + '../include/gpu/GrSamplerState.h', + '../include/gpu/GrScalar.h', + '../include/gpu/GrTextContext.h', + '../include/gpu/GrTexture.h', + '../include/gpu/GrTypes.h', + '../include/gpu/GrUserConfig.h', + + '../src/gpu/GrAAHairLinePathRenderer.cpp', + '../src/gpu/GrAAHairLinePathRenderer.h', + '../src/gpu/GrAddPathRenderers_aahairline.cpp', + '../src/gpu/GrAllocator.h', + '../src/gpu/GrAllocPool.h', + '../src/gpu/GrAllocPool.cpp', + '../src/gpu/GrAtlas.cpp', + '../src/gpu/GrAtlas.h', + '../src/gpu/GrBinHashKey.h', + '../src/gpu/GrBufferAllocPool.cpp', + '../src/gpu/GrBufferAllocPool.h', + '../src/gpu/GrClip.cpp', + '../src/gpu/GrContext.cpp', + '../src/gpu/GrDefaultPathRenderer.cpp', + '../src/gpu/GrDefaultPathRenderer.h', + '../src/gpu/GrDrawState.h', + '../src/gpu/GrDrawTarget.cpp', + '../src/gpu/GrDrawTarget.h', + '../src/gpu/GrGeometryBuffer.h', + '../src/gpu/GrGLCreateNativeInterface_none.cpp', + '../src/gpu/GrGLCreateNullInterface.cpp', + '../src/gpu/GrGLDefaultInterface_none.cpp', + '../src/gpu/GrGLDefaultInterface_native.cpp', + '../src/gpu/GrGLIndexBuffer.cpp', + '../src/gpu/GrGLIndexBuffer.h', + '../src/gpu/GrGLInterface.cpp', + '../src/gpu/GrGLIRect.h', + '../src/gpu/GrGLProgram.cpp', + '../src/gpu/GrGLProgram.h', + '../src/gpu/GrGLRenderTarget.cpp', + '../src/gpu/GrGLRenderTarget.h', + '../src/gpu/GrGLShaderVar.h', + '../src/gpu/GrGLSL.cpp', + '../src/gpu/GrGLSL.h', + '../src/gpu/GrGLStencilBuffer.cpp', + '../src/gpu/GrGLStencilBuffer.h', + '../src/gpu/GrGLTexture.cpp', + '../src/gpu/GrGLTexture.h', + '../src/gpu/GrGLUtil.cpp', + '../src/gpu/GrGLVertexBuffer.cpp', + '../src/gpu/GrGLVertexBuffer.h', + '../src/gpu/GrGpu.cpp', + '../src/gpu/GrGpu.h', + '../src/gpu/GrGpuFactory.cpp', + '../src/gpu/GrGpuGL.cpp', + '../src/gpu/GrGpuGL.h', + '../src/gpu/GrGpuGLShaders.cpp', + '../src/gpu/GrGpuGLShaders.h', + '../src/gpu/GrGpuVertex.h', + '../src/gpu/GrIndexBuffer.h', + '../src/gpu/GrInOrderDrawBuffer.cpp', + '../src/gpu/GrInOrderDrawBuffer.h', + '../src/gpu/GrMatrix.cpp', + '../src/gpu/GrMemory.cpp', + '../src/gpu/GrPathRendererChain.cpp', + '../src/gpu/GrPathRendererChain.h', + '../src/gpu/GrPathRenderer.cpp', + '../src/gpu/GrPathRenderer.h', + '../src/gpu/GrPathUtils.cpp', + '../src/gpu/GrPathUtils.h', + '../src/gpu/GrPlotMgr.h', + '../src/gpu/GrRandom.h', + '../src/gpu/GrRectanizer.cpp', + '../src/gpu/GrRectanizer.h', + '../src/gpu/GrRedBlackTree.h', + '../src/gpu/GrRenderTarget.cpp', + '../src/gpu/GrResource.cpp', + '../src/gpu/GrResourceCache.cpp', + '../src/gpu/GrResourceCache.h', + '../src/gpu/GrStencil.cpp', + '../src/gpu/GrStencil.h', + '../src/gpu/GrStencilBuffer.cpp', + '../src/gpu/GrStencilBuffer.h', + '../src/gpu/GrStringBuilder.h', + '../src/gpu/GrTBSearch.h', + '../src/gpu/GrTDArray.h', + '../src/gpu/GrTesselatedPathRenderer.cpp', + '../src/gpu/GrTesselatedPathRenderer.h', + '../src/gpu/GrTextContext.cpp', + '../src/gpu/GrTextStrike.cpp', + '../src/gpu/GrTextStrike.h', + '../src/gpu/GrTextStrike_impl.h', + '../src/gpu/GrTexture.cpp', + '../src/gpu/GrTHashCache.h', + '../src/gpu/GrTLList.h', + '../src/gpu/GrVertexBuffer.h', + '../src/gpu/gr_unittests.cpp', + + + '../src/gpu/mac/GrGLCreateNativeInterface_mac.cpp', + + '../src/gpu/win/GrGLCreateNativeInterface_win.cpp', + + '../src/gpu/unix/GrGLCreateNativeInterface_unix.cpp', + + '../src/gpu/android/GrGLCreateNativeInterface_android.cpp', + + '../src/gpu/mesa/GrGLCreateMesaInterface.cpp', + ], + 'defines': [ + 'GR_IMPLEMENTATION=1', + ], + 'conditions': [ + [ 'skia_os == "linux"', { + 'sources!': [ + '../src/gpu/GrGLDefaultInterface_none.cpp', + '../src/gpu/GrGLCreateNativeInterface_none.cpp', + ], + 'link_settings': { + 'libraries': [ + '-lGL', + '-lX11', + ], + }, + }], + [ 'skia_mesa and skia_os == "linux"', { + 'link_settings': { + 'libraries': [ + '-lOSMesa', + ], + }, + }], + [ 'skia_os == "mac"', { + 'link_settings': { + 'libraries': [ + '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', + ], + }, + 'sources!': [ + '../src/gpu/GrGLDefaultInterface_none.cpp', + '../src/gpu/GrGLCreateNativeInterface_none.cpp', + ], + }], + [ 'skia_mesa and skia_os == "mac"', { + 'link_settings': { + 'libraries': [ + '$(SDKROOT)/usr/X11/lib/libOSMesa.dylib', + ], + }, + 'include_dirs': [ + '$(SDKROOT)/usr/X11/include/', + ], + }], + [ 'not skia_mesa', { + 'sources!': [ + '../src/gpu/mesa/GrGLCreateMesaInterface.cpp', + ], + }], + [ 'skia_os == "win"', { + 'sources!': [ + '../src/gpu/GrGLDefaultInterface_none.cpp', + '../src/gpu/GrGLCreateNativeInterface_none.cpp', + ], + }], + [ 'skia_os == "android"', { + 'sources!': [ + '../src/gpu/GrGLDefaultInterface_none.cpp', + '../src/gpu/GrGLCreateNativeInterface_none.cpp', + ], + 'link_settings': { + 'libraries': [ + '-lGLESv2', + '-lEGL', + ], + }, + }], + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/iOSSampleApp.gyp b/gyp/iOSSampleApp.gyp new file mode 100644 index 0000000..84708bb --- /dev/null +++ b/gyp/iOSSampleApp.gyp @@ -0,0 +1,279 @@ +{ + 'includes': [ + 'target_defaults.gypi', + ], + 'defines!': [ + 'SK_BUILD_FOR_MAC', + ], + 'targets': [ + { + 'target_name': 'iOSSampleApp', + 'type': 'executable', + 'mac_bundle' : 1, + 'include_dirs' : [ + '../src/core', # needed to get SkConcaveToTriangle, maybe this should be moved to include dir? + '../gm', # SampleGM.cpp pulls gm.h + '../include/pipe', # To pull in SkGPipe.h for pipe reader/writer + ], + 'sources': [ + # gm files needed for SampleGM.cpp + '../gm/bitmapfilters.cpp', + '../gm/blurs.cpp', + '../gm/complexclip.cpp', + '../gm/filltypes.cpp', + '../gm/gm.h', + '../gm/gradients.cpp', + '../gm/nocolorbleed.cpp', + '../gm/points.cpp', + '../gm/poly2poly.cpp', + '../gm/shadertext.cpp', + '../gm/shadows.cpp', + '../gm/shapes.cpp', + '../gm/tilemodes.cpp', + '../gm/xfermodes.cpp', + + '../samplecode/ClockFaceView.cpp', + '../samplecode/OverView.cpp', + '../samplecode/Sample2PtRadial.cpp', + '../samplecode/SampleAll.cpp', + '../samplecode/SampleAnimator.cpp', + '../samplecode/SampleApp.cpp', + '../samplecode/SampleArc.cpp', + '../samplecode/SampleAvoid.cpp', + '../samplecode/SampleBigBlur.cpp', + '../samplecode/SampleBigGradient.cpp', + '../samplecode/SampleBitmapRect.cpp', + '../samplecode/SampleBlur.cpp', + '../samplecode/SampleCamera.cpp', + '../samplecode/SampleCircle.cpp', + '../samplecode/SampleCode.h', + '../samplecode/SampleColorFilter.cpp', + '../samplecode/SampleComplexClip.cpp', + '../samplecode/SampleConcavePaths.cpp', + '../samplecode/SampleCull.cpp', + '../samplecode/SampleDecode.cpp', + '../samplecode/SampleDegenerateTwoPtRadials.cpp', + '../samplecode/SampleDither.cpp', + '../samplecode/SampleDitherBitmap.cpp', + '../samplecode/SampleDrawBitmap.cpp', + '../samplecode/SampleDrawLooper.cpp', + '../samplecode/SampleEffects.cpp', + '../samplecode/SampleEmboss.cpp', + '../samplecode/SampleEncode.cpp', + '../samplecode/SampleExtractAlpha.cpp', + '../samplecode/SampleFillType.cpp', + '../samplecode/SampleFilter.cpp', + '../samplecode/SampleFilter2.cpp', + '../samplecode/SampleFontCache.cpp', + '../samplecode/SampleFontScalerTest.cpp', + '../samplecode/SampleFuzz.cpp', + '../samplecode/SampleGM.cpp', + '../samplecode/SampleGradients.cpp', + '../samplecode/SampleHairline.cpp', + '../samplecode/SampleImage.cpp', + '../samplecode/SampleImageDir.cpp', + '../samplecode/SampleLayerMask.cpp', + '../samplecode/SampleLayers.cpp', + '../samplecode/SampleLCD.cpp', + '../samplecode/SampleLineClipper.cpp', + '../samplecode/SampleLines.cpp', + '../samplecode/SampleMeasure.cpp', + '../samplecode/SampleMipMap.cpp', + '../samplecode/SampleMovie.cpp', + '../samplecode/SampleNinePatch.cpp', + '../samplecode/SampleOvalTest.cpp', + '../samplecode/SampleOverflow.cpp', + '../samplecode/SamplePageFlip.cpp', + '../samplecode/SamplePatch.cpp', + '../samplecode/SamplePath.cpp', + '../samplecode/SamplePathClip.cpp', + '../samplecode/SamplePathEffects.cpp', + '../samplecode/SamplePicture.cpp', + '../samplecode/SamplePoints.cpp', + '../samplecode/SamplePolyToPoly.cpp', + '../samplecode/SampleAARects.cpp', + '../samplecode/SampleRegion.cpp', + '../samplecode/SampleRepeatTile.cpp', + '../samplecode/SampleShaders.cpp', + '../samplecode/SampleShaderText.cpp', + '../samplecode/SampleShapes.cpp', + '../samplecode/SampleSkLayer.cpp', + '../samplecode/SampleSlides.cpp', + '../samplecode/SampleStrokePath.cpp', + '../samplecode/SampleStrokeText.cpp', + '../samplecode/SampleTests.cpp', + '../samplecode/SampleText.cpp', + '../samplecode/SampleTextAlpha.cpp', + '../samplecode/SampleTextBox.cpp', + '../samplecode/SampleTextEffects.cpp', + '../samplecode/SampleTextOnPath.cpp', + '../samplecode/SampleTextureDomain.cpp', + '../samplecode/SampleTiling.cpp', + '../samplecode/SampleTinyBitmap.cpp', + '../samplecode/SampleTriangles.cpp', + '../samplecode/SampleTypeface.cpp', + '../samplecode/SampleUnitMapper.cpp', + '../samplecode/SampleVertices.cpp', + '../samplecode/SampleXfermodes.cpp', + '../samplecode/SampleXfermodesBlur.cpp', + + # Dependencies for the pipe code in SampleApp + '../src/pipe/SkGPipeRead.cpp', + '../src/pipe/SkGPipeWrite.cpp', + + # DrawingBoard + '../experimental/DrawingBoard/SkColorPalette.h', + '../experimental/DrawingBoard/SkColorPalette.cpp', + '../experimental/DrawingBoard/SkNetPipeController.h', + '../experimental/DrawingBoard/SkNetPipeController.cpp', + '../experimental/DrawingBoard/SampleDrawingClient.cpp', + '../experimental/DrawingBoard/SampleDrawingServer.cpp', + + # Networking + '../experimental/Networking/SampleNetPipeReader.cpp', + '../experimental/Networking/SkSockets.cpp', + '../experimental/Networking/SkSockets.h', + + # Transition + '../src/utils/SkInterpolator.cpp', + '../include/utils/SkInterpolator.h', + '../samplecode/TransitionView.cpp', + ], + 'sources!': [ + '../samplecode/SampleSkLayer.cpp', #relies on SkMatrix44 which doesn't compile + '../samplecode/SampleTests.cpp', #includes unknown file SkShaderExtras.h + '../samplecode/SampleWarp.cpp', + '../samplecode/SampleFontCache.cpp', + ], + 'dependencies': [ + 'core.gyp:core', + 'effects.gyp:effects', + 'images.gyp:images', + 'ports.gyp:ports', + 'views.gyp:views', + 'utils.gyp:utils', + 'animator.gyp:animator', + 'xml.gyp:xml', + 'svg.gyp:svg', + 'experimental.gyp:experimental', + 'gpu.gyp:gr', + 'gpu.gyp:skgr', + 'pdf.gyp:pdf', + ], + 'conditions' : [ + [ 'OS == "linux" or OS == "freebsd" or OS == "openbsd" or OS == "solaris"', { + 'sources!': [ + '../samplecode/SampleDecode.cpp', + ], + }], + [ 'OS == "win"', { + 'sources!': [ + # require UNIX functions + '../samplecode/SampleEncode.cpp', + '../samplecode/SamplePageFlip.cpp', + ], + }], + [ 'OS == "mac"', { + 'sources!': [ + '../samplecode/SampleDecode.cpp', + '../src/gpu/mac/GrGLDefaultInterface_mac.cpp', + ], + 'sources': [ + # Shared resources + '../experimental/SkEventNotifier.h', + '../experimental/SkEventNotifier.mm', + '../experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig', + '../experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig', + '../experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig', + '../experimental/iOSSampleApp/iOSSampleApp-Info.plist', + '../experimental/iOSSampleApp/iOSSampleApp_Prefix.pch', + '../experimental/iOSSampleApp/Shared/SkOptionListController.h', + '../experimental/iOSSampleApp/Shared/SkOptionListController.mm', + '../experimental/iOSSampleApp/Shared/SkUIRootViewController.h', + '../experimental/iOSSampleApp/Shared/SkUIRootViewController.mm', + '../experimental/iOSSampleApp/Shared/SkOptionsTableViewController.h', + '../experimental/iOSSampleApp/Shared/SkOptionsTableViewController.mm', + '../experimental/iOSSampleApp/Shared/SkUIView.h', + '../experimental/iOSSampleApp/Shared/SkUIView.mm', + '../experimental/iOSSampleApp/Shared/SkUIDetailViewController.h', + '../experimental/iOSSampleApp/Shared/SkUIDetailViewController.mm', + '../experimental/iOSSampleApp/Shared/main.m', + + # iPad + '../experimental/iOSSampleApp/iPad/AppDelegate_iPad.h', + '../experimental/iOSSampleApp/iPad/AppDelegate_iPad.mm', + '../experimental/iOSSampleApp/iPad/SkUISplitViewController.h', + '../experimental/iOSSampleApp/iPad/SkUISplitViewController.mm', + '../experimental/iOSSampleApp/iPad/MainWindow_iPad.xib', + + # iPhone + '../experimental/iOSSampleApp/iPhone/AppDelegate_iPhone.h', + '../experimental/iOSSampleApp/iPhone/AppDelegate_iPhone.mm', + '../experimental/iOSSampleApp/iPhone/SkUINavigationController.h', + '../experimental/iOSSampleApp/iPhone/SkUINavigationController.mm', + '../experimental/iOSSampleApp/iPhone/MainWindow_iPhone.xib', + + '../src/utils/ios/SkOSWindow_iOS.mm', + '../src/utils/ios/SkImageDecoder_iOS.mm', + '../src/utils/ios/SkStream_NSData.mm', + '../src/utils/ios/SkOSFile_iOS.mm', + + '../include/utils/mac/SkCGUtils.h', + '../src/utils/mac/SkCreateCGImageRef.cpp', + '../experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig', + '../experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig', + ], + 'link_settings': { + 'libraries': [ + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/CoreFoundation.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/CoreGraphics.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/CoreText.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/UIKit.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/Foundation.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/QuartzCore.framework', + '/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/System/Library/Frameworks/OpenGLES.framework', + ], + 'libraries!': [ + #remove mac dependencies + '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework', + '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', + '$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework', + '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', + '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework', + ], + }, + 'include_dirs' : [ + '../experimental/iOSSampleApp', + '../experimental/iOSSampleApp/iPad', + '../experimental/iOSSampleApp/iPhone', + '../include/utils/ios', + '../../include/gpu', + ], + #'xcode_settings' : { + # 'INFOPLIST_FILE' : '../experimental/iOSSampleApp/iOSSampleApp-Info.plist', + # 'ARCHS' : 'armv6 armv7', + # 'IPHONEOS_DEPLOYMENT_TARGET' : '4.2', + # 'SDKROOT' : 'iphoneos', + # 'TARGETED_DEVICE_FAMILY' : '1,2', + # 'USER_HEADER_SEARCH_PATHS' : '../../gpu/include/** ../../include/**', + # 'CODE_SIGN_IDENTITY' : 'iPhone Developer', + # 'GCC_PREPROCESSOR_DEFINITIONS' : 'SK_BUILD_FOR_IOS', + # 'GCC_OPTIMIZATION_LEVEL' : '0', + #}, + 'xcode_config_file': '../experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig', + 'mac_bundle_resources' : [ + '../experimental/iOSSampleApp/iPad/MainWindow_iPad.xib', + '../experimental/iOSSampleApp/iPhone/MainWindow_iPhone.xib', + ], + }], + + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/images.gyp b/gyp/images.gyp new file mode 100644 index 0000000..0732351 --- /dev/null +++ b/gyp/images.gyp @@ -0,0 +1,149 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'images', + 'type': 'static_library', + 'dependencies': [ + 'utils.gyp:utils', + ], + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/images', + ], + 'sources': [ + '../include/images/SkFlipPixelRef.h', + '../include/images/SkImageDecoder.h', + '../include/images/SkImageEncoder.h', + '../include/images/SkImageRef.h', + '../include/images/SkImageRef_GlobalPool.h', + '../include/images/SkJpegUtility.h', + '../include/images/SkMovie.h', + '../include/images/SkPageFlipper.h', + + '../src/images/bmpdecoderhelper.cpp', + '../src/images/bmpdecoderhelper.h', + '../src/images/SkBitmapRegionDecoder.cpp', + '../src/images/SkBitmap_RLEPixels.h', + '../src/images/SkCreateRLEPixelRef.cpp', + '../src/images/SkFDStream.cpp', + '../src/images/SkFlipPixelRef.cpp', + '../src/images/SkImageDecoder.cpp', + '../src/images/SkImageDecoder_Factory.cpp', + '../src/images/SkImageDecoder_libbmp.cpp', + '../src/images/SkImageDecoder_libgif.cpp', + '../src/images/SkImageDecoder_libico.cpp', + '../src/images/SkImageDecoder_libjpeg.cpp', + '../src/images/SkImageDecoder_libpng.cpp', + '../src/images/SkImageDecoder_wbmp.cpp', + '../src/images/SkImageEncoder.cpp', + '../src/images/SkImageEncoder_Factory.cpp', + '../src/images/SkImageRef.cpp', + '../src/images/SkImageRefPool.cpp', + '../src/images/SkImageRefPool.h', + '../src/images/SkImageRef_GlobalPool.cpp', + '../src/images/SkJpegUtility.cpp', + '../src/images/SkMovie.cpp', + '../src/images/SkMovie_gif.cpp', + '../src/images/SkPageFlipper.cpp', + '../src/images/SkScaledBitmapSampler.cpp', + '../src/images/SkScaledBitmapSampler.h', + + '../src/ports/SkImageDecoder_CG.cpp', + '../src/ports/SkImageDecoder_WIC.cpp', + ], + 'conditions': [ + [ 'skia_os == "win"', { + 'sources!': [ + '../include/images/SkJpegUtility.h', + + '../src/images/SkFDStream.cpp', + '../src/images/SkImageDecoder_Factory.cpp', + '../src/images/SkImageDecoder_libgif.cpp', + '../src/images/SkImageDecoder_libjpeg.cpp', + '../src/images/SkImageDecoder_libpng.cpp', + '../src/images/SkImageDecoder_libpvjpeg.c', + '../src/images/SkImageEncoder_Factory.cpp', + '../src/images/SkJpegUtility.cpp', + '../src/images/SkMovie_gif.cpp', + ], + 'link_settings': { + 'libraries': [ + 'windowscodecs.lib', + ], + }, + },{ #else if skia_os != win + 'sources!': [ + '../src/ports/SkImageDecoder_WIC.cpp', + ], + }], + [ 'skia_os == "mac"', { + 'sources!': [ + '../include/images/SkJpegUtility.h', + + '../src/images/SkImageDecoder_Factory.cpp', + '../src/images/SkImageDecoder_libpng.cpp', + '../src/images/SkImageDecoder_libgif.cpp', + '../src/images/SkImageDecoder_libjpeg.cpp', + '../src/images/SkImageDecoder_libpvjpeg.c', + '../src/images/SkImageEncoder_Factory.cpp', + '../src/images/SkJpegUtility.cpp', + '../src/images/SkMovie_gif.cpp', + ], + },{ #else if skia_os != mac + 'sources!': [ + '../src/ports/SkImageDecoder_CG.cpp', + ], + }], + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', { + 'sources!': [ + '../include/images/SkJpegUtility.h', + + '../src/images/SkImageDecoder_libjpeg.cpp', + '../src/images/SkImageDecoder_libgif.cpp', + '../src/images/SkImageDecoder_libpvjpeg.c', + '../src/images/SkJpegUtility.cpp', + '../src/images/SkMovie_gif.cpp', + ], + # libpng stuff: + # Any targets that depend on this target should link in libpng and + # our code that calls it. + # See http://code.google.com/p/gyp/wiki/InputFormatReference#Dependent_Settings + 'link_settings': { + 'sources': [ + '../src/images/SkImageDecoder_libpng.cpp', + ], + 'libraries': [ + '-lpng', + ], + }, + # end libpng stuff + }], + [ 'skia_os == "android"', { + 'sources!': [ + '../src/images/SkImageDecoder_libjpeg.cpp', + '../src/images/SkJpegUtility.cpp', + ], + 'dependencies': [ + 'android_system.gyp:gif', + 'android_system.gyp:png', + ], + }], + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/images', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/libtess.gyp b/gyp/libtess.gyp new file mode 100644 index 0000000..d74bcc7 --- /dev/null +++ b/gyp/libtess.gyp @@ -0,0 +1,59 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'libtess', + 'type': 'static_library', + 'include_dirs': [ + '../third_party/glu', + ], + 'sources': [ + '../third_party/glu/sk_glu.h', + '../third_party/glu/gluos.h', + '../third_party/glu/libtess/dict-list.h', + '../third_party/glu/libtess/dict.c', + '../third_party/glu/libtess/dict.h', + '../third_party/glu/libtess/geom.c', + '../third_party/glu/libtess/geom.h', + '../third_party/glu/libtess/memalloc.c', + '../third_party/glu/libtess/memalloc.h', + '../third_party/glu/libtess/mesh.c', + '../third_party/glu/libtess/mesh.h', + '../third_party/glu/libtess/normal.c', + '../third_party/glu/libtess/normal.h', + '../third_party/glu/libtess/priorityq-heap.h', + '../third_party/glu/libtess/priorityq-sort.h', + '../third_party/glu/libtess/priorityq.c', + '../third_party/glu/libtess/priorityq.h', + '../third_party/glu/libtess/render.c', + '../third_party/glu/libtess/render.h', + '../third_party/glu/libtess/sweep.c', + '../third_party/glu/libtess/sweep.h', + '../third_party/glu/libtess/tess.c', + '../third_party/glu/libtess/tess.h', + '../third_party/glu/libtess/tessmono.c', + '../third_party/glu/libtess/tessmono.h', + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../third_party/glu', + ], + }, + 'conditions': [ + [ 'skia_os == "android"', { + 'cflags!': [ + '-fno-rtti', # supresses warnings about invalid option of non-C++ code + ], + }], + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/opts.gyp b/gyp/opts.gyp new file mode 100644 index 0000000..1f67e00 --- /dev/null +++ b/gyp/opts.gyp @@ -0,0 +1,81 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + # Due to an unfortunate intersection of lameness between gcc and gyp, + # we have to build the *_SSE2.cpp files in a separate target. The + # gcc lameness is that, in order to compile SSE2 intrinsics code, it + # must be passed the -msse2 flag. However, with this flag, it may + # emit SSE2 instructions even for scalar code, such as the CPUID + # test used to test for the presence of SSE2. So that, and all other + # code must be compiled *without* -msse2. The gyp lameness is that it + # does not allow file-specific CFLAGS, so we must create this extra + # target for those files to be compiled with -msse2. + # + # This is actually only a problem on 32-bit Linux (all Intel Macs have + # SSE2, Linux x86_64 has SSE2 by definition, and MSC will happily emit + # SSE2 from instrinsics, while generating plain ol' 386 for everything + # else). However, to keep the .gyp file simple and avoid platform-specific + # build breakage, we do this on all platforms. + + # For about the same reason, we need to compile the ARM opts files + # separately as well. + { + 'target_name': 'opts', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../src/core', + '../src/opts', + ], + 'conditions': [ + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', { + 'cflags': [ + '-msse2', + ], + }], + [ 'skia_target_arch != "arm"', { + 'sources': [ + '../src/opts/opts_check_SSE2.cpp', + '../src/opts/SkBitmapProcState_opts_SSE2.cpp', + '../src/opts/SkBlitRow_opts_SSE2.cpp', + '../src/opts/SkUtils_opts_SSE2.cpp', + ], + }], + [ 'skia_target_arch == "arm" and armv7 == 1', { + # The assembly uses the frame pointer register (r7 in Thumb/r11 in + # ARM), the compiler doesn't like that. + 'cflags!': [ + '-fno-omit-frame-pointer', + ], + 'cflags': [ + '-fomit-frame-pointer', + ], + 'sources': [ + '../src/opts/opts_check_arm.cpp', + '../src/opts/memset.arm.S', + '../src/opts/memset16_neon.S', + '../src/opts/memset32_neon.S', + '../src/opts/SkBitmapProcState_opts_arm.cpp', + '../src/opts/SkBlitRow_opts_arm.cpp', + ], + }], + [ 'skia_target_arch == "arm" and armv7 != 1', { + 'sources': [ + '../src/opts/SkBitmapProcState_opts_none.cpp', + '../src/opts/SkBlitRow_opts_none.cpp', + '../src/opts/SkUtils_opts_none.cpp', + ], + }], + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/pdf.gyp b/gyp/pdf.gyp new file mode 100644 index 0000000..f0c6b47 --- /dev/null +++ b/gyp/pdf.gyp @@ -0,0 +1,66 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'pdf', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/pdf', + '../src/core', # needed to get SkGlyphCache.h and SkTextFormatParams.h + ], + 'sources': [ + '../include/pdf/SkBitSet.h', + '../include/pdf/SkPDFCatalog.h', + '../include/pdf/SkPDFDevice.h', + '../include/pdf/SkPDFDocument.h', + '../include/pdf/SkPDFFont.h', + '../include/pdf/SkPDFFormXObject.h', + '../include/pdf/SkPDFGraphicState.h', + '../include/pdf/SkPDFImage.h', + '../include/pdf/SkPDFPage.h', + '../include/pdf/SkPDFShader.h', + '../include/pdf/SkPDFStream.h', + '../include/pdf/SkPDFTypes.h', + '../include/pdf/SkPDFUtils.h', + + '../src/pdf/SkBitSet.cpp', + '../src/pdf/SkPDFCatalog.cpp', + '../src/pdf/SkPDFDevice.cpp', + '../src/pdf/SkPDFDocument.cpp', + '../src/pdf/SkPDFFont.cpp', + '../src/pdf/SkPDFFontImpl.h', + '../src/pdf/SkPDFFormXObject.cpp', + '../src/pdf/SkPDFGraphicState.cpp', + '../src/pdf/SkPDFImage.cpp', + '../src/pdf/SkPDFPage.cpp', + '../src/pdf/SkPDFShader.cpp', + '../src/pdf/SkPDFStream.cpp', + '../src/pdf/SkPDFTypes.cpp', + '../src/pdf/SkPDFUtils.cpp', + ], + # This section makes all targets that depend on this target + # #define SK_SUPPORT_PDF and have access to the pdf header files. + 'direct_dependent_settings': { + 'defines': [ + 'SK_SUPPORT_PDF', + ], + 'include_dirs': [ + '../include/pdf', + ], + }, + 'dependencies': [ + 'zlib.gyp:zlib', + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/ports.gyp b/gyp/ports.gyp new file mode 100644 index 0000000..c89a06d --- /dev/null +++ b/gyp/ports.gyp @@ -0,0 +1,114 @@ +# Port-specific Skia library code. +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'ports', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/images', + '../include/effects', + '../include/ports', + '../include/xml', + '../src/core', + ], + 'sources': [ + '../src/ports/SkDebug_stdio.cpp', + '../src/ports/SkDebug_win.cpp', + '../src/ports/SkFontHost_sandbox_none.cpp', + '../src/ports/SkFontHost_win.cpp', + '../src/ports/SkGlobalInitialization_default.cpp', + '../src/ports/SkThread_win.cpp', + + '../src/ports/SkFontHost_tables.cpp', + '../src/ports/SkMemory_malloc.cpp', + '../src/ports/SkOSFile_stdio.cpp', + '../src/ports/SkTime_Unix.cpp', + '../src/ports/SkTime_win.cpp', + '../src/ports/SkXMLParser_empty.cpp', + '../src/ports/sk_predefined_gamma.h', + ], + 'conditions': [ + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', { + 'sources': [ + '../src/ports/SkThread_pthread.cpp', + '../src/ports/SkFontHost_FreeType.cpp', + '../src/ports/SkFontHost_gamma_none.cpp', + '../src/ports/SkFontHost_linux.cpp', + ], + }], + [ 'skia_os == "mac"', { + 'include_dirs': [ + '../include/utils/mac', + '../third_party/freetype/include/**', + ], + 'sources': [ + '../src/ports/SkFontHost_mac_coretext.cpp', +# '../src/ports/SkFontHost_FreeType.cpp', +# '../src/ports/SkFontHost_freetype_mac.cpp', +# '../src/ports/SkFontHost_gamma_none.cpp', + '../src/ports/SkThread_pthread.cpp', + ], + }], + [ 'skia_os == "ios"', { + 'include_dirs': [ + '../include/utils/ios', + ], + 'sources': [ + '../src/ports/SkFontHost_mac_coretext.cpp', + '../src/ports/SkThread_pthread.cpp', + ], + }], + [ 'skia_os == "win"', { + 'include_dirs': [ + 'config/win', + ], + 'sources!': [ # these are used everywhere but windows + '../src/ports/SkDebug_stdio.cpp', + '../src/ports/SkTime_Unix.cpp', + ], + }, { # else !win + 'sources!': [ + '../src/ports/SkDebug_win.cpp', + '../src/ports/SkFontHost_win.cpp', + '../src/ports/SkThread_win.cpp', + '../src/ports/SkTime_win.cpp', + ], + }], + [ 'skia_os == "android"', { + 'sources!': [ + '../src/ports/SkDebug_stdio.cpp', + ], + 'sources': [ + '../src/ports/SkDebug_android.cpp', + '../src/ports/SkThread_pthread.cpp', + '../src/ports/SkFontHost_android.cpp', + '../src/ports/SkFontHost_gamma.cpp', + '../src/ports/SkFontHost_FreeType.cpp', + '../src/ports/FontHostConfiguration_android.cpp', + #TODO: include the ports/SkImageRef_ashmem.cpp for non-NDK builds + ], + 'dependencies': [ + 'android_system.gyp:ft2', + 'android_system.gyp:expat', + ], + }], + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/ports', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/svg.gyp b/gyp/svg.gyp new file mode 100644 index 0000000..c72b99f --- /dev/null +++ b/gyp/svg.gyp @@ -0,0 +1,91 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'svg', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/xml', + '../include/utils', + '../include/svg', + ], + 'sources': [ + '../include/svg/SkSVGAttribute.h', + '../include/svg/SkSVGBase.h', + '../include/svg/SkSVGPaintState.h', + '../include/svg/SkSVGParser.h', + '../include/svg/SkSVGTypes.h', + + '../src/svg/SkSVGCircle.cpp', + '../src/svg/SkSVGCircle.h', + '../src/svg/SkSVGClipPath.cpp', + '../src/svg/SkSVGClipPath.h', + '../src/svg/SkSVGDefs.cpp', + '../src/svg/SkSVGDefs.h', + '../src/svg/SkSVGElements.cpp', + '../src/svg/SkSVGElements.h', + '../src/svg/SkSVGEllipse.cpp', + '../src/svg/SkSVGEllipse.h', + '../src/svg/SkSVGFeColorMatrix.cpp', + '../src/svg/SkSVGFeColorMatrix.h', + '../src/svg/SkSVGFilter.cpp', + '../src/svg/SkSVGFilter.h', + '../src/svg/SkSVGG.cpp', + '../src/svg/SkSVGG.h', + '../src/svg/SkSVGGradient.cpp', + '../src/svg/SkSVGGradient.h', + '../src/svg/SkSVGGroup.cpp', + '../src/svg/SkSVGGroup.h', + '../src/svg/SkSVGImage.cpp', + '../src/svg/SkSVGImage.h', + '../src/svg/SkSVGLine.cpp', + '../src/svg/SkSVGLine.h', + '../src/svg/SkSVGLinearGradient.cpp', + '../src/svg/SkSVGLinearGradient.h', + '../src/svg/SkSVGMask.cpp', + '../src/svg/SkSVGMask.h', + '../src/svg/SkSVGMetadata.cpp', + '../src/svg/SkSVGMetadata.h', + '../src/svg/SkSVGPaintState.cpp', + '../src/svg/SkSVGParser.cpp', + '../src/svg/SkSVGPath.cpp', + '../src/svg/SkSVGPath.h', + '../src/svg/SkSVGPolygon.cpp', + '../src/svg/SkSVGPolygon.h', + '../src/svg/SkSVGPolyline.cpp', + '../src/svg/SkSVGPolyline.h', + '../src/svg/SkSVGRadialGradient.cpp', + '../src/svg/SkSVGRadialGradient.h', + '../src/svg/SkSVGRect.cpp', + '../src/svg/SkSVGRect.h', + '../src/svg/SkSVGStop.cpp', + '../src/svg/SkSVGStop.h', + '../src/svg/SkSVGSVG.cpp', + '../src/svg/SkSVGSVG.h', + '../src/svg/SkSVGSymbol.cpp', + '../src/svg/SkSVGSymbol.h', + '../src/svg/SkSVGText.cpp', + '../src/svg/SkSVGText.h', + '../src/svg/SkSVGUse.cpp', + ], + 'sources!' : [ + '../src/svg/SkSVG.cpp', # doesn't compile, maybe this is test code? + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/svg', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/tests.gyp b/gyp/tests.gyp new file mode 100644 index 0000000..27a34a0 --- /dev/null +++ b/gyp/tests.gyp @@ -0,0 +1,95 @@ +# GYP file to build unit tests. +{ + 'includes': [ + 'apptype_console.gypi', + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'tests', + 'type': 'executable', + 'include_dirs' : [ + '../src/core', + '../src/gpu', + ], + 'sources': [ + '../tests/AAClipTest.cpp', + '../tests/BitmapCopyTest.cpp', + '../tests/BitmapGetColorTest.cpp', + '../tests/BitSetTest.cpp', + '../tests/BlitRowTest.cpp', + '../tests/BlurTest.cpp', + '../tests/CanvasTest.cpp', + '../tests/ClampRangeTest.cpp', + '../tests/ClipCubicTest.cpp', + '../tests/ClipStackTest.cpp', + '../tests/ClipperTest.cpp', + '../tests/ColorFilterTest.cpp', + '../tests/ColorTest.cpp', + '../tests/DataRefTest.cpp', + '../tests/DequeTest.cpp', + '../tests/DrawBitmapRectTest.cpp', + '../tests/EmptyPathTest.cpp', + '../tests/FillPathTest.cpp', + '../tests/FlateTest.cpp', + '../tests/GeometryTest.cpp', + '../tests/GLInterfaceValidation.cpp', + '../tests/GLProgramsTest.cpp', + '../tests/InfRectTest.cpp', + '../tests/MathTest.cpp', + '../tests/MatrixTest.cpp', + '../tests/Matrix44Test.cpp', + '../tests/MemsetTest.cpp', + '../tests/MetaDataTest.cpp', + '../tests/PackBitsTest.cpp', + '../tests/PaintTest.cpp', + '../tests/ParsePathTest.cpp', + '../tests/PathCoverageTest.cpp', + '../tests/PathMeasureTest.cpp', + '../tests/PathTest.cpp', + '../tests/PDFPrimitivesTest.cpp', + '../tests/PointTest.cpp', + '../tests/QuickRejectTest.cpp', + '../tests/Reader32Test.cpp', + '../tests/ReadPixelsTest.cpp', + '../tests/RefDictTest.cpp', + '../tests/RegionTest.cpp', + '../tests/ScalarTest.cpp', + '../tests/ShaderOpacityTest.cpp', + '../tests/Sk64Test.cpp', + '../tests/skia_test.cpp', + '../tests/SortTest.cpp', + '../tests/SrcOverTest.cpp', + '../tests/StreamTest.cpp', + '../tests/StringTest.cpp', + '../tests/Test.cpp', + '../tests/Test.h', + '../tests/TestSize.cpp', + '../tests/ToUnicode.cpp', + '../tests/UnicodeTest.cpp', + '../tests/UtilsTest.cpp', + '../tests/WArrayTest.cpp', + '../tests/WritePixelsTest.cpp', + '../tests/Writer32Test.cpp', + '../tests/XfermodeTest.cpp', + ], + 'dependencies': [ + 'core.gyp:core', + 'effects.gyp:effects', + 'experimental.gyp:experimental', + 'gpu.gyp:gr', + 'gpu.gyp:skgr', + 'images.gyp:images', + 'ports.gyp:ports', + 'pdf.gyp:pdf', + 'utils.gyp:utils', + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/tools.gyp b/gyp/tools.gyp new file mode 100644 index 0000000..1e419cd --- /dev/null +++ b/gyp/tools.gyp @@ -0,0 +1,73 @@ +# GYP file to build various tools. +# +# To build on Linux: +# ./gyp_skia tools.gyp && make tools +# +# Building on other platforms not tested yet. +# +{ + 'includes': [ + 'apptype_console.gypi', + 'common.gypi', + ], + 'targets': [ + { + # Build all executable targets defined below. + 'target_name': 'tools', + 'type': 'none', + 'dependencies': [ + 'skdiff', + 'skhello', + 'skimage', + ], + }, + { + 'target_name': 'skdiff', + 'type': 'executable', + 'sources': [ + '../src/effects/SkEffects_none.cpp', + '../tools/skdiff_main.cpp', + ], + 'dependencies': [ + 'core.gyp:core', + 'images.gyp:images', + 'ports.gyp:ports', + 'utils.gyp:utils', + ], + }, + { + 'target_name': 'skhello', + 'type': 'executable', + 'sources': [ + '../src/effects/SkEffects_none.cpp', + '../tools/skhello.cpp', + ], + 'dependencies': [ + 'core.gyp:core', + 'images.gyp:images', + 'ports.gyp:ports', + 'utils.gyp:utils', + ], + }, + { + 'target_name': 'skimage', + 'type': 'executable', + 'sources': [ + '../src/effects/SkEffects_none.cpp', + '../tools/skimage_main.cpp', + ], + 'dependencies': [ + 'core.gyp:core', + 'images.gyp:images', + 'ports.gyp:ports', + 'utils.gyp:utils', + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/utils.gyp b/gyp/utils.gyp new file mode 100644 index 0000000..b4b2be3 --- /dev/null +++ b/gyp/utils.gyp @@ -0,0 +1,161 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'utils', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/utils', + '../include/utils/mac', + '../include/utils/unix', + '../include/utils/win', + '../include/views', + '../include/effects', + '../include/xml', + ], + 'sources': [ + '../include/utils/SkBoundaryPatch.h', + '../include/utils/SkCamera.h', + '../include/utils/SkCubicInterval.h', + '../include/utils/SkCullPoints.h', + '../include/utils/SkDumpCanvas.h', + '../include/utils/SkInterpolator.h', + '../include/utils/SkLayer.h', + '../include/utils/SkMatrix44.h', + '../include/utils/SkMeshUtils.h', + '../include/utils/SkNinePatch.h', + '../include/utils/SkNWayCanvas.h', + '../include/utils/SkParse.h', + '../include/utils/SkParsePaint.h', + '../include/utils/SkParsePath.h', + '../include/utils/SkProxyCanvas.h', + '../include/utils/SkSfntUtils.h', + '../include/utils/SkTextBox.h', + '../include/utils/SkUnitMappers.h', + '../include/utils/SkWGL.h', + + '../src/utils/SkBoundaryPatch.cpp', + '../src/utils/SkCamera.cpp', + '../src/utils/SkColorMatrix.cpp', + '../src/utils/SkCubicInterval.cpp', + '../src/utils/SkCullPoints.cpp', + '../src/utils/SkDumpCanvas.cpp', + '../src/utils/SkInterpolator.cpp', + '../src/utils/SkLayer.cpp', + '../src/utils/SkMatrix44.cpp', + '../src/utils/SkMeshUtils.cpp', + '../src/utils/SkNinePatch.cpp', + '../src/utils/SkNWayCanvas.cpp', + '../src/utils/SkOSFile.cpp', + '../src/utils/SkParse.cpp', + '../src/utils/SkParseColor.cpp', + '../src/utils/SkParsePath.cpp', + '../src/utils/SkProxyCanvas.cpp', + '../src/utils/SkSfntUtils.cpp', + '../src/utils/SkUnitMappers.cpp', + + #mac + '../include/utils/mac/SkCGUtils.h', + '../src/utils/mac/SkCreateCGImageRef.cpp', + + #sdl + '../src/utils/SDL/SkOSWindow_SDL.cpp', + + #*nix + '../src/utils/unix/keysym2ucs.c', + '../src/utils/unix/SkOSWindow_Unix.cpp', + + #windows + '../include/utils/win/SkAutoCoInitialize.h', + '../include/utils/win/SkHRESULT.h', + '../include/utils/win/SkIStream.h', + '../include/utils/win/SkTScopedComPtr.h', + '../src/utils/win/SkAutoCoInitialize.cpp', + '../src/utils/win/skia_win.cpp', + '../src/utils/win/SkHRESULT.cpp', + '../src/utils/win/SkIStream.cpp', + '../src/utils/win/SkOSWindow_win.cpp', + '../src/utils/win/SkWGL_win.cpp', + ], + 'sources!': [ + '../src/utils/SDL/SkOSWindow_SDL.cpp', + ], + 'conditions': [ + [ 'skia_os == "mac"', { + 'link_settings': { + 'libraries': [ + '$(SDKROOT)/System/Library/Frameworks/AGL.framework', + ], + }, + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/utils/mac', + ], + }, + },{ #else if 'skia_os != "mac"' + 'include_dirs!': [ + '../include/utils/mac', + ], + 'sources!': [ + '../include/utils/mac/SkCGUtils.h', + '../src/utils/mac/SkCreateCGImageRef.cpp', + '../src/utils/mac/skia_mac.mm', + '../src/utils/mac/SkOSWindow_Mac.mm', + ], + }], + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', { + 'link_settings': { + 'libraries': [ + '-lGL', + '-lGLU', + ], + }, + },{ #else if 'skia_os not in ["linux", "freebsd", "openbsd", "solaris"]' + 'include_dirs!': [ + '../include/utils/unix', + ], + 'sources!': [ + '../src/utils/unix/keysym2ucs.c', + '../src/utils/unix/SkOSWindow_Unix.cpp', + ], + }], + [ 'skia_os == "win"', { + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/utils/win', + ], + }, + },{ #else if 'skia_os != "win"' + 'include_dirs!': [ + '../include/utils/win', + ], + 'sources/': [ ['exclude', '_win.(h|cpp)$'],], + 'sources!': [ + '../include/utils/win/SkAutoCoInitialize.h', + '../include/utils/win/SkHRESULT.h', + '../include/utils/win/SkIStream.h', + '../include/utils/win/SkTScopedComPtr.h', + '../src/utils/win/SkAutoCoInitialize.cpp', + '../src/utils/win/SkHRESULT.cpp', + '../src/utils/win/SkIStream.cpp', + ], + }], + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/utils', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/views.gyp b/gyp/views.gyp new file mode 100644 index 0000000..e91b28e --- /dev/null +++ b/gyp/views.gyp @@ -0,0 +1,118 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'views', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/views', + '../include/xml', + '../include/utils', + '../include/images', + '../include/animator', + '../include/effects', + ], + 'sources': [ + '../include/views/SkApplication.h', + '../include/views/SkBGViewArtist.h', + '../include/views/SkBorderView.h', + '../include/views/SkEvent.h', + '../include/views/SkEventSink.h', + '../include/views/SkImageView.h', + '../include/views/SkKey.h', + '../include/views/SkOSMenu.h', + '../include/views/SkOSWindow_Mac.h', + '../include/views/SkOSWindow_SDL.h', + '../include/views/SkOSWindow_Unix.h', + '../include/views/SkOSWindow_Win.h', + #'../include/views/SkOSWindow_wxwidgets.h', + '../include/views/SkProgressBarView.h', + '../include/views/SkScrollBarView.h', + '../include/views/SkStackViewLayout.h', + '../include/views/SkSystemEventTypes.h', + '../include/views/SkTouchGesture.h', + '../include/views/SkView.h', + '../include/views/SkViewInflate.h', + '../include/views/SkWidget.h', + '../include/views/SkWidgetViews.h', + '../include/views/SkWindow.h', + + '../src/views/SkBGViewArtist.cpp', + '../src/views/SkBorderView.cpp', + '../src/views/SkEvent.cpp', + '../src/views/SkEventSink.cpp', + '../src/views/SkImageView.cpp', + '../src/views/SkListView.cpp', + '../src/views/SkListWidget.cpp', + '../src/views/SkOSMenu.cpp', + '../src/views/SkParsePaint.cpp', + '../src/views/SkProgressBarView.cpp', + '../src/views/SkProgressView.cpp', + '../src/views/SkScrollBarView.cpp', + '../src/views/SkStackViewLayout.cpp', + '../src/views/SkStaticTextView.cpp', + '../src/views/SkTagList.cpp', + '../src/views/SkTagList.h', + '../src/views/SkTextBox.cpp', + '../src/views/SkTouchGesture.cpp', + '../src/views/SkView.cpp', + '../src/views/SkViewInflate.cpp', + '../src/views/SkViewPriv.cpp', + '../src/views/SkViewPriv.h', + '../src/views/SkWidget.cpp', + '../src/views/SkWidgets.cpp', + '../src/views/SkWidgetViews.cpp', + '../src/views/SkWindow.cpp', + ], + 'sources!' : [ + '../src/views/SkListView.cpp', #depends on missing SkListSource implementation + '../src/views/SkListWidget.cpp', #depends on missing SkListSource implementation + ], + 'conditions': [ + [ 'skia_os == "mac"', { + 'link_settings': { + 'libraries': [ + '$(SDKROOT)/System/Library/Frameworks/Cocoa.framework', + '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', + ], + }, + }], + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', { + 'sources': [ + '../unix_test_app/main.cpp', + ], + }], + [ 'skia_os == "android"', { + # Android does not support animator so we need to remove all files + # that have references to it. + 'include_dirs!': [ + '../include/animator', + ], + 'sources!': [ + '../src/views/SkBorderView.cpp', + '../src/views/SkImageView.cpp', + '../src/views/SkProgressBarView.cpp', + '../src/views/SkScrollBarView.cpp', + '../src/views/SkStaticTextView.cpp', + '../src/views/SkWidgetViews.cpp', + ], + }], + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/views', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/xml.gyp b/gyp/xml.gyp new file mode 100644 index 0000000..7da8666 --- /dev/null +++ b/gyp/xml.gyp @@ -0,0 +1,58 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'xml', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + '../include/xml', + '../include/utils', + ], + 'sources': [ + '../include/xml/SkBML_WXMLParser.h', + '../include/xml/SkBML_XMLParser.h', + '../include/xml/SkDOM.h', + '../include/xml/SkJS.h', + '../include/xml/SkXMLParser.h', + '../include/xml/SkXMLWriter.h', + + '../src/xml/SkBML_Verbs.h', + '../src/xml/SkBML_XMLParser.cpp', + '../src/xml/SkDOM.cpp', + '../src/xml/SkJS.cpp', + '../src/xml/SkJSDisplayable.cpp', + '../src/xml/SkXMLParser.cpp', + '../src/xml/SkXMLPullParser.cpp', + '../src/xml/SkXMLWriter.cpp', + ], + 'sources!': [ + '../src/xml/SkXMLPullParser.cpp', #if 0 around class decl in header + ], + 'conditions': [ + [ 'skia_os in ["win", "mac", "linux", "freebsd", "openbsd", "solaris", "android"]', { + 'sources!': [ + # no jsapi.h by default on system + '../include/xml/SkJS.h', + '../src/xml/SkJS.cpp', + '../src/xml/SkJSDisplayable.cpp', + ], + }], + ], + 'direct_dependent_settings': { + 'include_dirs': [ + '../include/xml', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/xps.gyp b/gyp/xps.gyp new file mode 100644 index 0000000..ff68d6f --- /dev/null +++ b/gyp/xps.gyp @@ -0,0 +1,67 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'xps', + 'type': 'static_library', + 'dependencies': [ + 'core.gyp:core', + 'images.gyp:images', + 'utils.gyp:utils', + 'pdf.gyp:pdf', # needed to get SkBitSet + ], + 'include_dirs': [ + '../include/device/xps', + '../include/utils/win', + '../src/core', # needed to get SkGlyphCache.h + ], + 'sources': [ + '../include/device/xps/SkConstexprMath.h', + '../include/device/xps/SkXPSDevice.h', + + '../src/device/xps/SkXPSDevice.cpp', + ], + 'conditions': [ + [ 'skia_os == "win"', { + 'link_settings': { + 'libraries': [ + 'T2Embed.lib', + 'FontSub.lib', + ], + }, + },{ #else if 'skia_os != "win"' + 'include_dirs!': [ + '../include/utils/win', + ], + 'sources!': [ + '../include/device/xps/SkXPSDevice.h', + + '../src/device/xps/SkXPSDevice.cpp', + ], + }], + ], + # This section makes all targets that depend on this target + # #define SK_SUPPORT_XPS and have access to the xps header files. + 'direct_dependent_settings': { + 'conditions': [ + [ 'skia_os == "win"', { + 'defines': [ + 'SK_SUPPORT_XPS', + ], + }], + ], + 'include_dirs': [ + '../include/device/xps', + ], + }, + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: diff --git a/gyp/zlib.gyp b/gyp/zlib.gyp new file mode 100644 index 0000000..5ed9d14 --- /dev/null +++ b/gyp/zlib.gyp @@ -0,0 +1,40 @@ +{ + 'includes': [ + 'common.gypi', + ], + 'targets': [ + { + 'target_name': 'zlib', + 'type': 'static_library', + 'include_dirs': [ + '../include/config', + '../include/core', + ], + 'sources': [ + '../include/core/SkFlate.h', + + '../src/core/SkFlate.cpp', + ], + 'conditions': [ + [ 'skia_os == "mac"', { + 'link_settings': { + 'libraries': [ + '$(SDKROOT)/usr/lib/libz.dylib', + ], + }, + 'defines': [ 'SK_ZLIB_INCLUDE=<zlib.h>', ], + }], + [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "android"]', { + 'link_settings': { 'libraries': [ '-lz', ], }, + 'defines': [ 'SK_ZLIB_INCLUDE=<zlib.h>', ], + }], + ], + }, + ], +} + +# Local Variables: +# tab-width:2 +# indent-tabs-mode:nil +# End: +# vim: set expandtab tabstop=2 shiftwidth=2: |