Statistics
| Revision:

root / branches / v2_0_0_prep / extensions / org.gvsig.annotation.app / prepare-workspace.xml @ 38564

History | View | Annotate | Download (6.46 KB)

1 33274 jpiera
<project name="org.gvsig.initial.build" default="prepare-workspace">
2 37554 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 33274 jpiera
        <target name="check-maven-base-build-available">
13 37554 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 33274 jpiera
        </target>
15 37554 cordinyana
16
        <target name="get-maven-base-build-local" depends="check-maven-base-build-available" if="maven-base-build-available">
17 33274 jpiera
                <!-- Unzip de build jar file from the maven repository into the workspace root folder -->
18 37554 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 33274 jpiera
        </target>
26 37554 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 33274 jpiera
                <!-- Download the build jar file -->
31 37554 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
33 33274 jpiera
                <!-- Unzip de build jar file into the workspace root folder -->
34 37554 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 33274 jpiera
        </target>
43
44 37554 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 33274 jpiera
50 37554 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 33274 jpiera
                <!-- Copy the maven launchers to the workspace metadata folder -->
103
                <copy todir="${workspace.basedir}/.metadata">
104 37554 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 33274 jpiera
                </copy>
109 37554 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 33274 jpiera
                <!-- Configure the eclipse workspace -->
118 37554 cordinyana
                <ant antfile="${build.basedir}/maven-goals.xml" target="mvn-configure-eclipse-workspace" />
119 33274 jpiera
120
                <!-- Configure the gvSIG profile -->
121 37554 cordinyana
                <ant antfile="${build.basedir}/check-gvsig-profile.xml" />
122 33274 jpiera
123 37554 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 33274 jpiera
                <!-- Compile, install and generate eclipse projects -->
139 37554 cordinyana
                <ant antfile="${build.basedir}/maven-goals.xml" target="mvn-install-and-eclipse-eclipse" />
140
141 33274 jpiera
                <echo>INFORMATION!!!</echo>
142
                <echo>Restart eclipse and then proceed to import the subprojects contained into the main project</echo>
143 37554 cordinyana
144 33274 jpiera
                <!-- TODO: copiar al proyecto de configuraciĆ³n general -->
145
        </target>
146 37554 cordinyana
147 33274 jpiera
        <target name="clean">
148 37554 cordinyana
                <delete dir="target" />
149 33274 jpiera
        </target>
150 37554 cordinyana
151
</project>