This repository has been archived by the owner on May 16, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild-dependencies.xml
84 lines (71 loc) · 2.2 KB
/
build-dependencies.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
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2015-2017 Matt Tropiano
All rights reserved. This program and the accompanying materials
are made available under the terms of the GNU Lesser Public License v2.1
which accompanies this distribution, and is available at
http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html
Contributors:
Matt Tropiano - initial API and implementation
-->
<!DOCTYPE project>
<project name="dependencies" default="compile">
<!-- Folders and File Names -->
<property name="dependencies.dir" value="deps" />
<!-- Git Macros -->
<macrodef name="git">
<attribute name="command" />
<attribute name="dir" default="" />
<element name="args" optional="true" />
<sequential>
<echo message="git @{command}" />
<exec executable="git" dir="@{dir}">
<arg value="@{command}" />
<args/>
</exec>
</sequential>
</macrodef>
<macrodef name="git-clone">
<attribute name="repository" />
<attribute name="dest" />
<sequential>
<git command="clone">
<args>
<arg value="@{repository}" />
<arg value="@{dest}" />
</args>
</git>
</sequential>
</macrodef>
<macrodef name="git-pull">
<attribute name="dest" />
<sequential>
<git command="pull" dir="@{dest}" />
</sequential>
</macrodef>
<macrodef name="git-export">
<attribute name="repository" />
<attribute name="dest" />
<sequential>
<git-clone repository="@{repository}" dest="@{dest}" />
<delete dir="@{dest}/.git" includeemptydirs="true" casesensitive="false" />
</sequential>
</macrodef>
<macrodef name="git-clone-pull">
<attribute name="repository" />
<attribute name="dest" />
<sequential>
<git-clone repository="@{repository}" dest="@{dest}" />
<git-pull dest="@{dest}" />
</sequential>
</macrodef>
<!-- Targets -->
<target name="clean.dependencies" description="Cleans up the dependencies.">
<delete quiet="true" includeemptydirs="true">
<fileset dir="${dependencies.dir}" includes="**/*" defaultexcludes="false" />
</delete>
</target>
<target name="init.dependencies" depends="clean.dependencies" description="Initializes the dependencies folders.">
<mkdir dir="${dependencies.dir}" />
</target>
</project>