~jstys-z/helioviewer.org/client5

« back to all changes in this revision

Viewing changes to scripts/build.xml

  • Committer: Keith Hughitt
  • Date: 2011-05-26 19:27:36 UTC
  • mto: This revision was merged to the branch mainline in revision 567.
  • Revision ID: keith.hughitt@nasa.gov-20110526192736-qyr0ltaiak33loik
Updated release notes and sample configuration file.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
<project name="Helioviewer" default="build" basedir="../">
2
 
    <!-- Helioviewer Apache Ant build.xml. -->
3
 
    <!-- Last updated: July 2013 By Jeff -->
4
 
    <description>
5
 
        Helioviewer Apache Ant build.xml
 
2
        <!-- Helioviewer Apache Ant build.xml. -->
 
3
        <!-- Last updated: November 2010 By Keith -->
 
4
        <description>
 
5
                Helioviewer Apache Ant build.xml
6
6
    </description>
7
7
 
8
8
    <!-- Minification and concatenation -->
9
 
    <target name="build" depends="web, embed">
10
 
    </target>
11
 
 
12
 
 
13
 
    <!-- Web Client -->
14
 
    <target name="web">
15
 
        <echo>### Web Client ###</echo>
16
 
 
17
 
        <echo>removing old build files...</echo>
18
 
        <mkdir dir="build/css"/>
19
 
        <delete quiet='false'>
20
 
            <fileset dir="build/" includes="helioviewer.js, helioviewer.min.js" />
21
 
            <fileset dir="build/css" includes="helioviewer.css, helioviewer.min.css" />
22
 
        </delete>
23
 
 
24
 
        <echo>concatenating JavaScript...</echo>
25
 
        <concat destfile="build/helioviewer.js" encoding="UTF-8" outputencoding="UTF-8" fixlastline="true">
26
 
            <filelist dir="src/js" files="Utility/Config.js, Utility/HelperFunctions.js, Tiling/Layer/Layer.js, Tiling/Layer/TileLoader.js, Tiling/Layer/TileLayer.js, Tiling/Layer/HelioviewerTileLayer.js, Utility/KeyboardManager.js, Tiling/Manager/LayerManager.js, Tiling/Manager/TileLayerManager.js, Tiling/Manager/HelioviewerTileLayerManager.js, Image/JP2Image.js, Viewport/Helper/MouseCoordinates.js, Viewport/Helper/HelioviewerMouseCoordinates.js, Viewport/Helper/SandboxHelper.js, Viewport/Helper/ViewportMovementHelper.js, Viewport/HelioviewerViewport.js, HelioviewerClient.js, UI/ZoomControls.js, UI/ImageScale.js, Utility/InputValidator.js, Utility/SettingsLoader.js, Utility/UserSettings.js, Tiling/Manager/LayerManager.js, Events/EventManager.js, Events/EventType.js, Events/EventTree.js, Events/EventFeatureRecognitionMethod.js, Events/EventLayerManager.js, Events/EventMarker.js, Events/EventLayerManager.js, Events/HelioviewerEventLayer.js, Events/HelioviewerEventLayerManager.js, UI/TreeSelect.js, UI/ImageSelectTool.js, Media/MediaManagerUI.js, Media/MediaManager.js, Media/MovieManager.js, Media/MovieManagerUI.js, Media/ScreenshotManager.js, Media/ScreenshotManagerUI.js, UI/TileLayerAccordion.js, UI/EventLayerAccordion.js, UI/MessageConsole.js, UI/TimeControls.js, Utility/FullscreenControl.js, HelioviewerWebClient.js, UI/UserVideoGallery.js, UI/Glossary.js, UI/jquery.ui.dynaccordion.js"/>
27
 
        </concat>
28
 
 
29
 
        <echo>concatenating CSS...</echo>
30
 
        <concat destfile="build/css/helioviewer.css" encoding="UTF-8" eol="lf">
31
 
            <filelist dir="resources/css" files="helioviewer-base.css, helioviewer-web.css"/>
32
 
            <fileset dir="resources/css" includes="*.css" excludes="helioviewer-base.css, helioviewer-web.css, helioviewer-embed.css"/>
33
 
        </concat>
34
 
 
35
 
        <echo>minimizing JavaScript...</echo>
36
 
        <exec dir="scripts/jsmin" executable="jsmin.py" input="build/helioviewer.js"
37
 
          output="build/helioviewer.min.js.tmp" resolveexecutable="true" />
38
 
 
39
 
        <echo>compressing CSS...</echo>
 
9
        <target name="build">
 
10
        <property name="cssdir"  value="resources/css"/>
 
11
        
 
12
                <echo>Concatenating JavaScript/CSS</echo>
 
