Statistics
| Revision:

gvsig-geoprocess / org.gvsig.sextante / tags / gvSIG_v2_0_0_Build_2038 / prepare-workspace.xml @ 154

History | View | Annotate | Download (6.51 KB)

1 20 nbrodin
<project name="org.gvsig.initial.build" default="prepare-workspace">
2 98 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 153 cordinyana
        <property name="build.jar.version" value="1.0.8-SNAPSHOT" />
8 98 cordinyana
        <property name="build.jar.file" value="org.gvsig.maven.base.build-${build.jar.version}.jar" />
9
10 116 cordinyana
        <property name="ant.libs.dir" location="${build.basedir}" description="Additional ant tasks libs folder" />
11
12 98 cordinyana
        <target name="check-maven-base-build-available">
13
                <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
        </target>
15
16
        <target name="get-maven-base-build-local" depends="check-maven-base-build-available" if="maven-base-build-available">
17
                <!-- Unzip de build jar file from the maven repository into the workspace root folder -->
18
                <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
        </target>
26
27
        <target name="get-maven-base-build-remote" depends="check-maven-base-build-available" unless="maven-base-build-available">
28 116 cordinyana
                <mkdir dir="target" />
29
30 98 cordinyana
                <!-- Download the build jar file -->
31
                <get src="http://gvsig-desktop.forge.osor.eu/downloads/pub/projects/gvSIG-desktop/maven-repository/org/gvsig/org.gvsig.maven.base.build/${build.jar.version}/${build.jar.file}" dest="target/${build.jar.file}" verbose="true" />
32
33 20 nbrodin
                <!-- Unzip de build jar file into the workspace root folder -->
34 98 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
        </target>
43 153 cordinyana
44
        <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
50
        <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 98 cordinyana
67 153 cordinyana
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 98 cordinyana
74 153 cordinyana
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 98 cordinyana
                <mkdir dir="target" />
99
100
                <chmod dir="${build.basedir}/maven/bin" perm="u+x" includes="m2,mvn,mvnDebug" />
101
102 20 nbrodin
                <!-- Copy the maven launchers to the workspace metadata folder -->
103
                <copy todir="${workspace.basedir}/.metadata">
104 98 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 20 nbrodin
                </copy>
109 98 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 20 nbrodin
                <!-- Configure the eclipse workspace -->
118 98 cordinyana
                <ant antfile="${build.basedir}/maven-goals.xml" target="mvn-configure-eclipse-workspace" />
119 20 nbrodin
120 98 cordinyana
                <!-- Configure the gvSIG profile -->
121 153 cordinyana
                <ant antfile="${build.basedir}/check-gvsig-profile.xml" />
122 116 cordinyana
123 98 cordinyana
                <property name="user-settings-file-location" value="${user.home}/.m2/settings.xml" />
124 116 cordinyana
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 98 cordinyana
                <xmltask source="${user-settings-file-location}" dest="${user-settings-file-location}">
132 116 cordinyana
                        <copy path="//:settings/:profiles/:profile[:id/text() = 'gvsig-install']/:properties/:gvsig.install.dir/text()" property="current-gvsig-location" />
133 98 cordinyana
                </xmltask>
134
135 116 cordinyana
                <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 20 nbrodin
                <!-- Compile, install and generate eclipse projects -->
139 98 cordinyana
                <ant antfile="${build.basedir}/maven-goals.xml" target="mvn-install-and-eclipse-eclipse" />
140
141 20 nbrodin
                <echo>INFORMATION!!!</echo>
142
                <echo>Restart eclipse and then proceed to import the subprojects contained into the main project</echo>
143 98 cordinyana
144 20 nbrodin
                <!-- TODO: copiar al proyecto de configuración general -->
145
        </target>
146 98 cordinyana
147 20 nbrodin
        <target name="clean">
148 98 cordinyana
                <delete dir="target" />
149 20 nbrodin
        </target>
150 153 cordinyana
151 116 cordinyana
</project>