-
Notifications
You must be signed in to change notification settings - Fork 24
/
build.eant
129 lines (109 loc) · 3.49 KB
/
build.eant
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?xml version="1.0"?>
<project name="gobo" default="help">
<description>
description: "Eiffel Ant file for Gobo Eiffel"
copyright: "Copyright (c) 2001-2024, Eric Bezault and others"
license: "MIT License"
</description>
<inherit>
<parent location="${GOBO}/library/common/config/packages.eant">
<redefine target="init"/>
<redefine target="other_help"/>
</parent>
</inherit>
<target name="develop" depend="init">
<description>
Install developer package.
The bootstrap should be run first.
</description>
<geant target="clobber"/>
<geant target="install"/>
<geant target="clean"/>
</target>
<target name="delivery" depend="init">
<description>
Build delivery package.
The bootstrap should be run first.
</description>
<geant target="develop"/>
<delete directory=".azure"/>
<delete directory=".cicd"/>
<delete directory=".githooks"/>
<delete directory=".github"/>
<delete directory=".sourceforge"/>
<delete directory="library/structure/doc/visio"/>
<delete directory="library/time/doc/visio"/>
<delete>
<fileset directory="." include="@(**/.git*)"/>
</delete>
<delete file="azure-pipelines.yml"/>
</target>
<target name="web_site" depend="init">
<description>
Build documentation package for the Web site.
The bootstrap should be run first.
</description>
<setenv name="path_to_gobo" value="http://www.gobosoft.com/eiffel/gobo/"/>
<geant target="delivery"/>
<geant target="move_doc_files" arguments="library">
<fileset include="@(library/*/build.eant)">
<map type="glob" from="library/*/build.eant" to="*"/>
</fileset>
</geant>
<geant target="move_doc_files" arguments="tool">
<fileset include="@(tool/*/build.eant)">
<map type="glob" from="tool/*/build.eant" to="*"/>
</fileset>
</geant>
<move to_directory=".">
<fileset include="@(common/**/*)">
<map type="glob" from="common/*" to="*"/>
</fileset>
</move>
<delete directory="library"/>
<delete directory="tool"/>
<delete directory="common"/>
<delete>
<fileset directory="." include="**/*.@(eant|xml|xsl)"/>
</delete>
</target>
<!-- Implementation -->
<target name="init" export="NONE">
<geant target="init_os"/>
</target>
<target name="init_os" export="NONE">
<geant target="init_windows" if="${GOBO_OS}=windows"/>
<geant target="init_unix" unless="${GOBO_OS}=windows"/>
</target>
<target name="init_windows" export="NONE">
<!-- No special windows tasks needed for now but target is kept for possible future instructions -->
</target>
<target name="init_unix" export="NONE">
<!-- No special unix tasks needed for now but target is kept for possible future instructions -->
</target>
<target name="other_help" export="NONE">
<echo message=" geant develop"/>
<echo message=" geant delivery"/>
<echo message=" geant web_site"/>
<precursor/>
</target>
<target name="move_doc_files" export="NONE">
<description>
Move documentation files for the Web site.
</description>
<argument name="kind_type"/>
<geant file="build.eant" target="do_move_doc_files" arguments="${kind_type},${fs.mapped_filename}"/>
</target>
<target name="do_move_doc_files">
<description>
Move documentation files for the Web site.
</description>
<argument name="kind_type"/>
<argument name="kind_name"/>
<move to_directory="${kind_name}">
<fileset include="@(${kind_type}/${kind_name}/doc/**/*)">
<map type="glob" from="${kind_type}/${kind_name}/doc/*" to="*"/>
</fileset>
</move>
</target>
</project>