|  | # Copyright 2012 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 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. See the | 
|  | # License for the specific language governing permissions and limitations under | 
|  | # the License. | 
|  |  | 
|  | # Description: | 
|  | #   Elemental bindings for GWT # released under various licenses, derived from Dart project | 
|  | licenses(["notice"])  # BSD (with Chrome/WebKit IDL files under LGPL) | 
|  |  | 
|  | package(default_visibility = [ | 
|  | "//visibility:public", | 
|  | ]) | 
|  |  | 
|  | ELEMENTAL_EXTRA_XML = """ | 
|  | <inherits name='com.google.gwt.resources.Resources' /> | 
|  | <set-configuration-property name='user.agent.runtimeWarning' value='false' /> | 
|  | <set-property name='user.agent' value='safari' /> | 
|  | <source path='client' /> | 
|  | <source path='js' /> | 
|  | <source path='canvas'/> | 
|  | <source path='css'/> | 
|  | <source path='dom'/> | 
|  | <source path='events'/> | 
|  | <source path='html'/> | 
|  | <source path='json'/> | 
|  | <source path='ranges'/> | 
|  | <source path='stylesheets'/> | 
|  | <source path='svg'/> | 
|  | <source path='traversal'/> | 
|  | <source path='xpath'/> | 
|  | <source path='xml'/> | 
|  | <source path='util'/> | 
|  | <super-source path='super'/> | 
|  | """ | 
|  |  | 
|  | genrule( | 
|  | name = "elemental_extra_xml", | 
|  | outs = ["ElementalExtra.gwt.xml"], | 
|  | cmd = "echo \"" + ELEMENTAL_EXTRA_XML + "\" > $@", | 
|  | ) | 
|  |  | 
|  | gwt_module( | 
|  | name = "elemental", | 
|  | srcs = [":buildsrcjar"] + glob( | 
|  | ["src/**/*.java"], | 
|  | exclude = ["**/super/**"], | 
|  | ), | 
|  | base_inherits = ["com.google.gwt.core.Core"], | 
|  | extra_module_contents = [":ElementalExtra.gwt.xml"], | 
|  | resources = [ | 
|  | "src/elemental/super/elemental/json/Json.java", | 
|  | "src/elemental/super/elemental/json/impl/JreJsonValue.java", | 
|  | ], | 
|  | deps = ["//third_party/java/gwt"], | 
|  | ) | 
|  |  | 
|  | genrule( | 
|  | name = "buildsrcjar", | 
|  | srcs = glob(["idl/**/*"]), | 
|  | outs = ["elementaldom.srcjar"], | 
|  | cmd = " && ".join([ | 
|  | "mkdir -p $@.tmp", | 
|  | "export CC=$(CC)", | 
|  | "export JAR=$(location //third_party/java/jdk/jar)", | 
|  | "idl/buildsrcjar $@.tmp $@", | 
|  | ]), | 
|  | tools = [ | 
|  | "//third_party/crosstool", | 
|  | "//third_party/java/jdk/jar", | 
|  | "//tools/defaults:jdk", | 
|  | "//tools/defaults:python_runtime", | 
|  | ], | 
|  | ) |