tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

moz.build (2644B)


      1 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
      2 # vim: set filetype=python:
      3 # This Source Code Form is subject to the terms of the Mozilla Public
      4 # License, v. 2.0. If a copy of the MPL was not distributed with this
      5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
      6 
      7 FINAL_LIBRARY = "js"
      8 
      9 # Includes should be relative to parent path
     10 LOCAL_INCLUDES += ["!..", ".."]
     11 
     12 include("../js-compileflags.mozbuild")
     13 include("../js-config.mozbuild")
     14 include("../js-cxxflags.mozbuild")
     15 
     16 
     17 # Generate frontend/ReservedWordsGenerated.h from frontend/ReservedWords.h
     18 flags = []
     19 if CONFIG["ENABLE_DECORATORS"]:
     20     flags.append("--enable-decorators")
     21 if CONFIG["ENABLE_EXPLICIT_RESOURCE_MANAGEMENT"]:
     22     flags.append("--enable-explicit-resource-management")
     23 if flags:
     24     GeneratedFile(
     25         "ReservedWordsGenerated.h",
     26         script="GenerateReservedWords.py",
     27         inputs=["ReservedWords.h"],
     28         flags=flags,
     29     )
     30 else:
     31     GeneratedFile(
     32         "ReservedWordsGenerated.h",
     33         script="GenerateReservedWords.py",
     34         inputs=["ReservedWords.h"],
     35     )
     36 
     37 UNIFIED_SOURCES += [
     38     "AbstractScopePtr.cpp",
     39     "AsyncEmitter.cpp",
     40     "BytecodeCompiler.cpp",
     41     "BytecodeControlStructures.cpp",
     42     "BytecodeEmitter.cpp",
     43     "BytecodeSection.cpp",
     44     "CallOrNewEmitter.cpp",
     45     "CForEmitter.cpp",
     46     "DefaultEmitter.cpp",
     47     "DoWhileEmitter.cpp",
     48     "ElemOpEmitter.cpp",
     49     "EmitterScope.cpp",
     50     "ExpressionStatementEmitter.cpp",
     51     "FoldConstants.cpp",
     52     "ForInEmitter.cpp",
     53     "ForOfEmitter.cpp",
     54     "ForOfLoopControl.cpp",
     55     "FrontendContext.cpp",
     56     "FunctionEmitter.cpp",
     57     "IfEmitter.cpp",
     58     "JumpList.cpp",
     59     "LabelEmitter.cpp",
     60     "LexicalScopeEmitter.cpp",
     61     "NameFunctions.cpp",
     62     "NameOpEmitter.cpp",
     63     "ObjectEmitter.cpp",
     64     "ObjLiteral.cpp",
     65     "OptionalEmitter.cpp",
     66     "ParseContext.cpp",
     67     "ParseNode.cpp",
     68     "ParseNodeVerify.cpp",
     69     "ParserAtom.cpp",
     70     "PrivateOpEmitter.cpp",
     71     "PropOpEmitter.cpp",
     72     "SharedContext.cpp",
     73     "SourceNotes.cpp",
     74     "Stencil.cpp",
     75     "StencilXdr.cpp",
     76     "SwitchEmitter.cpp",
     77     "TDZCheckCache.cpp",
     78     "TokenStream.cpp",
     79     "TryEmitter.cpp",
     80     "WhileEmitter.cpp",
     81 ]
     82 
     83 if CONFIG["ENABLE_DECORATORS"]:
     84     UNIFIED_SOURCES += [
     85         "DecoratorEmitter.cpp",
     86     ]
     87 
     88 if CONFIG["ENABLE_EXPLICIT_RESOURCE_MANAGEMENT"]:
     89     UNIFIED_SOURCES += [
     90         "UsingEmitter.cpp",
     91     ]
     92 
     93 # Parser.cpp cannot be built in unified mode because of explicit
     94 #   template instantiations.
     95 SOURCES += [
     96     "Parser.cpp",
     97 ]
     98 
     99 if CONFIG["FUZZING_INTERFACES"] and CONFIG["LIBFUZZER"]:
    100     include("/tools/fuzzing/libfuzzer-config.mozbuild")