]> git.proxmox.com Git - extjs.git/blob - extjs/examples/modern/addressbook/.sencha/app/cordova-impl.xml
add extjs 6.0.1 sources
[extjs.git] / extjs / examples / modern / addressbook / .sencha / app / cordova-impl.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project name="Cordova" default="cordova-help">
3 <!--Legacy properties file support-->
4 <property file="${app.dir}/cordova.local.properties"/>
5
6 <!--Init for All Cordova Task-->
7 <target name="-before-cordova-init"/>
8 <target name="-cordova-init">
9 <if>
10 <x-is-true value="app.cordova.config.verbose"/>
11 <then>
12 <property name="cordova.cli.options" value="-d"/>
13 </then>
14 <else>
15 <property name="cordova.cli.options" value=""/>
16 </else>
17 </if>
18 </target>
19 <target name="-after-cordova-init"/>
20 <target name="cordova-init"
21 depends="-init, -before-cordova-init, -cordova-init, -after-cordova-init"/>
22
23 <target name="cordova-help"/>
24
25 <!-- Create Cordova Application-->
26 <target name="cordova-create" depends="cordova-init">
27 <if>
28 <not>
29 <available file="${app.cordova.config.path}" type="dir"/>
30 </not>
31 <then>
32 <cordova-echo message="Creating Cordova Application with ID &quot;${app.cordova.config.id}&quot; and Name &quot;${app.cordova.config.name}&quot;"/>
33 <x-shell reloadprofile="true" dir="${app.dir}">
34 cordova ${cordova.cli.options} create "${app.cordova.config.path}" ${app.cordova.config.id} "${app.cordova.config.name}"
35 </x-shell>
36 </then>
37 </if>
38 </target>
39
40 <!-- Prepares application for all platforms -->
41 <target name="-before-cordova-prepare"/>
42 <target name="-cordova-prepare" if="args.prepare">
43 <cordova-echo message="Attempting Cordova Prepare for platforms &quot;${cordova.platforms.clean}&quot;"/>
44 <x-shell reloadprofile="true" dir="${app.cordova.config.path}">
45 cordova ${cordova.cli.options} prepare ${cordova.platforms.clean}
46 </x-shell>
47 </target>
48 <target name="-after-cordova-prepare"/>
49 <target name="cordova-prepare" depends="cordova-init, -before-cordova-prepare, -cordova-prepare, -after-cordova-prepare"/>
50
51 <!-- Emulates application on all platforms -->
52 <target name="-before-cordova-emulate"/>
53 <target name="-cordova-emulate" if="args.emulate" depends="cordova-platform-add">
54 <cordova-echo message="Attempting Cordova Emulate for platforms &quot;${cordova.platforms.clean}&quot;"/>
55 <x-shell reloadprofile="true" dir="${app.cordova.config.path}">
56 cordova ${cordova.cli.options} emulate ${cordova.platforms.clean} --target=${app.cordova.config.target}
57 </x-shell>
58 </target>
59 <target name="-after-cordova-emulate"/>
60 <target name="cordova-emulate" depends="cordova-init, -before-cordova-emulate, -cordova-emulate, -after-cordova-emulate"/>
61
62 <!-- Runs application on device for all platforms -->
63 <target name="-before-cordova-run"/>
64 <target name="-cordova-run" if="args.autorun" depends="cordova-platform-add">
65 <cordova-echo message="Attempting Cordova Run for platforms &quot;${cordova.platforms.clean}&quot;"/>
66 <x-shell reloadprofile="true" dir="${app.cordova.config.path}">
67 cordova ${cordova.cli.options} run ${cordova.platforms.clean} --target=${app.cordova.config.target}
68 </x-shell>
69 </target>
70 <target name="-after-cordova-run"/>
71 <target name="cordova-run" depends="cordova-init, -before-cordova-run, -cordova-run, -after-cordova-run"/>
72
73 <!-- Builds application for all platforms -->
74 <target name="-before-cordova-build"/>
75 <target name="-cordova-build" depends="cordova-platform-add">
76 <cordova-echo message="Attempting Cordova Build for platforms &quot;${cordova.platforms.clean}&quot;"/>
77 <x-shell reloadprofile="true" dir="${app.cordova.config.path}">
78 cordova ${cordova.cli.options} build ${cordova.platforms.clean}
79 </x-shell>
80 </target>
81 <target name="-after-cordova-build"/>
82 <target name="cordova-build" depends="cordova-init, -before-cordova-build, -cordova-build, -after-cordova-build"/>
83
84 <!-- Adds all missing Platforms from properties file to the project-->
85 <target name="-before-cordova-platform-add"/>
86 <target name="-cordova-platform-add">
87 <fail status="0" message="No platforms were specified, add a platform to ${build.name}'s -> cordova -> config -> platforms property in app.json">
88 <condition>
89 <or>
90 <not>
91 <isset property="cordova.platforms"/>
92 </not>
93 <contains string="${cordova.platforms}" substring="$"/>
94 </or>
95 </condition>
96 </fail>
97
98
99 <script language="javascript">
100 var platforms = project.getProperty("cordova.platforms");
101
102 if (!platforms) {
103 platforms = ""
104 }
105 platforms = platforms.replace("/,/g", " ");
106 project.setProperty("cordova.platforms.clean", platforms);
107 </script>
108
109 <x-shell reloadprofile="true" dir="${app.cordova.config.path}" outputproperty="cordova.platforms.list">
110 cordova ${cordova.cli.options} platform list
111 </x-shell>
112
113 <script language="javascript">
114 var target_platforms = project.getProperty("cordova.platforms.clean").split(" ");
115 var existing_platforms = project.getProperty("cordova.platforms.list");
116 var available = existing_platforms.indexOf("Available");
117
118 if (available >= 0) {
119 existing_platforms = existing_platforms.substring(0, available);
120 }
121
122 var missing_platforms = [], platformIndex, platform;
123 for (platformIndex in target_platforms) {
124 platform = target_platforms[platformIndex];
125 if(existing_platforms.indexOf(platform) === -1){
126 missing_platforms.push(platform);
127 }
128 }
129
130 if(missing_platforms.length > 0) {
131 self.log("Cordova: Missing platforms " + missing_platforms.toString() + ". Attempting add.");
132 project.setProperty("cordova.platforms.missing", missing_platforms.join(" "));
133 } else if(existing_platforms.length() >0){
134 self.log("Cordova: All requested platforms exist");
135 } else {
136 self.log("Cordova: No platforms exist");
137 }
138 </script>
139
140 <if>
141 <isset property="cordova.platforms.missing"/>
142 <then>
143 <cordova-echo message="Cordova is adding platforms &quot;${cordova.platforms.missing}&quot;"/>
144 <x-shell reloadprofile="true" dir="${app.cordova.config.path}">
145 cordova ${cordova.cli.options} platform add ${cordova.platforms.missing}
146 </x-shell>
147 </then>
148 </if>
149 </target>
150 <target name="-after-cordova-platform-add"/>
151 <target name="cordova-platform-add" depends="cordova-init, -before-cordova-platform-add, -cordova-platform-add, -after-cordova-platform-add"/>
152
153 <target name="-before-cordova-init-native-package"/>
154 <target name="-cordova-init-native-package" depends="cordova-create"/>
155 <target name="-after-cordova-init-native-package"/>
156 <target name="cordova-init-native-package" depends="cordova-init, -before-cordova-init-native-package, -cordova-init-native-package, -after-cordova-init-native-package"/>
157
158 <target name="-before-cordova-native-package"/>
159 <target name="-cordova-native-package" depends="cordova-platform-add, cordova-build, cordova-prepare, cordova-emulate, cordova-run"/>
160 <target name="-after-cordova-native-package"/>
161 <target name="cordova-native-package" depends="cordova-init, -before-cordova-native-package, -cordova-native-package, -after-cordova-native-package"/>
162
163
164 <macrodef name="cordova-echo">
165 <text name="text" optional="true"/>
166 <attribute name="message" default=""/>
167 <attribute name="level" default="info"/>
168 <sequential>
169 <if>
170 <equals arg1="@{message}" arg2=""/>
171 <then>
172 <x-echo message="[Cordova] @{text}" level="@{level}"/>
173 </then>
174 <else>
175 <x-echo message="[Cordova] @{message}" level="@{level}"/>
176 </else>
177 </if>
178 </sequential>
179 </macrodef>
180 </project>