13
 
 
14
                <!-- Concatenate in two-steps to preserve include order -->
 
15
                <concat destfile="build/helioviewer.js" encoding="UTF-8" eol="lf">
 
16
                        <fileset dir="src/" includes="Utility/Config.js, Tiling/Layer/Layer.js, Tiling/Layer/TileLayer.js, Tiling/Manager/LayerManager.js, Tiling/Manager/TileLayerManager.js, Viewport/Viewport.js, Viewport/Helper/MouseCoordinates.js" />
 
17
                        <fileset dir="src/" includes="**/*.js" excludes="Config.js, Layer.js, LayerManager.js" />
 
18
                </concat>
 
19
 
 
20
                <concat destfile="build/css/helioviewer.css" encoding="UTF-8" eol="lf">
 
21
                        <filelist dir="${cssdir}" files="main.css"/>
 
22
                    <fileset dir="${cssdir}" includes="*.css" excludes="main.css"/>
 
23
                </concat>
 
24
        
 
25
        <echo>Minifying JavaScript/CSS</echo>
 
26
 
 
27
                <!-- Minify JavaScript-->
 
28
                <exec dir="scripts/jsmin" executable="jsmin.py" input="build/helioviewer.js" 
 
29
                  output="build/helioviewer.min.js.tmp" resolveexecutable="true" />
 
30
          
 
31
        <!-- Minify CSS -->
40
32
        <exec dir="build/css/" executable="java">
41
33
            <arg line="-jar ../../scripts/yuicompressor/yuicompressor-2.4.2.jar --type css -o helioviewer.min.css.tmp helioviewer.css" />
42
34
        </exec>
43
 
 
44
 
        <echo>adding link to source JavaScript...</echo>
 
35
          
 
36
        <echo>Adding download notice</echo>  
 
37
        
 
38
        <!-- Add header with link to full code/CSS -->
45
39
        <concat destfile="build/helioviewer.min.js" encoding="UTF-8" eol="lf">
46
40
            <file file="scripts/concat/Header.js" />
47
 
            <file file="build/helioviewer.min.js.tmp" />
 
41
            <file file="build/helioviewer.min.js.tmp" />   
48
42
        </concat>
49
43
        <delete file="build/helioviewer.min.js.tmp" />
50
 
 
51
 
        <echo>adding link to source CSS...</echo>
 
44
        
52
45
        <concat destfile="build/css/helioviewer.min.css" encoding="UTF-8" eol="lf">
53
46
            <file file="scripts/concat/Header.css" />
54
 
            <file file="build/css/helioviewer.min.css.tmp" />
 
47
            <file file="build/css/helioviewer.min.css.tmp" />   
55
48
        </concat>
56
49
        <delete file="build/css/helioviewer.min.css.tmp" />
57
 
 
58
 
        <echo>DONE</echo>
59
 
    </target>
60
 
 
61
 
 
62
 
    <!-- Embed Client -->
63
 
    <target name="embed">
64
 
        <echo>### Embed Client ###</echo>
65
 
 
66
 
        <echo>removing old build files...</echo>
67
 
        <delete quiet='false'>
68
 
            <fileset dir="build/" includes="helioviewer-embed.js, helioviewer-embed.min.js" />
69
 
            <fileset dir="build/css" includes="helioviewer-embed.css, helioviewer-embed.min.css" />
70
 
        </delete>
71
 
 
72
 
        <echo>concatenating JavaScript...</echo>
73
 
        <concat destfile="build/helioviewer-embed.js" encoding="UTF-8" outputencoding="UTF-8" fixlastline="true">
74
 
            <filelist dir="src/js" files="Utility/Config.js, Utility/HelperFunctions.js, Tiling/Layer/Layer.js, Tiling/Layer/TileLoader.js, Tiling/Layer/TileLayer.js, Tiling/Layer/HelioviewerTileLayer.js, Utility/KeyboardManager.js, Tiling/Manager/LayerManager.js, Tiling/Manager/TileLayerManager.js, Tiling/Manager/HelioviewerTileLayerManager.js, Image/JP2Image.js, Viewport/Helper/MouseCoordinates.js, Viewport/Helper/HelioviewerMouseCoordinates.js, Viewport/Helper/SandboxHelper.js, Viewport/Helper/ViewportMovementHelper.js, Viewport/HelioviewerViewport.js, HelioviewerClient.js, UI/ZoomControls.js, UI/ImageScale.js, Utility/InputValidator.js, Utility/SettingsLoader.js, Utility/UserSettings.js, Tiling/Manager/LayerManager.js, Events/EventManager.js, Events/EventType.js, Events/EventTree.js, Events/EventFeatureRecognitionMethod.js, Events/EventLayerManager.js, Events/EventMarker.js, Events/EventLayerManager.js, Events/HelioviewerEventLayer.js, Events/HelioviewerEventLayerManager.js, HelioviewerEmbeddedClient.js"/>
