| <?xml version="1.0"?> |
| <!-- ====================================================================== |
| ANT script to build org.eclispe.ohf.stem.geography project |
| and the initial set of STEM scenarios. |
| This must be run after installing the STEM workspace and after changes |
| to code generated by EMF models. |
| |
| ====================================================================== --> |
| <project name="STEM Internal Geographic Data" default="update_all"> |
| <description> |
| Use the properties files to populate the org.eclipse.stem.data.geography plugin |
| </description> |
| |
| <!-- P r o j e c t S p e c i f i c a t i o n s --> |
| |
| <!-- The name of the project --> |
| <property name="project.name" value="stem" /> |
| |
| |
| <!-- Are we running headless? --> |
| <condition property="runningHeadless" > |
| <isset property="buildDirectory" /> |
| </condition> |
| |
| <!-- The buildDirectory property is set in a headless build --> |
| <condition property="pluginRootDirectory" value="${buildDirectory}/plugins" else=".."> |
| <isset property="runningHeadless" /> |
| </condition> |
| |
| <!-- The baseLocation property is the location of the eclipse home installation --> |
| <!-- It is used to find eclipse plugins --> |
| <!-- It is set in a headless build, but not one started manually from Eclipse --> |
| <condition property="baseLocation" value="${eclipse.pdebuild.home}../.."> |
| <not> |
| <isset property="runningHeadless" /> |
| </not> |
| </condition> |
| |
| <!-- This is the location of the class files of the built plug-ins --> |
| <!-- If this is a manual build started from Eclipse then the directory --> |
| <!-- is "bin", if its a headless build then the directory is "@dot" --> |
| <!-- The property baseLocation is set in a headless build --> |
| <condition property="targetBin" value="@dot" else="bin"> |
| <isset property="runningHeadless" /> |
| </condition> |
| |
| |
| <!-- The prefix for fully qualified names --> |
| <property name="ID_ROOT" value="org.eclipse.stem" /> |
| |
| <!-- The name of the source plugin (i.e., the one that contains this file --> |
| <property name="source.plugin" value="${ID_ROOT}.internal.data.geography" /> |
| |
| <!-- The name of the target plugin --> |
| <property name="target.plugin" value="${ID_ROOT}.data.geography" /> |
| |
| <!-- The path to the root directory of the source plugin --> |
| <property name="path.sourceplugin" location="${pluginRootDirectory}/${source.plugin}" /> |
| |
| <!-- The path to the root directory of the plugin that will be augmented with generated content --> |
| <property name="path.targetplugin" location="${pluginRootDirectory}/${target.plugin}" /> |
| |
| <!-- The path to the root directory of the resource files --> |
| <property name="path.resource.files" value="${path.sourceplugin}/resources/data/country" /> |
| |
| <!-- The path to the root directory of the lat/long files --> |
| <property name="path.latlong.files" value="${path.sourceplugin}/resources/data/geo" /> |
| |
| <!-- The path to the root directory of the static statistics files --> |
| <property name="path.statistics.files" value="${path.sourceplugin}/resources/data/statistics" /> |
| |
| <!-- The path to the root directory of the plugin that will be augmented with generated content--> |
| <property name="path.generated.files" value="${path.sourceplugin}/temp/data" /> |
| |
| <!-- The path to the root directory of geography source code --> |
| <property name="path.geography.src" value="${path.targetplugin}/src/org/eclipse/stem/data/geography" /> |
| |
| <!-- The path to the root directory of geography source code for centers --> |
| <property name="path.geography.src.centers" value="${path.geography.src}/centers" /> |
| |
| <!-- The name of the plugin.xml file that will be augmented with generated content--> |
| <property name="file.target.pluginxml" value="${path.targetplugin}/plugin.xml" /> |
| |
| <!-- The name of the plugin.properties file that will be augmented with generated content--> |
| <property name="file.target.pluginproperties" value="${path.targetplugin}/plugin.properties" /> |
| |
| <!-- The name of the plugin.xml file that that is the aggregation of the generated content--> |
| <property name="file.util.pluginxml" value="${path.sourceplugin}/temp/data/plugin.xml" /> |
| |
| <!-- The name of the plugin.properties file that is the aggregation of the generated content--> |
| <property name="file.util.pluginproperties" value="${path.sourceplugin}/temp/data/plugin.properties" /> |
| |
| <!-- The class path to use --> |
| <path id="classpath.runtime"> |
| <pathelement location="${path.sourceplugin}/${targetBin}" /> |
| <pathelement location="${pluginRootDirectory}/../../org.eclipse.stem/core/${ID_ROOT}.core/${targetBin}" /> |
| <pathelement location="${pluginRootDirectory}/../../org.eclipse.stem/core/${ID_ROOT}.definitions/${targetBin}" /> |
| <pathelement location="${pluginRootDirectory}/../../org.eclipse.stem/core/${ID_ROOT}.geography/${targetBin}" /> |
| <pathelement location="${pluginRootDirectory}/../${ID_ROOT}.internal.data/${targetBin}" /> |
| <pathelement location="${pluginRootDirectory}/${ID_ROOT}.data.geography/${targetBin}" /> |
| <fileset dir="${baseLocation}/plugins/"> |
| <include name="*emf*.jar" /> |
| </fileset> |
| <fileset dir="${pluginRootDirectory}/../${ID_ROOT}.internal.data/lib/"> |
| <include name="*emf*.jar" /> |
| </fileset> |
| </path> |
| |
| <target name="update_all" depends=" update_iso_mappings, update_centers, update_geography, update_latlong, update_graph_partition_statistics" /> |
| |
| <!-- Update the geography plugin with the latest definitions --> |
| <target name="update_geography" depends="create_candidates, update_geography_plugin_xml, update_geography_plugin_properties, update_geography_generated_files" /> |
| |
| <target name="update_geography_generated_files" depends="update_geography_graphs" /> |
| |
| <target name="update_geography_plugin_xml" depends="create_candidates"> |
| <copy tofile="${file.target.pluginxml}" file="${file.util.pluginxml}" overwrite="true" /> |
| </target> |
| |
| <target name="update_geography_plugin_properties" depends="create_candidates"> |
| <copy tofile="${file.target.pluginproperties}" file="${file.util.pluginproperties}" overwrite="true" /> |
| </target> |
| |
| |
| <!-- Update the graph files in the geography plugin --> |
| <target name="update_geography_graphs" depends="create_candidates"> |
| <copy todir="${path.targetplugin}/resources/data/" overwrite="true"> |
| <fileset dir="${path.generated.files}"> |
| <include name="**/*.graph" /> |
| </fileset> |
| </copy> |
| </target> |
| |
| <!-- Copy generated and existing iso key mapping files to the geography plugin --> |
| <target name="update_iso_mappings" depends="create_iso_mappings"> |
| <!-- Copy generated Level 0 ISO key NLS properties file to Geography SRC directory --> |
| <copy todir="${path.geography.src}" overwrite="true" flatten="true"> |
| <fileset dir="${path.generated.files}"> |
| <include name="**/level0ISONames.properties" /> |
| </fileset> |
| </copy> |
| <!-- Copy existing ISO key NLS properties file to Geography SRC directory --> |
| <copy todir="${path.geography.src}" overwrite="true" flatten="true"> |
| <fileset dir="${path.resource.files}"> |
| <include name="**/*_names.properties" /> |
| </fileset> |
| </copy> |
| <!-- Copy generated alpha2 to alpha3 ISO key properties file to Geography ZZZ DATA directory --> |
| <copy todir="${path.targetplugin}/resources/data/" overwrite="true"> |
| <fileset dir="${path.generated.files}"> |
| <include name="**/level0ISOKeys.properties" /> |
| </fileset> |
| </copy> |
| |
| </target> |
| |
| <target name="update_graph_partition_statistics" depends="create_graph_partition_statistics"> |
| <copy todir="${path.targetplugin}/resources/data/" overwrite="true"> |
| <fileset dir="${path.generated.files}"> |
| <include name="statistics/*" /> |
| </fileset> |
| </copy> |
| |
| |
| <copy todir="${path.targetplugin}/resources/data/statistics" overwrite="true" > |
| <fileset dir="${path.statistics.files}"> |
| <include name="*.csv" /> |
| </fileset> |
| </copy> |
| </target> |
| |
| <target name="update_centers" depends="update_iso_mappings"> |
| <copy todir="${path.geography.src.centers}" overwrite="true" flatten="true"> |
| <fileset dir="${path.resource.files}"> |
| <include name="**/*_centers.properties" /> |
| </fileset> |
| </copy> |
| </target> |
| |
| <target name="update_latlong"> |
| <copy todir="${path.targetplugin}/resources/data/geo" overwrite="true" > |
| <fileset dir="${path.latlong.files}"> |
| <include name="**/*_MAP.xml" /> |
| </fileset> |
| </copy> |
| </target> |
| |
| |
| <target name="create_graph_partition_statistics" depends="clean"> |
| <java classname="${ID_ROOT}.internal.data.geography.graphsynchronizer.WorldPartitioningStats" fork="true" maxmemory="1024m"> |
| <classpath refid="classpath.runtime" /> |
| <arg value="${path.sourceplugin}" /> |
| <jvmarg value="-Xms1024m" /> |
| <jvmarg value="-Xmx1024m" /> |
| </java> |
| </target> |
| |
| <!-- Create the graph files for countries and the plugin.xml and plugin.properties fragments --> |
| <target name="create_candidates" depends="clean"> |
| <!-- There is a problem here with specifying fork="true" maxmemory="768m". It causes an IOException on some machines --> |
| <java classname="${ID_ROOT}.internal.data.geography.GeographyDataGenerator" fork="true" maxmemory="1024m"> |
| <classpath refid="classpath.runtime" /> |
| <arg value="${path.sourceplugin}" /> |
| <jvmarg value="-Xms1024m" /> |
| <jvmarg value="-Xmx1024m" /> |
| </java> |
| </target> |
| |
| <!-- Create the top level (0) files that list the level 0 alpha3 and alpha2 ISO-3166 mappings and the |
| coresponding names for each ISOKEY. These can be used in things like the GUI where we list |
| every country and its name --> |
| <target name="create_iso_mappings" depends="clean, create_generated_files_dir"> |
| <java classname="${source.plugin}.isokeycollector.ISOKeyCollector"> |
| <classpath refid="classpath.runtime" /> |
| <arg value="${path.sourceplugin}" /> |
| </java> |
| </target> |
| |
| <!-- clean out the .../temp/data directories --> |
| <!-- clean out the target directories --> |
| <target name="clean" depends="create_generated_files_dir"> |
| <delete includeEmptyDirs="true" quiet="true"> |
| <fileset dir="${path.sourceplugin}/temp/"> |
| <include name="**/*" /> |
| </fileset> |
| <fileset dir="${path.targetplugin}/resources/data/"> |
| <include name="country/**/*" /> |
| <include name="relationship/**/*" /> |
| <include name="geo/**/*" /> |
| <include name="statistics/**/*" /> |
| </fileset> |
| </delete> |
| </target> |
| |
| <target name="create_generated_files_dir"> |
| <mkdir dir="${path.generated.files}"/> |
| </target> |
| </project> |