svn commit: r13150 - trunk/src_new

[email protected]
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: tfmorris
Date: 2007-07-26 00:03:52-0700
New Revision: 13150

Modified:
   trunk/src_new/build.xml
   trunk/src_new/default.properties
   trunk/src_new/eclipse-ant-build.properties

Log:
Update build with eUML build target

Modified: trunk/src_new/build.xml
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/build.xml?view=diff&rev=13150&p1=trunk/src_new/build.xml&p2=trunk/src_new/build.xml&r1=13149&r2=13150
==============================================================================
--- trunk/src_new/build.xml	(original)
+++ trunk/src_new/build.xml	2007-07-26 00:03:52-0700
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- $Id$
-This requires ANT 1.6.2
+This requires Apache Ant 1.6.2 and has been tested through Ant 1.7.
 
 Introduction
 ============
@@ -23,20 +23,24 @@
         build -version
 to find out what the current version is.
 
+If your directories are organized as set up by the Eclipse project set
+file, use the file build2.sh/build2.bat to build from the command line.
+This uses an alternate properties file, eclipse-ant-build.properties,
+which accommodates the different directory layout.
+
 Property Settings
 =================
-You may place a simple text file named "argouml.build.properties" in
-your home directory using which you can change certain properties. For
-example, by adding a line to argouml.build.properties you can change
-the compiler to be used
+The default property settings are in "default.properties".  To override
+them, create a file called "build.properties" here or 
+"argouml.build.properties" in your home directory.  Order of precedence
+is the reverse of the order they are mentioned in above.
 
-build.compiler=jikes
-(without a blank after "jikes"!).
+For example, to override the model subystem implementation used for
+tests, put the following line your file:
 
-This will force Ant to compile with jikes if you have it on your
-system.
+test.model.implementation=org.argouml.model.euml.EUMLModelImplementation
 
-Refer to the ant documentation for other settings.
+Refer to the Ant documentation and this file for other settings.
 
 Compilation instructions for ArgoUML
 ====================================
@@ -158,11 +162,7 @@
       <pathelement location="${argo.build.dir}/argouml-model.jar"/>
     </path>
 
-    <!-- This runtime classpath is used for tests and other things started
-         from this file.
-      -->
-    <path id="argo.runtime.classpath">
-      <path refid="argo.compile.classpath"/>
+    <path id="argo.mdr.runtime.classpath">
       <pathelement location="${argo.mdr.dir}/build/java-interfaces.jar"/>
       <pathelement location="${argo.mdr.dir}/build/argouml-mdr.jar"/>
       <pathelement location="${argo.mdr.dir}/lib/mof.jar"/>
@@ -173,6 +173,31 @@
       <pathelement location="${argo.mdr.dir}/lib/openide-util.jar"/>
     </path>
 
+    <path id="argo.euml.runtime.classpath">
+      <pathelement location="${argo.euml.dir}/build/argouml-euml.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.emf.common_2.3.0.v200703080200.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.emf.ecore.change_2.3.0.v200706262000.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.emf.ecore.xmi_2.3.0.v200703080200.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.emf.ecore_2.3.0.v200703080200.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.emf.edit_2.3.0.v200706262000.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.emf.mapping.ecore2xml_2.3.0.v200706262000.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.uml2.common_1.3.0.v200703011358.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.uml2.common.edit_1.3.0.v200706251652.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.uml2.uml.resources_2.1.0.v200706251652.jar"/>
+      <pathelement location="${argo.euml.dir}/lib/org.eclipse.uml2.uml_2.1.0.v200703011358.jar"/>
+    </path>
+
+    <!-- This runtime classpath is used for tests and other things started
+         from this file.
+      -->
+    <path id="argo.runtime.classpath">
+      <path refid="argo.compile.classpath"/>
+      <!-- only one of the following will be used at a time -->
+      <!-- we put them together because there's little risk of crosstalk -->
+      <path refid="argo.mdr.runtime.classpath"/>
+      <path refid="argo.euml.runtime.classpath"/>
+    </path>
+
     <!-- In order to use ant optional tasks which use jars that are not -->
     <!-- copied into ANT_HOME/lib, we must declare the tasks ourselves. -->
 