75
 
        </concat>
76
 
 
77
 
        <echo>concatenating CSS...</echo>
78
 
        <concat destfile="build/css/helioviewer-embed.css" encoding="UTF-8" eol="lf">
79
 
            <filelist dir="resources/css" files="helioviewer-base.css, helioviewer-embed.css, zoom-control.css"/>
80
 
        </concat>
81
 
 
82
 
        <echo>minimizing JavaScript...</echo>
83
 
        <exec dir="scripts/jsmin" executable="jsmin.py" input="build/helioviewer-embed.js"
84
 
          output="build/helioviewer-embed.min.js.tmp" resolveexecutable="true" />
85
 
 
86
 
        <echo>compressing CSS...</echo>
87
 
        <exec dir="build/css/" executable="java">
88
 
            <arg line="-jar ../../scripts/yuicompressor/yuicompressor-2.4.2.jar --type css -o helioviewer-embed.min.css.tmp helioviewer-embed.css" />
89
 
        </exec>
90
 
 
91
 
        <echo>adding link to source JavaScript...</echo>
92
 
        <concat destfile="build/helioviewer-embed.min.js" encoding="UTF-8" eol="lf">
93
 
            <file file="scripts/concat/Header.js" />
94
 
            <file file="build/helioviewer-embed.min.js.tmp" />
95
 
        </concat>
96
 
        <delete file="build/helioviewer-embed.min.js.tmp" />
97
 
 
98
 
        <echo>adding link to source CSS...</echo>
99
 
        <concat destfile="build/css/helioviewer-embed.min.css" encoding="UTF-8" eol="lf">
100
 
            <file file="scripts/concat/Header.css" />
101
 
            <file file="build/css/helioviewer-embed.min.css.tmp" />
102
 
        </concat>
103
 
        <delete file="build/css/helioviewer-embed.min.css.tmp" />
104
 
 
105
 
        <echo>DONE</echo>
106
 
    </target>
107
 
 
108
 
    <!-- JavaScript Documentation Generation -->
109
 
    <target name="jsdoc">
110
 
        <echo>Generating documentation...</echo>
111
 
        <exec dir="scripts/jsdoc-toolkit/" executable="java">
112
 
            <arg line="-jar jsrun.jar app/run.js -a -p -t=templates/jsdoc -d=../../docs/ ../../src/js" />
113
 
        </exec>
114
 
    </target>
115
 
 
116
 
 
117
 
    <!--  JSLint -->
 
50
                  
 
51
                <echo>Done!</echo>
 
52
        </target>
 
53
        
 
54
        <!-- JavaScript Documentation Generation -->
 
55
        <target name="jsdoc">
 
56
                <echo>Generating documentation...</echo>
 
57
                <exec dir="scripts/jsdoc-toolkit/" executable="java">
 
58
                        <arg line="-jar jsrun.jar app/run.js -a -p -t=templates/jsdoc -d=../../docs/ ../../src" />
 
59
                </exec>
 
60
        </target>
 
61
        
 
62
        <!--  JSLint -->
118
63
    <target name="jslint">
119
64
        <description>
120
65
            Verifies JavaScript code using the Rhino version of JSLint.
121
66
            Requires Rhino (sudo apt-get install rhino).
122
67
        </description>
123
 
        <property name="rhino.jar" value="/usr/share/java/js.jar"/>
 
68
        <property name="rhino.jar" value="/usr/share/java/js.jar"/>  
124
69
        <property name="jslint.js" value="scripts/jslint/jslint.js"/>
125
 
        <echo message="Running JSLint..."/>
126
 
        <apply executable="java" parallel="false">
127
 
            <fileset dir="src/js/" includes="**/*.js" />
128
 
            <arg line="-jar"/>
129
 
            <arg path="${rhino.jar}"/>
130
 
            <arg path="${jslint.js}"/>
131
 
        </apply>
132
 
    </target>
133
 
 
134
 
    <!-- Cleanup -->
135
 
    <target name="clean">
136
 
        <echo>Removing old build files</echo>
137
 
        <delete quiet='false'>
138
 
            <fileset dir="build/" includes="*.js" />
139
 
            <fileset dir="build/css" includes="*.css" />
140
 
        </delete>
 
70
            <echo message="Running JSLint..."/>
 
71
                <apply executable="java" parallel="false">
 
72
                    <fileset dir="src/" includes="**/*.js" />
 
73
                    <arg line="-jar"/>
 
74
                    <arg path="${rhino.jar}"/>
 
75
                    <arg path="${jslint.js}"/>
 
76
                </apply>
141
77
    </target>
142
78
</project>