forked from Kotlin/anko
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild_artifacts.xml
102 lines (84 loc) · 3.34 KB
/
build_artifacts.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
<?xml version="1.0" encoding="UTF-8"?>
<project name="build_artifacts" default="build_artifacts">
<property name="android.sdk" location="dependencies/android-sdk"/>
<condition property="gradlew.file" value="gradlew.bat">
<os family="windows"/>
</condition>
<condition property="gradlew.file" value="./gradlew">
<os family="mac"/>
</condition>
<condition property="gradlew.file" value="./gradlew">
<and>
<os family="unix"/>
<not>
<os family="mac"/>
</not>
</and>
</condition>
<target name="build_artifacts">
<mkdir dir="workdir/zip" />
<delete>
<fileset dir="workdir/zip" includes="*" />
</delete>
<build_artifact version="stubs"/>
<build_artifact version="common"/>
<build_artifact version="sqlite"/>
<parallel threadCount="4">
<build_artifact version="sdk15"/>
<build_artifact version="sdk19"/>
<build_artifact version="sdk21"/>
<build_artifact version="sdk23"/>
</parallel>
<build_artifact version="support-v4"/>
<build_artifact version="appcompat-v7"/>
<parallel threadCount="4">
<build_artifact version="cardview-v7"/>
<build_artifact version="gridlayout-v7"/>
<build_artifact version="recyclerview-v7"/>
<build_artifact version="design"/>
<build_artifact version="percent"/>
</parallel>
</target>
<macrodef name="build_artifact">
<attribute name="version" />
<attribute name="version.dir" default="workdir/gen/@{version}" />
<attribute name="artifact.name" default="@{version}" />
<sequential>
<fail message="The directory '@{version.dir}' does not exist">
<condition>
<not>
<available file="@{version.dir}" type="dir" />
</not>
</condition>
</fail>
<chmod_version version.dir="@{version.dir}"/>
<exec executable="./${gradlew.file}" dir="@{version.dir}">
<env key="ANDROID_HOME" value="${android.sdk}"/>
<arg value="publish"/>
</exec>
<delete>
<fileset dir="@{version.dir}/build/repo/org/jetbrains/anko/anko-@{artifact.name}" includes="maven-metadata.*" />
</delete>
<zip destfile="workdir/zip/anko-@{artifact.name}.zip" basedir="@{version.dir}/build/repo"/>
<copy file="@{version.dir}/build/libs/@{version}.jar"
tofile="workdir/zip/anko-@{artifact.name}.jar"
overwrite="true" />
</sequential>
</macrodef>
<macrodef name="chmod_version">
<attribute name="version.dir" />
<sequential>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpath="dependencies/ant-contrib.jar"/>
<if>
<equals arg1="${gradlew.file}" arg2="gradlew.bat"/>
<then />
<else>
<exec executable="chmod">
<arg value="a+x"/>
<arg path="@{version.dir}/${gradlew.file}"/>
</exec>
</else>
</if>
</sequential>
</macrodef>
</project>