@@ -225,6 +250,7 @@
       <propertyref name="argo.tools.dir" />
       <propertyref name="argo.model.dir" />
       <propertyref name="argo.mdr.dir" />
+      <propertyref name="argo.euml.dir" />
     </propertyset>
 
   </target>
@@ -639,6 +665,11 @@
         <propertyset refid="absolute-properties"/>
       </propertyset> 
     </ant>
+    <ant dir="${argo.euml.dir}" inheritAll="false" target="clean">
+      <propertyset dynamic="false"> 
+        <propertyset refid="absolute-properties"/>
+      </propertyset> 
+    </ant>
     <delete dir="${argo.build.dir}/tests"/>
     <delete dir="${argo.build.dir}/src_new"/>
     <delete dir="${argo.build.dir}/classes"/>
@@ -840,27 +871,36 @@
   </target>
 
   <!-- =================================================================== -->
+  <!-- Build Eclipse UML2 library - internal target which calls argouml-euml build.  -->
+  <!-- =================================================================== -->
+  <target name="build-euml" depends="init,build-model" 
+        description="Build eUML model subsystem - not built by default">
+    <!-- We build unconditionally because only the eUML build itself knows if
+         everything is up to date -->
+    <echo message="=== Calling eUML build ==="/>
+    <copy file="${log4j.jar.path}" tofile="${argo.build.dir}/log4j.jar"/>
+    <ant dir="${argo.euml.dir}" target="install" inheritAll="false" >
+      <propertyset dynamic="false"> 
+        <propertyset refid="absolute-properties"/>
+      </propertyset> 
+    </ant>
+  </target>
+
+  <!-- =================================================================== -->
   <!-- Run the junit tests.                                                -->
   <!-- =================================================================== -->
   <target name="tests-dont-fail"
           depends="compile,junit-setup,junit-report-clean,
                    ant.optional.init">
-    <!-- ant 1.4 uses printsummary="true"                          -->
-    <!-- ant 1.5 allows printsummary="withOutAndErr"               -->
-    <!-- This should never be committed as "withOutAndErr", but    -->
-    <!-- this comment is in case it gets committed by accident.    -->
-
-    <!-- TODO:  This should be contained in default.properties     -->
-    <!--        and overridable in build.properties so that        -->
-    <!--        individual users can set as wanted.                -->
-    <!--        That is part of issue 579.                         -->
 
     <junit errorproperty="junit.failure" failureproperty="junit.failure" 
            fork="yes" dir="${basedir}" forkmode="perTest"
            haltonfailure="false"
-           maxmemory="48M" printsummary="true">
+           maxmemory="48M" printsummary="${junit.printsummary}">
         <sysproperty key="test.model.uml" 
             value="${argo.mdr.dir}/src/org/argouml/model/mdr/mof/01-02-15.xml"/>
+        <sysproperty key="argouml.model.implementation" 
+            value="${test.model.implementation}"/>
 	<sysproperty key="log4j.configuration" value="org/argouml/resource/default.lcf"/>
 	<sysproperty key="java.awt.headless" value="true"/>
 	<sysproperty key="argouml.tests.dir" value="${argo.tests.src}"/>
@@ -899,20 +939,11 @@
           depends="compile,junit-setup,junit-report-clean,
                    ant.optional.init"
           description="Run all tests that require the GUI components.">
-    <!-- ant 1.4 uses printsummary="true"                          -->
-    <!-- ant 1.5 allows printsummary="withOutAndErr"               -->
-    <!-- This should never be committed as "withOutAndErr", but    -->
-    <!-- this comment is in case it gets committed by accident.    -->
-
-    <!-- TODO:  This should be contained in default.properties     -->
-    <!--        and overridable in build.properties so that        -->
-    <!--        individual users can set as wanted.                -->
-    <!--        That is part of issue 579.                         -->
 
     <junit errorproperty="junit.failure" failureproperty="junit.failure" 
            fork="yes" dir="${basedir}" forkmode="perTest"
            haltonfailure="false"
