trustedintents / trustedintents / custom_rules.xml @ cba1dc86
History | View | Annotate | Download (4.84 KB)
1 |
<?xml version="1.0" encoding="UTF-8"?>
|
---|---|
2 |
<project name="custom_rules"> |
3 |
|
4 |
<property name="name" value="trustedintents" /> |
5 |
|
6 |
<target name="-getgitdetails" > |
7 |
<exec executable="git" outputproperty="git.describe"> |
8 |
<arg value="describe"/> |
9 |
</exec>
|
10 |
<exec executable="git" outputproperty="git.revision"> |
11 |
<arg value="rev-parse"/> |
12 |
<arg value="HEAD"/> |
13 |
</exec>
|
14 |
<property name="jar.name" value="${name}-${git.describe}" /> |
15 |
<property name="javadoc.jar" value="${jar.name}-javadoc.jar" /> |
16 |
<property name="source.jar" value="${jar.name}-source.jar" /> |
17 |
<property name="pom" value="${jar.name}-source.jar" /> |
18 |
</target>
|
19 |
|
20 |
<target name="-pre-clean" depends="-getgitdetails"> |
21 |
<property name="delete.pattern" value="${jar.name}*.jar*" /> |
22 |
<echo message="deleting ${delete.pattern}" /> |
23 |
<delete failonerror="false"> |
24 |
<fileset dir="." includes="${delete.pattern}" /> |
25 |
</delete>
|
26 |
</target>
|
27 |
|
28 |
<target name="-create-manifest"> |
29 |
<echo message="Creating custom MANIFEST.MF" /> |
30 |
<manifest file="MANIFEST.MF"> |
31 |
<attribute name="Extension-Name" value="info.guardianproject.${name}"/> |
32 |
<attribute name="Implementation-Vendor" value="Guardian Project"/> |
33 |
<attribute name="Implementation-Title" value="TrustedIntents"/> |
34 |
<attribute name="Implementation-URL" value="https://dev.guardianproject.info/projects/${name}"/> |
35 |
<attribute name="Implementation-Git-URL" value="https://github.com/guardianproject/${name}"/> |
36 |
</manifest>
|
37 |
<replaceregexp file="MANIFEST.MF" |
38 |
match="\nCreated-By:.*?\n" |
39 |
replace="" |
40 |
flags="m"/> |
41 |
</target>
|
42 |
|
43 |
<target name="-pre-build" depends="-getgitdetails,-create-manifest"> |
44 |
<echo message="running" /> |
45 |
</target>
|
46 |
|
47 |
<target name="javadoc" description="Generate Javadocs" depends="-pre-build"> |
48 |
<property name="javadoc.dir" value="${out.dir}/javadoc" /> |
49 |
<javadoc sourcepath="${source.dir}" |
50 |
classpath="${toString:project.all.jars.path}:${toString:project.target.class.path}" |
51 |
destdir="${javadoc.dir}" |
52 |
packagenames="info.guardianproject.*" |
53 |
additionalparam="-notimestamp" |
54 |
windowtitle="${ant.project.name}" |
55 |
linkoffline="https://developer.android.com/reference ${sdk.dir}/docs/reference" |
56 |
linksource="true" |
57 |
doctitle="${ant.project.name}" /> |
58 |
<jar destfile="${javadoc.jar}" |
59 |
manifest="MANIFEST.MF" |
60 |
basedir="${javadoc.dir}"> |
61 |
</jar>
|
62 |
<delete file="${javadoc.jar}.asc"/> |
63 |
<exec executable="gpg" failonerror="false"> |
64 |
<arg value="--armor" /> |
65 |
<arg value="--detach-sign" /> |
66 |
<arg value="${javadoc.jar}" /> |
67 |
</exec>
|
68 |
</target>
|
69 |
|
70 |
<target name="source" description="Generate Javadocs" depends="-build-setup,-getgitdetails"> |
71 |
|
72 |
<jar destfile="${source.jar}" |
73 |
manifest="MANIFEST.MF" |
74 |
includes="info/**" |
75 |
basedir="${source.dir}"> |
76 |
</jar>
|
77 |
<delete file="${source.jar}.asc"/> |
78 |
<exec executable="gpg" failonerror="false"> |
79 |
<arg value="--armor" /> |
80 |
<arg value="--detach-sign" /> |
81 |
<arg value="${source.jar}" /> |
82 |
</exec>
|
83 |
</target>
|
84 |
|
85 |
<target name="pom" description="Generate maven .pom" depends="-build-setup,-getgitdetails"> |
86 |
<property name="pom.file" value="${jar.name}.pom" /> |
87 |
<copy file="${name}.pom" tofile="${pom.file}" /> |
88 |
<replaceregexp file="${pom.file}" |
89 |
match="<version>.*</version>" |
90 |
replace="<version>${git.describe}</version>" |
91 |
byline="true" /> |
92 |
|
93 |
<delete file="${pom.file}.asc" /> |
94 |
<exec executable="gpg" failonerror="false"> |
95 |
<arg value="--armor" /> |
96 |
<arg value="--detach-sign" /> |
97 |
<arg value="${pom.file}" /> |
98 |
</exec>
|
99 |
</target>
|
100 |
|
101 |
<target name="-post-build" depends="-getgitdetails"> |
102 |
<condition property="build.is.debug" value="true" else="false"> |
103 |
<equals arg1="${build.target}" arg2="debug" /> |
104 |
</condition>
|
105 |
<if condition="${build.is.debug}"> |
106 |
<then>
|
107 |
<property name="release.jar" value="${jar.name}-debug.jar" /> |
108 |
</then>
|
109 |
<else>
|
110 |
<property name="release.jar" value="${jar.name}.jar" /> |
111 |
</else>
|
112 |
</if>
|
113 |
<property file="${sdk.dir}/tools/source.properties" /> |
114 |
<delete file="${release.jar}"/> |
115 |
<jar destfile="${release.jar}" |
116 |
manifest="MANIFEST.MF" |
117 |
includes="**" |
118 |
excludes="info/guardianproject/trustedintents/BuildConfig.*" |
119 |
basedir="${out.classes.absolute.dir}"> |
120 |
</jar>
|
121 |
<if condition="${build.is.debug}"> |
122 |
<else>
|
123 |
<delete file="${release.jar}.asc"/> |
124 |
<exec executable="gpg" failonerror="false"> |
125 |
<arg value="--armor" /> |
126 |
<arg value="--detach-sign" /> |
127 |
<arg value="${release.jar}" /> |
128 |
</exec>
|
129 |
</else>
|
130 |
</if>
|
131 |
</target>
|
132 |
|
133 |
<target name="release-all" depends="clean,release,javadoc,source,pom" /> |
134 |
|
135 |
</project>
|