Statistics
| Revision:

gvsig-raster / org.gvsig.raster.tools / tags / gvSIGv2_1_0_Build_2218 / prepare-workspace.xml @ 3911

History | View | Annotate | Download (6.46 KB)

1 680 nbrodin
<project name="org.gvsig.initial.build" default="prepare-workspace">
2 730 cordinyana
3
        <dirname property="org.gvsig.initial.build.basedir" file="${ant.file.org.gvsig.initial.build}" />
4
5
        <property name="workspace.basedir" value="${org.gvsig.initial.build.basedir}/.." />
6
        <property name="build.basedir" value="${workspace.basedir}/org.gvsig.maven.base.build" description="Eclipse workspace location" />
7
        <property name="build.jar.version" value="1.0.8-SNAPSHOT" />
8
        <property name="build.jar.file" value="org.gvsig.maven.base.build-${build.jar.version}.jar" />
9
10
        <property name="ant.libs.dir" location="${build.basedir}" description="Additional ant tasks libs folder" />
11
12 680 nbrodin
        <target name="check-maven-base-build-available">
13 730 cordinyana
                <available file="${user.home}/.m2/repository/org/gvsig/org.gvsig.maven.base.build/${build.jar.version}/${build.jar.file}" property="maven-base-build-available" />
14 680 nbrodin
        </target>
15 730 cordinyana
16
        <target name="get-maven-base-build-local" depends="check-maven-base-build-available" if="maven-base-build-available">
17 680 nbrodin
                <!-- Unzip de build jar file from the maven repository into the workspace root folder -->
18 730 cordinyana
                <copy todir="${workspace.basedir}" preservelastmodified="false" filtering="false">
19
                        <zipfileset src="${user.home}/.m2/repository/org/gvsig/org.gvsig.maven.base.build/${build.jar.version}/${build.jar.file}">
20
                                <patternset>
21
                                        <exclude name="META-INF/**" />
22
                                </patternset>
23
                        </zipfileset>
24
                </copy>
25 680 nbrodin
        </target>
26 730 cordinyana
27
        <target name="get-maven-base-build-remote" depends="check-maven-base-build-available" unless="maven-base-build-available">
28
                <mkdir dir="target" />
29
30 680 nbrodin
                <!-- Download the build jar file -->
31 915 cordinyana
                <get src="http://devel.gvsig.org/m2repo/j2se/org/gvsig/org.gvsig.maven.base.build/${build.jar.version}/${build.jar.file}" dest="target/${build.jar.file}" verbose="true" />
32 730 cordinyana
33 680 nbrodin
                <!-- Unzip de build jar file into the workspace root folder -->
34 730 cordinyana
                <copy todir="${workspace.basedir}" preservelastmodified="false" filtering="false">
35
                        <zipfileset src="target/${build.jar.file}">
36
                                <patternset>
37
                                        <exclude name="META-INF/**" />
38
                                </patternset>
39
                        </zipfileset>
40
                </copy>
41
42 680 nbrodin
        </target>
43
44 730 cordinyana
        <target name="find.depends.natives.file">
45
            <condition property="depends.natives.file.exists">
46
            <available file="${org.gvsig.initial.build.basedir}/DEPENDS_ON_NATIVE_LIBRARIES"/>
47
            </condition>
48
        </target>
49 680 nbrodin
50 730 cordinyana
        <target name="find.gvsig.platform.properties.file"
51
                        depends="find.depends.natives.file"
52
                        if="depends.natives.file.exists">
53
            <condition property="gvsig.platform.exists">
54
            <available file="${user.home}/.gvsig.platform.properties"/>
55
            </condition>
56
        </target>
57
58
        <target name="check.gvsig.platform.properties"
59
                        depends="find.gvsig.platform.properties.file">
60
                <fail if="depends.natives.file.exists" unless="gvsig.platform.exists">
61
ERROR!!
62
63
You have to define your gvSIG platform properties,
64
by creating the file: ${user.home}/.gvsig.platform.properties
65
with the following content:
66
67
native_platform=linux
68
native_distribution=all
69
native_compiler=gcc4
70
native_arch=i386
71
native_libraryType=dynamic
72
export native_classifier=${native_platform}-${native_distribution}-${native_compiler}-${native_arch}-${native_libraryType}
73
74
Replace the fifth initial variables values with the ones appropiate
75
to your platform.
76
77
If you use maven in the command line, you can use the previous file also
78
to define the MAVEN_OPTS environment variable, by adding to your
79
.bash_rc file something like this:
80
81
if [ -f "${HOME}/.gvsig.platform.properties" ]
82
then
83
    . ${HOME}/.gvsig.platform.properties