-           maxmemory="128M" printsummary="true">
+           maxmemory="128M" printsummary="${junit.printsummary}">
 	<sysproperty key="log4j.configuration" value="org/argouml/resource/default.lcf"/>
 	<sysproperty key="argouml.tests.dir" value="${argo.tests.src}"/>
         <assertions>
@@ -1087,7 +1118,7 @@
   </target>
 
   <!-- =================================================================== -->
-  <!-- Runs Classycle to find cyclic dependencies in ArgoUML.             -->
+  <!-- Runs Classycle to find cyclic dependencies in ArgoUML.              -->
   <!-- =================================================================== -->
     <target name="classycle" depends="compile" 
         description="Analyze sources for cyclic dependencies using Classcycle">
@@ -1113,4 +1144,5 @@
         </fileset>
       </copy>
     </target>
+
 </project><!-- End of file -->

Modified: trunk/src_new/default.properties
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/default.properties?view=diff&rev=13150&p1=trunk/src_new/default.properties&p2=trunk/src_new/default.properties&r1=13149&r2=13150
==============================================================================
--- trunk/src_new/default.properties	(original)
+++ trunk/src_new/default.properties	2007-07-26 00:03:52-0700
@@ -23,6 +23,14 @@
 #
 argo.manifest.name=argouml.mf
 #
+# JUnit test properties
+#
+junit.printsummary=true
+# Use below for additional information
+#junit.printsummary=withOutAndErr
+#
+test.model.implementation=org.argouml.model.mdr.MDRModelImplementation
+#
 # Directory locations
 # 
 # Do NOT set argo.root.dir here - it will be set by build.xml if not
@@ -32,6 +40,7 @@
 argo.tools.dir=${argo.root.dir}/tools
 argo.model.dir=${argo.root.dir}/src/model
 argo.mdr.dir=${argo.root.dir}/src/model-mdr
+argo.euml.dir=${argo.root.dir}/src/model-euml
 argo.tests.src=${argo.root.dir}/tests
 argo.lib.dir=${argo.root.dir}/lib
 argo.src.dir=${argo.root.dir}/src_new
@@ -109,5 +118,6 @@
 javasrc.jar.path=${argo.tools.lib.dir}/javasrc-2001-beta.jar
 jdepend.jar.path=${argo.tools.dir}/jdepend-2.9/lib/jdepend-2.9.jar
 junit.jar.path=${argo.tools.dir}/junit-3.8.1/junit.jar
+#junit.jar.path=${argo.tools.dir}/junit-4.2/junit.jar
 easymock.jar.path=${argo.tools.dir}/lib/easymock12.jar
 

Modified: trunk/src_new/eclipse-ant-build.properties
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/eclipse-ant-build.properties?view=diff&rev=13150&p1=trunk/src_new/eclipse-ant-build.properties&p2=trunk/src_new/eclipse-ant-build.properties&r1=13149&r2=13150
==============================================================================
--- trunk/src_new/eclipse-ant-build.properties	(original)
+++ trunk/src_new/eclipse-ant-build.properties	2007-07-26 00:03:52-0700
@@ -4,7 +4,7 @@
 # argo.root.dir will be defined to the appropriate *absolute* path
 # before we are loaded.  Don't define it here.
 #
-# These directories are in different locations for Eclipse vs CVS
+# These directories are in different locations for Eclipse vs SVN
 #
 argo.src.dir=${argo.root.dir}/argouml
 argo.lib.dir=${argo.root.dir}/argouml-core-lib
@@ -12,4 +12,5 @@
 argo.tests.src=${argo.root.dir}/argouml-core-tests
 argo.model.dir=${argo.root.dir}/argouml-core-model
 argo.mdr.dir=${argo.root.dir}/argouml-core-model-mdr
+argo.euml.dir=${argo.root.dir}/argouml-core-model-euml
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.