gfx/angle/moz.build

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/gfx/angle/moz.build	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,143 @@
     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 +# libEGL depends on (links against!) libGLESv2!
    1.11 +if CONFIG['MOZ_ANGLE_RENDERER']:
    1.12 +    DIRS += ['src/libGLESv2', 'src/libEGL']
    1.13 +
    1.14 +EXPORTS.angle += [
    1.15 +    'include/GLSLANG/ShaderLang.h',
    1.16 +    'include/KHR/khrplatform.h',
    1.17 +]
    1.18 +
    1.19 +# WARNING: CPP_SOURCES seems very dependent on ordering. Grouping all of these
    1.20 +# CPP_SOURCES lines into one list may break webgl tests.
    1.21 +
    1.22 +# Target: 'preprocessor'
    1.23 +# src/compiler/preprocessor:
    1.24 +UNIFIED_SOURCES += ['src/compiler/preprocessor/' + src for src in [
    1.25 +    'DiagnosticsBase.cpp',
    1.26 +    'DirectiveHandlerBase.cpp',
    1.27 +    'DirectiveParser.cpp',
    1.28 +    'ExpressionParser.cpp',
    1.29 +    'Input.cpp',
    1.30 +    'Lexer.cpp',
    1.31 +    'Macro.cpp',
    1.32 +    'MacroExpander.cpp',
    1.33 +    'Preprocessor.cpp',
    1.34 +    'Token.cpp',
    1.35 +    'Tokenizer.cpp',
    1.36 +]]
    1.37 +
    1.38 +# Target: 'translator_common'
    1.39 +#   Requires: 'preprocessor'
    1.40 +# src/compiler:
    1.41 +UNIFIED_SOURCES += ['src/compiler/' + src for src in [
    1.42 +    'BuiltInFunctionEmulator.cpp',
    1.43 +    'Compiler.cpp',
    1.44 +    'compiler_debug.cpp',
    1.45 +    'CompilerUniform.cpp',
    1.46 +    'DetectCallDepth.cpp',
    1.47 +    'Diagnostics.cpp',
    1.48 +    'DirectiveHandler.cpp',
    1.49 +    'ForLoopUnroll.cpp',
    1.50 +    'InfoSink.cpp',
    1.51 +    'Initialize.cpp',
    1.52 +    'InitializeDll.cpp',
    1.53 +    'InitializeParseContext.cpp',
    1.54 +    'Intermediate.cpp',
    1.55 +    'intermOut.cpp',
    1.56 +    'IntermTraverse.cpp',
    1.57 +    'MapLongVariableNames.cpp',
    1.58 +    'parseConst.cpp',
    1.59 +    'ParseHelper.cpp',
    1.60 +    'PoolAlloc.cpp',
    1.61 +    'QualifierAlive.cpp',
    1.62 +    'RemoveTree.cpp',
    1.63 +    'SymbolTable.cpp',
    1.64 +    'util.cpp',
    1.65 +    'ValidateLimitations.cpp',
    1.66 +    'VariableInfo.cpp',
    1.67 +    'VariablePacker.cpp',
    1.68 +]]
    1.69 +# The yacc source files need to be built separately.
    1.70 +SOURCES += ['src/compiler/' + src for src in [
    1.71 +    'glslang_lex.cpp',
    1.72 +    'glslang_tab.cpp',
    1.73 +]]
    1.74 +
    1.75 +# src/compiler/depgraph:
    1.76 +UNIFIED_SOURCES += ['src/compiler/depgraph/' + src for src in [
    1.77 +    'DependencyGraph.cpp',
    1.78 +    'DependencyGraphBuilder.cpp',
    1.79 +    'DependencyGraphOutput.cpp',
    1.80 +    'DependencyGraphTraverse.cpp',
    1.81 +]]
    1.82 +
    1.83 +# src/compiler/timing:
    1.84 +UNIFIED_SOURCES += ['src/compiler/timing/' + src for src in [
    1.85 +    'RestrictFragmentShaderTiming.cpp',
    1.86 +    'RestrictVertexShaderTiming.cpp',
    1.87 +]]
    1.88 +
    1.89 +# src/third_party/compiler:
    1.90 +UNIFIED_SOURCES += ['src/third_party/compiler/' + src for src in [
    1.91 +    'ArrayBoundsClamper.cpp',
    1.92 +]]
    1.93 +
    1.94 +# src/third_party/murmurhash:
    1.95 +UNIFIED_SOURCES += ['src/third_party/murmurhash/' + src for src in [
    1.96 +    'MurmurHash3.cpp',
    1.97 +]]
    1.98 +
    1.99 +if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
   1.100 +    UNIFIED_SOURCES += [
   1.101 +        'src/compiler/ossource_win.cpp',
   1.102 +    ]
   1.103 +else:
   1.104 +    UNIFIED_SOURCES += [
   1.105 +        'src/compiler/ossource_posix.cpp',
   1.106 +    ]
   1.107 +
   1.108 +# Target: 'translator_glsl'
   1.109 +#   Requires: 'translator_common'
   1.110 +# src/compiler:
   1.111 +UNIFIED_SOURCES += ['src/compiler/' + src for src in [
   1.112 +    'CodeGenGLSL.cpp',
   1.113 +    'OutputESSL.cpp',
   1.114 +    'OutputGLSL.cpp',
   1.115 +    'OutputGLSLBase.cpp',
   1.116 +    'ShaderLang.cpp',
   1.117 +    'TranslatorESSL.cpp',
   1.118 +    'TranslatorGLSL.cpp',
   1.119 +    'VersionGLSL.cpp',
   1.120 +]]
   1.121 +MSVC_ENABLE_PGO = True
   1.122 +
   1.123 +LOCAL_INCLUDES += [
   1.124 +    'include',
   1.125 +    'include/KHR',
   1.126 +    'src',
   1.127 +]
   1.128 +
   1.129 +if CONFIG['GKMEDIAS_SHARED_LIBRARY']:
   1.130 +    NO_VISIBILITY_FLAGS = True
   1.131 +
   1.132 +FINAL_LIBRARY = 'gkmedias'
   1.133 +
   1.134 +DEFINES['ANGLE_DISABLE_TRACE'] = True
   1.135 +DEFINES['ANGLE_COMPILE_OPTIMIZATION_LEVEL'] = 'D3DCOMPILE_OPTIMIZATION_LEVEL1'
   1.136 +DEFINES['COMPILER_IMPLEMENTATION'] = True
   1.137 +
   1.138 +# Suppress warnings in third-party code.
   1.139 +if CONFIG['GNU_CXX']:
   1.140 +    CXXFLAGS += [
   1.141 +        '-Wno-attributes',
   1.142 +        '-Wno-sign-compare',
   1.143 +        '-Wno-unknown-pragmas',
   1.144 +    ]
   1.145 +    if CONFIG['CLANG_CXX']:
   1.146 +        CXXFLAGS += ['-Wno-unused-private-field']

mercurial