84
    export MAVEN_OPTS="-Xmx256M -XX:MaxPermSize=64m -Dnative-classifier=${native_classifier}"
85
else
86
    export MAVEN_OPTS="-Xmx256M -XX:MaxPermSize=64m"
87
fi
88
89
It will work if you use the bash shell. In any other case or platform, you'll
90
have to define your MAVEN_OPTS environment variable and set the
91
"native-classifier" parameter directly.
92
                </fail>
93
94
        </target>
95
96
        <target name="prepare-workspace" depends="get-maven-base-build-local,get-maven-base-build-remote,check.gvsig.platform.properties">
97
98
                <mkdir dir="target" />
99
100
                <chmod dir="${build.basedir}/maven/bin" perm="u+x" includes="m2,mvn,mvnDebug" />
101
102 680 nbrodin
                <!-- Copy the maven launchers to the workspace metadata folder -->
103
                <copy todir="${workspace.basedir}/.metadata">
104 730 cordinyana
                        <fileset dir="${build.basedir}/eclipse-launchers">
105
                                <exclude name="**/org.eclipse.jdt.core.prefs" />
106
                                <exclude name="**/org.eclipse.core.variables.prefs" />
107
                        </fileset>
108 680 nbrodin
                </copy>
109 730 cordinyana
110
                <concat destfile="${workspace.basedir}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs" append="true">
111
                        <filelist dir="${build.basedir}/eclipse-launchers/.plugins/org.eclipse.core.runtime/.settings" files="org.eclipse.jdt.core.prefs" />
112
                </concat>
113
                <concat destfile="${workspace.basedir}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.variables.prefs" append="true">
114
                        <filelist dir="${build.basedir}/eclipse-launchers/.plugins/org.eclipse.core.runtime/.settings" files="org.eclipse.core.variables.prefs" />
115
                </concat>
116
117 680 nbrodin
                <!-- Configure the eclipse workspace -->
118 730 cordinyana
                <ant antfile="${build.basedir}/maven-goals.xml" target="mvn-configure-eclipse-workspace" />
119 680 nbrodin
120
                <!-- Configure the gvSIG profile -->
121 730 cordinyana
                <ant antfile="${build.basedir}/check-gvsig-profile.xml" />
122 680 nbrodin
123 730 cordinyana
                <property name="user-settings-file-location" value="${user.home}/.m2/settings.xml" />
124
125
                <taskdef name="xmltask" classname="com.oopsconsultancy.xmltask.ant.XmlTask">
126
                        <classpath>
127
                                <pathelement location="${ant.libs.dir}/com.oopsconsultancy.xmltask-1.16.1.jar" />
128
                        </classpath>
129
                </taskdef>
130
131
                <xmltask source="${user-settings-file-location}" dest="${user-settings-file-location}">
132
                        <copy path="//:settings/:profiles/:profile[:id/text() = 'gvsig-install']/:properties/:gvsig.install.dir/text()" property="current-gvsig-location" />
133
                </xmltask>
134
135
                <replace file="${workspace.basedir}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs" token="@GVSIG_HOME@" value="${current-gvsig-location}" />
136
                <replace file="${workspace.basedir}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.variables.prefs" token="@GVSIG_HOME@" value="${current-gvsig-location}" />
137
138 680 nbrodin
                <!-- Compile, install and generate eclipse projects -->
139 730 cordinyana
                <ant antfile="${build.basedir}/maven-goals.xml" target="mvn-install-and-eclipse-eclipse" />
140
141 680 nbrodin
                <echo>INFORMATION!!!</echo>
142
                <echo>Restart eclipse and then proceed to import the subprojects contained into the main project</echo>
143 730 cordinyana
144 680 nbrodin
                <!-- TODO: copiar al proyecto de configuración general -->
145
        </target>
146 730 cordinyana
147 680 nbrodin
        <target name="clean">
148 730 cordinyana
                <delete dir="target" />
149 680 nbrodin
        </target>
150 730 cordinyana
151
</project>