1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/gfx/layers/moz.build Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,362 @@ 1.4 +# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- 1.5 +# vim: set filetype=python: 1.6 +# This Source Code Form is subject to the terms of the Mozilla Public 1.7 +# License, v. 2.0. If a copy of the MPL was not distributed with this 1.8 +# file, You can obtain one at http://mozilla.org/MPL/2.0/. 1.9 + 1.10 +EXPORTS += [ 1.11 + 'basic/BasicCanvasLayer.h', 1.12 + 'basic/BasicImplData.h', 1.13 + 'basic/BasicLayers.h', 1.14 + 'basic/BasicLayersImpl.h', 1.15 + 'basic/BasicThebesLayer.h', 1.16 + 'client/ClientCanvasLayer.h', 1.17 + 'client/ClientContainerLayer.h', 1.18 + 'client/ClientLayerManager.h', 1.19 + 'client/ClientThebesLayer.h', 1.20 + 'client/ClientTiledThebesLayer.h', 1.21 + 'composite/CompositableHost.h', 1.22 + 'composite/ImageHost.h', 1.23 + 'CopyableCanvasLayer.h', 1.24 + 'D3D9SurfaceImage.h', 1.25 + 'FrameMetrics.h', 1.26 + 'GrallocImages.h', 1.27 + 'ImageContainer.h', 1.28 + 'ImageLayers.h', 1.29 + 'ImageTypes.h', 1.30 + 'ipc/CompositorChild.h', 1.31 + 'ipc/CompositorParent.h', 1.32 + 'ipc/ShadowLayersManager.h', 1.33 + 'Layers.h', 1.34 + 'LayerScope.h', 1.35 + 'LayersLogging.h', 1.36 + 'LayerSorter.h', 1.37 + 'LayerTreeInvalidation.h', 1.38 + 'opengl/Composer2D.h', 1.39 + 'opengl/OGLShaderProgram.h', 1.40 + 'opengl/TexturePoolOGL.h', 1.41 + 'ReadbackLayer.h', 1.42 + 'SharedTextureImage.h', 1.43 + 'TiledLayerBuffer.h', 1.44 +] 1.45 + 1.46 +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows': 1.47 + UNIFIED_SOURCES += [ 1.48 + 'D3D9SurfaceImage.cpp', 1.49 + ] 1.50 + if CONFIG['MOZ_ENABLE_D3D9_LAYER']: 1.51 + EXPORTS += [ 1.52 + 'd3d9/DeviceManagerD3D9.h', 1.53 + 'd3d9/LayerManagerD3D9.h', 1.54 + ] 1.55 + EXPORTS.mozilla.layers += [ 1.56 + 'd3d9/CompositorD3D9.h', 1.57 + 'd3d9/TextureD3D9.h', 1.58 + ] 1.59 + UNIFIED_SOURCES += [ 1.60 + 'd3d9/CanvasLayerD3D9.cpp', 1.61 + 'd3d9/ColorLayerD3D9.cpp', 1.62 + 'd3d9/ContainerLayerD3D9.cpp', 1.63 + 'd3d9/ImageLayerD3D9.cpp', 1.64 + 'd3d9/LayerManagerD3D9.cpp', 1.65 + 'd3d9/TextureD3D9.cpp', 1.66 + 'd3d9/ThebesLayerD3D9.cpp', 1.67 + ] 1.68 + SOURCES += [ 1.69 + 'd3d9/CompositorD3D9.cpp', 1.70 + 'd3d9/DeviceManagerD3D9.cpp', 1.71 + 'd3d9/Nv3DVUtils.cpp', 1.72 + ] 1.73 + if CONFIG['MOZ_ENABLE_D3D10_LAYER']: 1.74 + EXPORTS += [ 1.75 + 'd3d10/LayerManagerD3D10.h', 1.76 + 'd3d10/ReadbackManagerD3D10.h', 1.77 + ] 1.78 + EXPORTS.mozilla.layers += [ 1.79 + 'd3d11/CompositorD3D11.h', 1.80 + 'd3d11/TextureD3D11.h', 1.81 + 'ipc/ShadowLayerUtilsD3D10.h', 1.82 + ] 1.83 + UNIFIED_SOURCES += [ 1.84 + 'd3d10/CanvasLayerD3D10.cpp', 1.85 + 'd3d10/ColorLayerD3D10.cpp', 1.86 + 'd3d10/ContainerLayerD3D10.cpp', 1.87 + 'd3d10/ImageLayerD3D10.cpp', 1.88 + 'd3d10/LayerManagerD3D10.cpp', 1.89 + 'd3d10/ReadbackManagerD3D10.cpp', 1.90 + 'd3d10/ThebesLayerD3D10.cpp', 1.91 + 'd3d11/TextureD3D11.cpp', 1.92 + 'ipc/ShadowLayerUtilsD3D10.cpp', 1.93 + ] 1.94 + SOURCES += [ 1.95 + 'd3d11/CompositorD3D11.cpp', 1.96 + ] 1.97 + 1.98 +EXPORTS.gfxipc += [ 1.99 + 'ipc/ShadowLayerUtils.h', 1.100 +] 1.101 + 1.102 +EXPORTS.mozilla.layers += [ 1.103 + 'apz/public/GeckoContentController.h', 1.104 + # exporting things from apz/src is temporary until we extract a 1.105 + # proper interface for the code there 1.106 + 'apz/src/APZCTreeManager.h', 1.107 + 'apz/src/AsyncPanZoomController.h', 1.108 + 'apz/src/Axis.h', 1.109 + 'apz/src/GestureEventListener.h', 1.110 + 'apz/src/TaskThrottler.h', 1.111 + 'apz/util/ActiveElementManager.h', 1.112 + 'apz/util/APZCCallbackHelper.h', 1.113 + 'AtomicRefCountedWithFinalize.h', 1.114 + 'basic/BasicCompositor.h', 1.115 + 'basic/MacIOSurfaceTextureHostBasic.h', 1.116 + 'basic/TextureHostBasic.h', 1.117 + 'client/CanvasClient.h', 1.118 + 'client/CompositableClient.h', 1.119 + 'client/ContentClient.h', 1.120 + 'client/ImageClient.h', 1.121 + 'client/SimpleTextureClientPool.h', 1.122 + 'client/SimpleTiledContentClient.h', 1.123 + 'client/TextureClient.h', 1.124 + 'client/TextureClientPool.h', 1.125 + 'client/TiledContentClient.h', 1.126 + 'composite/AsyncCompositionManager.h', 1.127 + 'composite/CanvasLayerComposite.h', 1.128 + 'composite/ColorLayerComposite.h', 1.129 + 'composite/ContainerLayerComposite.h', 1.130 + 'composite/ContentHost.h', 1.131 + 'composite/ImageHost.h', 1.132 + 'composite/ImageLayerComposite.h', 1.133 + 'composite/LayerManagerComposite.h', 1.134 + 'composite/TextureHost.h', 1.135 + 'composite/ThebesLayerComposite.h', 1.136 + 'Compositor.h', 1.137 + 'CompositorTypes.h', 1.138 + 'D3D9SurfaceImage.h', 1.139 + 'Effects.h', 1.140 + 'ImageDataSerializer.h', 1.141 + 'ipc/CompositableForwarder.h', 1.142 + 'ipc/CompositableTransactionParent.h', 1.143 + 'ipc/CompositorChild.h', 1.144 + 'ipc/CompositorParent.h', 1.145 + 'ipc/FenceUtils.h', 1.146 + 'ipc/ImageBridgeChild.h', 1.147 + 'ipc/ImageBridgeParent.h', 1.148 + 'ipc/ISurfaceAllocator.h', 1.149 + 'ipc/LayerTransactionChild.h', 1.150 + 'ipc/LayerTransactionParent.h', 1.151 + 'ipc/ShadowLayers.h', 1.152 + 'ipc/ShadowLayersManager.h', 1.153 + 'ipc/SharedPlanarYCbCrImage.h', 1.154 + 'ipc/SharedRGBImage.h', 1.155 + 'LayersTypes.h', 1.156 + 'opengl/CompositingRenderTargetOGL.h', 1.157 + 'opengl/CompositorOGL.h', 1.158 + 'opengl/GrallocTextureClient.h', 1.159 + 'opengl/GrallocTextureHost.h', 1.160 + 'opengl/MacIOSurfaceTextureClientOGL.h', 1.161 + 'opengl/MacIOSurfaceTextureHostOGL.h', 1.162 + 'opengl/TextureClientOGL.h', 1.163 + 'opengl/TextureHostOGL.h', 1.164 + 'RenderTrace.h', 1.165 + 'YCbCrImageDataSerializer.h', 1.166 +] 1.167 + 1.168 +if CONFIG['MOZ_X11']: 1.169 + EXPORTS.mozilla.layers += [ 1.170 + 'basic/TextureClientX11.h', 1.171 + 'basic/X11TextureSourceBasic.h', 1.172 + 'composite/X11TextureHost.h', 1.173 + 'ipc/ShadowLayerUtilsX11.h', 1.174 + 'opengl/X11TextureSourceOGL.h', 1.175 + ] 1.176 + SOURCES += [ 1.177 + 'basic/TextureClientX11.cpp', 1.178 + 'basic/X11TextureSourceBasic.cpp', 1.179 + 'composite/X11TextureHost.cpp', 1.180 + 'ipc/ShadowLayerUtilsX11.cpp', 1.181 + 'opengl/X11TextureSourceOGL.cpp', 1.182 + ] 1.183 + 1.184 +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': 1.185 + EXPORTS.mozilla.layers += [ 1.186 + 'opengl/GLManager.h', 1.187 + ] 1.188 + EXPORTS += [ 1.189 + 'MacIOSurfaceImage.h', 1.190 + ] 1.191 + UNIFIED_SOURCES += [ 1.192 + 'opengl/GLManager.cpp', 1.193 + ] 1.194 + SOURCES += [ 1.195 + 'ipc/ShadowLayerUtilsMac.cpp', 1.196 + 'MacIOSurfaceImage.cpp', 1.197 + ] 1.198 + 1.199 +# NB: Gralloc is available on other platforms that use the android GL 1.200 +# libraries, but only Gonk is able to use it reliably because Gecko 1.201 +# has full system permissions there. 1.202 +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': 1.203 + EXPORTS.mozilla.layers += [ 1.204 + 'ipc/ShadowLayerUtilsGralloc.h', 1.205 + ] 1.206 + UNIFIED_SOURCES += [ 1.207 + 'GrallocImages.cpp', 1.208 + 'opengl/EGLImageHelpers.cpp', 1.209 + 'opengl/GrallocTextureClient.cpp', 1.210 + 'opengl/GrallocTextureHost.cpp', 1.211 + ] 1.212 + LOCAL_INCLUDES += ['/widget/gonk'] 1.213 + SOURCES += [ 1.214 + 'ipc/ShadowLayerUtilsGralloc.cpp', 1.215 + ] 1.216 + 1.217 + if CONFIG['ANDROID_VERSION'] >= '17': 1.218 + EXPORTS.mozilla.layers += [ 1.219 + 'ipc/FenceUtilsGonk.h', 1.220 + ] 1.221 + SOURCES += [ 1.222 + 'ipc/FenceUtilsGonk.cpp', 1.223 + ] 1.224 + 1.225 +UNIFIED_SOURCES += [ 1.226 + 'apz/src/APZCTreeManager.cpp', 1.227 + 'apz/src/AsyncPanZoomController.cpp', 1.228 + 'apz/src/Axis.cpp', 1.229 + 'apz/src/GestureEventListener.cpp', 1.230 + 'apz/src/TaskThrottler.cpp', 1.231 + 'apz/util/ActiveElementManager.cpp', 1.232 + 'apz/util/APZCCallbackHelper.cpp', 1.233 + 'basic/BasicCanvasLayer.cpp', 1.234 + 'basic/BasicColorLayer.cpp', 1.235 + 'basic/BasicCompositor.cpp', 1.236 + 'basic/BasicContainerLayer.cpp', 1.237 + 'basic/BasicImages.cpp', 1.238 + 'basic/BasicLayerManager.cpp', 1.239 + 'basic/BasicLayersImpl.cpp', 1.240 + 'basic/BasicThebesLayer.cpp', 1.241 + 'basic/TextureHostBasic.cpp', 1.242 + 'BufferUnrotate.cpp', 1.243 + 'client/CanvasClient.cpp', 1.244 + 'client/ClientCanvasLayer.cpp', 1.245 + 'client/ClientColorLayer.cpp', 1.246 + 'client/ClientContainerLayer.cpp', 1.247 + 'client/ClientImageLayer.cpp', 1.248 + 'client/ClientLayerManager.cpp', 1.249 + 'client/ClientThebesLayer.cpp', 1.250 + 'client/ClientTiledThebesLayer.cpp', 1.251 + 'client/CompositableClient.cpp', 1.252 + 'client/ContentClient.cpp', 1.253 + 'client/ImageClient.cpp', 1.254 + 'client/SimpleTextureClientPool.cpp', 1.255 + 'client/SimpleTiledContentClient.cpp', 1.256 + 'client/TextureClient.cpp', 1.257 + 'client/TextureClientPool.cpp', 1.258 + 'client/TiledContentClient.cpp', 1.259 + 'composite/AsyncCompositionManager.cpp', 1.260 + 'composite/CanvasLayerComposite.cpp', 1.261 + 'composite/ColorLayerComposite.cpp', 1.262 + 'composite/CompositableHost.cpp', 1.263 + 'composite/ContainerLayerComposite.cpp', 1.264 + 'composite/ContentHost.cpp', 1.265 + 'composite/ImageHost.cpp', 1.266 + 'composite/ImageLayerComposite.cpp', 1.267 + 'composite/LayerManagerComposite.cpp', 1.268 + 'composite/TextRenderer.cpp', 1.269 + 'composite/TextureHost.cpp', 1.270 + 'composite/ThebesLayerComposite.cpp', 1.271 + 'composite/TiledContentHost.cpp', 1.272 + 'Compositor.cpp', 1.273 + 'CopyableCanvasLayer.cpp', 1.274 + 'Effects.cpp', 1.275 + 'ImageDataSerializer.cpp', 1.276 + 'ImageLayers.cpp', 1.277 + 'ipc/CompositableTransactionParent.cpp', 1.278 + 'ipc/CompositorChild.cpp', 1.279 + 'ipc/CompositorParent.cpp', 1.280 + 'ipc/ImageBridgeChild.cpp', 1.281 + 'ipc/ImageBridgeParent.cpp', 1.282 + 'ipc/ISurfaceAllocator.cpp', 1.283 + 'ipc/LayerTransactionChild.cpp', 1.284 + 'ipc/LayerTransactionParent.cpp', 1.285 + 'ipc/ShadowLayerChild.cpp', 1.286 + 'ipc/ShadowLayerParent.cpp', 1.287 + 'ipc/ShadowLayers.cpp', 1.288 + 'ipc/SharedPlanarYCbCrImage.cpp', 1.289 + 'ipc/SharedRGBImage.cpp', 1.290 + 'LayerScope.cpp', 1.291 + 'LayersLogging.cpp', 1.292 + 'LayerSorter.cpp', 1.293 + 'LayerUtils.cpp', 1.294 + 'opengl/CompositingRenderTargetOGL.cpp', 1.295 + 'opengl/CompositorOGL.cpp', 1.296 + 'opengl/OGLShaderProgram.cpp', 1.297 + 'opengl/TextureClientOGL.cpp', 1.298 + 'opengl/TextureHostOGL.cpp', 1.299 + 'opengl/TexturePoolOGL.cpp', 1.300 + 'ReadbackProcessor.cpp', 1.301 + 'RenderTrace.cpp', 1.302 + 'RotatedBuffer.cpp', 1.303 + 'YCbCrImageDataSerializer.cpp', 1.304 +] 1.305 + 1.306 +SOURCES += [ 1.307 + 'basic/BasicImageLayer.cpp', 1.308 + 'ImageContainer.cpp', 1.309 + 'Layers.cpp', 1.310 + 'LayerTreeInvalidation.cpp', 1.311 +] 1.312 + 1.313 +# Workaround compiler bug (Bug 795594) 1.314 +if CONFIG['_MSC_VER'] and CONFIG['CPU_ARCH'] == 'x86_64': 1.315 + for src in [ 1.316 + 'Layers.cpp', 1.317 + 'LayerTreeInvalidation.cpp', 1.318 + ]: 1.319 + SOURCES[src].no_pgo = True 1.320 + 1.321 +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': 1.322 + SOURCES += [ 1.323 + 'basic/MacIOSurfaceTextureHostBasic.cpp', 1.324 + 'opengl/MacIOSurfaceTextureClientOGL.cpp', 1.325 + 'opengl/MacIOSurfaceTextureHostOGL.cpp', 1.326 + ] 1.327 + 1.328 +IPDL_SOURCES = [ 1.329 + 'ipc/LayersMessages.ipdlh', 1.330 + 'ipc/LayersSurfaces.ipdlh', 1.331 + 'ipc/PCompositable.ipdl', 1.332 + 'ipc/PCompositor.ipdl', 1.333 + 'ipc/PGrallocBuffer.ipdl', 1.334 + 'ipc/PImageBridge.ipdl', 1.335 + 'ipc/PLayer.ipdl', 1.336 + 'ipc/PLayerTransaction.ipdl', 1.337 + 'ipc/PTexture.ipdl', 1.338 +] 1.339 + 1.340 +FAIL_ON_WARNINGS = True 1.341 + 1.342 +MSVC_ENABLE_PGO = True 1.343 + 1.344 +include('/ipc/chromium/chromium-config.mozbuild') 1.345 + 1.346 +FINAL_LIBRARY = 'thebes' 1.347 + 1.348 +if CONFIG['MOZ_DEBUG']: 1.349 + DEFINES['D3D_DEBUG_INFO'] = True 1.350 + 1.351 +if CONFIG['MOZ_ENABLE_D3D10_LAYER']: 1.352 + DEFINES['MOZ_ENABLE_D3D10_LAYER'] = True 1.353 + 1.354 +GENERATED_FILES = [ 1.355 + 'PremultiplyTables.h', 1.356 +] 1.357 + 1.358 +CXXFLAGS += [ 1.359 + '-I%s/%s' % (CONFIG['ANDROID_SOURCE'], d) for d in [ 1.360 + 'frameworks/base/include/media/stagefright', 1.361 + 'frameworks/base/include/media/stagefright/openmax', 1.362 + 'frameworks/av/include/media/stagefright', 1.363 + 'frameworks/native/include/media/openmax', 1.364 + ] 1.365 +]