blob: fd7be424d70f30f7ae5309325d3360962b84933d [file] [log] [blame]
<!-- -->
<!-- Copyright 2009 Google Inc. -->
<!-- Licensed under the Apache License, Version 2.0 (the "License"); you -->
<!-- may not use this file except in compliance with the License. You may -->
<!-- may obtain a copy of the License at -->
<!-- -->
<!-- http://www.apache.org/licenses/LICENSE-2.0 -->
<!-- -->
<!-- Unless required by applicable law or agreed to in writing, software -->
<!-- distributed under the License is distributed on an "AS IS" BASIS, -->
<!-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -->
<!-- implied. License for the specific language governing permissions and -->
<!-- limitations under the License. -->
<!-- Compiler parameters that can be overridden . -->
<!-- -->
<module type="fileset">
<!--
A user-specified initial load sequence for the runAsync calls. Each entry should specify the
surrounding method immediately enclosing the call, using a full JSNI reference.
-->
<define-configuration-property name='compiler.splitpoint.initial.sequence'
is-multi-valued='true' />
<!--
A user-specified limit in bytes where fragments smaller than the limit are
rolled into the leftovers fragment.
-->
<define-configuration-property name='compiler.splitpoint.leftovermerge.size'
is-multi-valued='false' />
<!--
Whether or not the compiler should predeclare variables that are defined
outside the initial download and are referenced from a different code
fragment than the one defining them. This is usually determined by which
linker is used and is not directly meaningful to users.
-->
<define-property name="compiler.predeclare.cross.fragment.references"
values="true,false" />
<set-property name="compiler.predeclare.cross.fragment.references"
value="false" />
<!--
Whether or not the compiler should alter Enum.name() to return
ordinal() as a way of obfuscating Enum field identifiers.
-->
<define-configuration-property name="compiler.enum.obfuscate.names"
is-multi-valued='false' />
<set-configuration-property name="compiler.enum.obfuscate.names"
value="false" />
<!-- From here down, the properties are unsupported and are only available for test cases -->
<!--
This is the maximum number of variables in any var statement GWT
will emit. This avoids a bug in some browsers including
the initial beta of Safari 4. See Issue 3455. If it is set to -1,
then there is no limit.
-->
<define-configuration-property name='compiler.max.vars.per.var'
is-multi-valued='false' />
<set-configuration-property name='compiler.max.vars.per.var' value='2400' />
<!--
The iframe linker chunks its output into multiple <script> tags. The default size is fine for
production use; it is overridable mainly for test cases. This size must be small enough that
block-size restrictions in IE are satisfied, because the script tag chunking undoes
JsIEBlockSizeVisitor. If it's set to -1, then no chunking is performed and
JsIEBlockSizeVisitor has its usual effect.
-->
<define-configuration-property name="iframe.linker.script.chunk.size"
is-multi-valued="false" />
<set-configuration-property name="iframe.linker.script.chunk.size"
value="30000" />
<!--
The compiler emits deferred code into a deferredjs subdirectory of the
output. This property allows test cases to have the iframe linker
load the deferred code from a different subdirectory.
-->
<define-configuration-property name="iframe.linker.deferredjs.subdir"
is-multi-valued="false" />
<set-configuration-property name="iframe.linker.deferredjs.subdir"
value="deferredjs" />
<!--
Specifies whether a given permutation has source map support enabled.
-->
<define-property name="compiler.useSourceMaps" values="true,false"/>
<set-property name="compiler.useSourceMaps" value="false"/>
<!--
Specifies whether a given permutation has symbol map support enabled.
-->
<define-property name="compiler.useSymbolMaps" values="true,false"/>
<set-property name="compiler.useSymbolMaps" value="false"/>
<!--
Specifies an additional list of Javascript identifiers which are disallowed
as symbols in the module output.
-->
<define-configuration-property name="js.identifier.blacklist"
is-multi-valued="true"/>
<!--
Specifies an additional list of Javascript identifiers which are disallowed
as symbols in the module output if they end with one of the given
case insensitive suffixes.
-->
<define-configuration-property name="js.identifier.blacklist.suffixes"
is-multi-valued="true"/>
<!--
Specifies that @JsExport assignments are fully qualified expressions. This increases code
size, but allows closure compiler integration to work better by letting closure rename the
namespaces of exports to top level global variables.
-->
<define-configuration-property name="js.export.closurestyle.fullyqualified"
is-multi-valued="false"/>
<set-configuration-property name="js.export.closurestyle.fullyqualified"
value="false" />
<!--
Specifies that a binding property should be included in the $gwt.permProps variable
in the generated JavaScript. This will allow Super Dev Mode to pick it up
regardless of how many permutations are generated.
-->
<define-configuration-property name="js.embedded.properties" is-multi-valued="true"/>
<extend-configuration-property name="js.embedded.properties" value="locale"/>
<extend-configuration-property name="js.embedded.properties" value="user.agent"/>
</module>