Mail Archive Home | fractal-commits List | Febuary 2006 Index
| <-- Date Index --> | <-- Thread Index --> |
Date: Monday, February 20, 2006 @ 04:49:48
Author: seintur
Path: /cvsroot/fractal/aokell
Added: features/fcinterface/ct/fcinterface.xml
features/fcinterface/rt/fcinterface.xml
features/glue/aspectj/glue.xml features/glue/spoon/glue.xml
features/membrane/comp/membrane.xml
features/membrane/oo/membrane.xml
Modified: build.xml test/build.xml
Removed: features/glue/aspectj/aspectj.xml features/glue/spoon/spoon.xml
Modularizing the build process for features.
-----------------------------------------+
build.xml | 169 +++++++-----------------------
features/fcinterface/ct/fcinterface.xml | 54 +++++++++
features/fcinterface/rt/fcinterface.xml | 30 +++++
features/glue/aspectj/aspectj.xml | 39 ------
features/glue/aspectj/glue.xml | 39 ++++++
features/glue/spoon/glue.xml | 33 +++++
features/glue/spoon/spoon.xml | 33 -----
features/membrane/comp/membrane.xml | 58 ++++++++++
features/membrane/oo/membrane.xml | 30 +++++
test/build.xml | 14 --
10 files changed, 289 insertions(+), 210 deletions(-)
Index: aokell/build.xml
diff -u aokell/build.xml:1.1 aokell/build.xml:1.2
--- aokell/build.xml:1.1 Sat Feb 11 06:43:55 2006
+++ aokell/build.xml Mon Feb 20 04:49:48 2006
@@ -35,6 +35,7 @@
<property name="features" value="${basedir}/features" />
<property name="features.fcinterface" value="${features}/fcinterface" />
<property name="features.glue" value="${features}/glue" />
+ <property name="features.j2me" value="${features}/j2me" />
<property name="features.loggable" value="${features}/loggable" />
<property name="features.membrane" value="${features}/membrane" />
@@ -54,56 +55,57 @@
<!-- Source path -->
<!-- =========== -->
<!-- fcinterface feature -->
- <condition property="src.feature.fctinterface"
- value="${features.fcinterface}/rt/src">
+ <condition property="feature.fcinterface"
value="${features.fcinterface}/rt">
<not> <isset property="feature.fcinterface.ct" /> </not>
</condition>
- <condition property="src.feature.fctinterface"
- value="${features.fcinterface}/ct/src">
+ <condition property="feature.fcinterface"
value="${features.fcinterface}/ct">
<isset property="feature.fcinterface.ct" />
</condition>
<!-- glue feature -->
- <condition property="src.feature.glue"
- value="${features.glue}/spoon/src">
+ <condition property="feature.glue" value="${features.glue}/spoon">
<not> <isset property="feature.glue.aspectj" /> </not>
</condition>
- <condition property="src.feature.glue"
- value="${features.glue}/aspectj/src">
+ <condition property="feature.glue" value="${features.glue}/aspectj">
<isset property="feature.glue.aspectj" />
</condition>
+ <!-- j2me feature -->
+ <condition property="feature.j2me" value="${features.j2me}/off">
+ <not> <isset property="feature.j2me.on" /> </not>
+ </condition>
+
+ <condition property="feature.j2me" value="${features.j2me}/on">
+ <isset property="feature.j2me.on" />
+ </condition>
+
<!-- loggable feature -->
- <condition property="src.feature.loggable"
- value="${features.loggable}/off/src">
+ <condition property="feature.loggable" value="${features.loggable}/off">
<not> <isset property="feature.loggable.on" /> </not>
</condition>
- <condition property="src.feature.loggable"
- value="${features.loggable}/on/src">
+ <condition property="feature.loggable" value="${features.loggable}/on">
<isset property="feature.loggable.on" />
</condition>
<!-- membrane feature -->
- <condition property="src.feature.membrane"
- value="${features.membrane}/oo/src">
+ <condition property="feature.membrane" value="${features.membrane}/oo">
<not> <isset property="feature.membrane.comp" /> </not>
</condition>
- <condition property="src.feature.membrane"
- value="${features.membrane}/comp/src">
+ <condition property="feature.membrane" value="${features.membrane}/comp">
<isset property="feature.membrane.comp" />
</condition>
<!-- Global defintion for srcpath -->
<path id="srcpath">
<pathelement path="${src}" />
- <pathelement path="${src.feature.fctinterface}" />
- <pathelement path="${src.feature.glue}" />
- <pathelement path="${src.feature.loggable}" />
- <pathelement path="${src.feature.membrane}" />
+ <pathelement path="${feature.fcinterface}/src" />
+ <pathelement path="${feature.glue}/src" />
+ <pathelement path="${feature.loggable}/src" />
+ <pathelement path="${feature.membrane}/src" />
</path>
<!-- ========= -->
@@ -115,25 +117,30 @@
<not> <isset property="feature.fcinterface.ct" /> </not>
</condition>
- <condition property="cp.feature.fcinterface"
- value="">
+ <condition property="cp.feature.fcinterface" value="">
<isset property="feature.fcinterface.ct" />
</condition>
<!-- glue feature -->
- <condition property="cp.feature.glue"
- value="features/glue/spoon/lib/*.jar">
+ <condition property="cp.feature.glue"
value="features/glue/spoon/lib/*.jar">
<not> <isset property="feature.glue.aspectj" /> </not>
</condition>
- <condition property="cp.feature.glue"
- value="features/glue/aspectj/lib/*.jar">
+ <condition property="cp.feature.glue"
value="features/glue/aspectj/lib/*.jar">
<isset property="feature.glue.aspectj" />
</condition>
+ <!-- j2me feature -->
+ <condition property="cp.feature.j2me" value="">
+ <not> <isset property="feature.j2me.on" /> </not>
+ </condition>
+
+ <condition property="cp.feature.j2me" value="features/j2me/on/lib/*.jar">
+ <isset property="feature.j2me.on" />
+ </condition>
+
<!-- loggable feature -->
- <condition property="cp.feature.loggable"
- value="">
+ <condition property="cp.feature.loggable" value="">
<not> <isset property="feature.loggable.on" /> </not>
</condition>
@@ -147,11 +154,12 @@
<include name="externals/*.jar" />
<include name="${cp.feature.fcinterface}" />
<include name="${cp.feature.glue}" />
+ <include name="${cp.feature.j2me}" />
<include name="${cp.feature.loggable}" />
</fileset>
<path id="classpath">
- <pathelement location="${out.build}"/>
+ <pathelement location="${out.build}" />
<fileset refid="jars" />
</path>
@@ -193,84 +201,13 @@
<!-- ========== COMPILE ========== -->
<!-- =================================== -->
- <condition property="antfile.feature.glue"
- value="${features.glue}/spoon/spoon.xml">
- <not> <isset property="feature.glue.aspectj" /> </not>
- </condition>
-
- <condition property="antfile.feature.glue"
- value="${features.glue}/aspectj/aspectj.xml">
- <isset property="feature.glue.aspectj" />
- </condition>
-
<target name="compile" depends="init" description="Compile AOKell">
<mkdir dir="${out.build}"/>
- <ant antfile="${antfile.feature.glue}" inheritrefs="true"
inheritall="true" />
- <antcall target="compile.membrane" />
- <antcall target="compile.fcinterface" />
+ <ant antfile="${feature.glue}/glue.xml" inheritrefs="true"
inheritall="true" />
+ <ant antfile="${feature.membrane}/membrane.xml" inheritrefs="true"
inheritall="true" />
+ <ant antfile="${feature.fcinterface}/fcinterface.xml"
inheritrefs="true" inheritall="true" />
</target>
- <!-- Post-compile target for compile-time generated Fractal interfaces
-->
- <target name="compile.fcinterface" if="feature.fcinterface.ct">
- <mkdir dir="${out.generated}" />
-
- <!-- Check whether the interfaces must be re-generated -->
- <uptodate property="compile.fcinterface.notrequired"
-
targetfile="${out.generated}/fcinterface/ct/aokell/generated/org/objectweb/fractal/aokell/lib/control/component/ComponentItfImplementedInterface.java"
>
- <srcfiles dir="${src}" includes="**/*.java" />
- </uptodate>
-
- <antcall target="compile.fcinterface.required" />
- </target>
-
- <target name="compile.fcinterface.required"
unless="compile.fcinterface.notrequired">
- <java
classname="org.objectweb.fractal.aokell.tools.interf.InterfaceGenerator"
- classpathref="classpath" fork="yes">
- <arg value="-system" />
- <arg value="-d" />
- <arg value="${out.generated}/fcinterface/ct" />
- </java>
-
- <!-- Compile the generated Java code -->
- <javac destdir="${out.build}">
- <src path="${out.generated}/fcinterface/ct" />
- <classpath refid="classpath" />
- </javac>
- </target>
-
- <!-- Post-compile target for componentized membranes -->
- <target name="compile.membrane" if="feature.membrane.comp">
-
- <!-- Check whether the membranes must be recompiled -->
- <uptodate property="compile.membrane.notrequired"
-
targetfile="${out.generated}/membrane/comp/org/objectweb/fractal/aokell/lib/membrane/Base.java">
- <srcfiles dir="${src.feature.membrane}" includes="**/*.fractal"
/>
- </uptodate>
-
- <antcall target="compile.membrane.required" />
- </target>
-
- <target name="compile.membrane.required"
unless="compile.membrane.notrequired">
-
- <!-- Copy the .fractal membrane definitions to ${out.build} -->
- <copy todir="${out.build}">
- <fileset dir="${src.feature.membrane}" includes="**/*.fractal" />
- </copy>
-
- <!-- Generate the Java code associated to membrane definitions -->
- <java
classname="org.objectweb.fractal.aokell.tools.membrane.MembraneCompiler"
- classpathref="classpath" fork="yes">
- <arg value="-d" />
- <arg value="${out.generated}/membrane/comp" />
- </java>
-
- <!-- Compile the generated Java code -->
- <javac destdir="${out.build}">
- <src path="${out.generated}/membrane/comp" />
- <classpath refid="classpath" />
- </javac>
- </target>
-
<!-- =================================== -->
<!-- ========== TEST ========== -->
@@ -342,24 +279,6 @@
<property name="examples" value="${basedir}/examples" />
<property name="examples.common" value="${examples}/common" />
- <!-- fcinterface feature -->
- <condition property="examples.feature.fcinterface"
value="${features.fcinterface}/rt/examples">
- <not> <isset property="feature.fcinterface.ct" /> </not>
- </condition>
-
- <condition property="examples.feature.fcinterface"
value="${features.fcinterface}/ct/examples">
- <isset property="feature.fcinterface.ct" />
- </condition>
-
- <!-- glue feature -->
- <condition property="examples.feature.glue"
value="${features.glue}/spoon/examples">
- <not> <isset property="feature.glue.aspectj" /> </not>
- </condition>
-
- <condition property="examples.feature.glue"
value="${features.glue}/aspectj/examples">
- <isset property="feature.glue.aspectj" />
- </condition>
-
<target name="examples" depends="compile,jar" description="Generate the
examples">
<mkdir dir="${out.dist.examples}"/>
@@ -374,7 +293,7 @@
<!-- Copy glue-dependant source files for the examples -->
<copy todir="${out.dist.examples}" preservelastmodified="yes"
includeEmptyDirs="yes">
- <fileset dir="${examples.feature.glue}">
+ <fileset dir="${feature.glue}/examples">
<exclude name="common"/>
<exclude name="common/**/*"/>
</fileset>
@@ -389,7 +308,7 @@
</multipleCopy>
<!-- Copy the glue-dependant Ant file for the examples -->
- <multipleCopy file="${examples.feature.glue}/common/glue.xml"
+ <multipleCopy file="${feature.glue}/examples/common/glue.xml"
toDir="${out.dist.examples}" notReplace="yes"
preservelastmodified="yes">
<include name="*"/>
<exclude name="etc"/>
@@ -397,7 +316,7 @@
</multipleCopy>
<!-- Copy the fcinterface-dependant Ant file for the examples -->
- <multipleCopy
file="${examples.feature.fcinterface}/common/fcinterface.xml"
+ <multipleCopy
file="${feature.fcinterface}/examples/common/fcinterface.xml"
toDir="${out.dist.examples}" notReplace="yes"
preservelastmodified="yes">
<include name="*"/>
<exclude name="etc"/>
@@ -465,7 +384,7 @@
<echo message=""/>
<echo message="The main Ant targets are the following:"/>
<echo message=" compile: compiles AOKell"/>
- <echo message=" examples: compiles the examples"/>
+ <echo message=" examples: generates the examples"/>
<echo message=" jdoc: generates the Javadoc"/>
<echo message=" zip: creates ready-to-use AOKell zip files"/>
<echo message=" clean: removes all generated files"/>
Index: aokell/features/fcinterface/ct/fcinterface.xml
diff -u /dev/null aokell/features/fcinterface/ct/fcinterface.xml:1.1
--- /dev/null Mon Feb 20 04:49:48 2006
+++ aokell/features/fcinterface/ct/fcinterface.xml Mon Feb 20 04:49:48
2006
@@ -0,0 +1,54 @@
+<!--
+ ! This library is free software; you can redistribute it and/or
+ ! modify it under the terms of the GNU Lesser General Public
+ ! License as published by the Free Software Foundation; either
+ ! version 2 of the License, or (at your option) any later version.
+ !
+ ! This library is distributed in the hope that it will be useful,
+ ! but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ ! Lesser General Public License for more details.
+ !
+ ! You should have received a copy of the GNU Lesser General Public
+ ! License along with this library; if not, write to the Free Software
+ ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ !
+ ! Contact: Lionel.Seinturier@xxxxxxx
+-->
+
+<!-- =================================================================== -->
+<!-- This project is called from ${basedir}/build.xml to compile -->
+<!-- elements related to the fcinterface feature. -->
+<!-- =================================================================== -->
+
+<project name="fcinterface.ct" default="compile.fcinterface.ct">
+
+ <target name="compile.fcinterface.ct">
+
+ <mkdir dir="${out.generated}" />
+
+ <!-- Check whether the interfaces must be re-generated -->
+ <uptodate property="compile.fcinterface.notrequired"
+
targetfile="${out.generated}/fcinterface/ct/aokell/generated/org/objectweb/fractal/aokell/lib/control/component/ComponentItfImplementedInterface.java"
>
+ <srcfiles dir="${src}" includes="**/*.java" />
+ </uptodate>
+
+ <antcall target="compile.fcinterface.required" />
+ </target>
+
+ <target name="compile.fcinterface.required"
unless="compile.fcinterface.notrequired">
+ <java
classname="org.objectweb.fractal.aokell.tools.interf.InterfaceGenerator"
+ classpathref="classpath" fork="yes">
+ <arg value="-system" />
+ <arg value="-d" />
+ <arg value="${out.generated}/fcinterface/ct" />
+ </java>
+
+ <!-- Compile the generated Java code -->
+ <javac destdir="${out.build}">
+ <src path="${out.generated}/fcinterface/ct" />
+ <classpath refid="classpath" />
+ </javac>
+ </target>
+
+</project>
Index: aokell/features/fcinterface/rt/fcinterface.xml
diff -u /dev/null aokell/features/fcinterface/rt/fcinterface.xml:1.1
--- /dev/null Mon Feb 20 04:49:48 2006
+++ aokell/features/fcinterface/rt/fcinterface.xml Mon Feb 20 04:49:47
2006
@@ -0,0 +1,30 @@
+<!--
+ ! This library is free software; you can redistribute it and/or
+ ! modify it under the terms of the GNU Lesser General Public
+ ! License as published by the Free Software Foundation; either
+ ! version 2 of the License, or (at your option) any later version.
+ !
+ ! This library is distributed in the hope that it will be useful,
+ ! but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ ! Lesser General Public License for more details.
+ !
+ ! You should have received a copy of the GNU Lesser General Public
+ ! License along with this library; if not, write to the Free Software
+ ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ !
+ ! Contact: Lionel.Seinturier@xxxxxxx
+-->
+
+<!-- =================================================================== -->
+<!-- This project is called from ${basedir}/build.xml to compile -->
+<!-- elements related to the fcinterface feature. -->
+<!-- =================================================================== -->
+
+<project name="fcinterface.rt" default="compile.fcinterface.rt">
+
+ <target name="compile.fcinterface.rt">
+ <!-- Indeed empty for run-time generated Fractal interfaces. -->
+ </target>
+
+</project>
Index: aokell/features/glue/aspectj/aspectj.xml
diff -u aokell/features/glue/aspectj/aspectj.xml:1.1
aokell/features/glue/aspectj/aspectj.xml:removed
--- aokell/features/glue/aspectj/aspectj.xml:1.1 Sat Feb 11 06:43:53
2006
+++ aokell/features/glue/aspectj/aspectj.xml Mon Feb 20 04:49:48 2006
@@ -1,39 +0,0 @@
-<!--
- ! This library is free software; you can redistribute it and/or
- ! modify it under the terms of the GNU Lesser General Public
- ! License as published by the Free Software Foundation; either
- ! version 2 of the License, or (at your option) any later version.
- !
- ! This library is distributed in the hope that it will be useful,
- ! but WITHOUT ANY WARRANTY; without even the implied warranty of
- ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- ! Lesser General Public License for more details.
- !
- ! You should have received a copy of the GNU Lesser General Public
- ! License along with this library; if not, write to the Free Software
- ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- !
- ! Contact: Lionel.Seinturier@xxxxxxx
--->
-
-<!-- =================================================================== -->
-<!-- This project is called from ${basedir}/build.xml to glue components -->
-<!-- with the control level -->
-<!-- =================================================================== -->
-
-<project name="glue-aspectj" default="compile.aokell.aspectj">
-
- <taskdef
resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties">
- <classpath>
- <pathelement
path="${features.glue}/aspectj/lib/aspectjtools.jar" />
- </classpath>
- </taskdef>
-
- <target name="compile.aokell.aspectj">
- <iajc destdir="${out.build}" xreweavable="true">
- <sourceroots refid="srcpath" />
- <classpath refid="classpath" />
- </iajc>
- </target>
-
-</project>
Index: aokell/features/glue/aspectj/glue.xml
diff -u /dev/null aokell/features/glue/aspectj/glue.xml:1.1
--- /dev/null Mon Feb 20 04:49:48 2006
+++ aokell/features/glue/aspectj/glue.xml Mon Feb 20 04:49:47 2006
@@ -0,0 +1,39 @@
+<!--
+ ! This library is free software; you can redistribute it and/or
+ ! modify it under the terms of the GNU Lesser General Public
+ ! License as published by the Free Software Foundation; either
+ ! version 2 of the License, or (at your option) any later version.
+ !
+ ! This library is distributed in the hope that it will be useful,
+ ! but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ ! Lesser General Public License for more details.
+ !
+ ! You should have received a copy of the GNU Lesser General Public
+ ! License along with this library; if not, write to the Free Software
+ ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ !
+ ! Contact: Lionel.Seinturier@xxxxxxx
+-->
+
+<!-- =================================================================== -->
+<!-- This project is called from ${basedir}/build.xml to glue components -->
+<!-- with the control level -->
+<!-- =================================================================== -->
+
+<project name="glue.aspectj" default="compile.aokell.aspectj">
+
+ <taskdef
resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties">
+ <classpath>
+ <pathelement
path="${features.glue}/aspectj/lib/aspectjtools.jar" />
+ </classpath>
+ </taskdef>
+
+ <target name="compile.aokell.aspectj">
+ <iajc destdir="${out.build}" xreweavable="true">
+ <sourceroots refid="srcpath" />
+ <classpath refid="classpath" />
+ </iajc>
+ </target>
+
+</project>
Index: aokell/features/glue/spoon/glue.xml
diff -u /dev/null aokell/features/glue/spoon/glue.xml:1.1
--- /dev/null Mon Feb 20 04:49:48 2006
+++ aokell/features/glue/spoon/glue.xml Mon Feb 20 04:49:47 2006
@@ -0,0 +1,33 @@
+<!--
+ ! This library is free software; you can redistribute it and/or
+ ! modify it under the terms of the GNU Lesser General Public
+ ! License as published by the Free Software Foundation; either
+ ! version 2 of the License, or (at your option) any later version.
+ !
+ ! This library is distributed in the hope that it will be useful,
+ ! but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ ! Lesser General Public License for more details.
+ !
+ ! You should have received a copy of the GNU Lesser General Public
+ ! License along with this library; if not, write to the Free Software
+ ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ !
+ ! Contact: Lionel.Seinturier@xxxxxxx
+-->
+
+<!-- =================================================================== -->
+<!-- This project is called from ${basedir}/build.xml to glue components -->
+<!-- with the control level -->
+<!-- =================================================================== -->
+
+<project name="glue.spoon" default="compile.aokell.spoon">
+
+ <target name="compile.aokell.spoon">
+ <javac destdir="${out.build}">
+ <src refid="srcpath" />
+ <classpath refid="classpath" />
+ </javac>
+ </target>
+
+</project>
Index: aokell/features/glue/spoon/spoon.xml
diff -u aokell/features/glue/spoon/spoon.xml:1.1
aokell/features/glue/spoon/spoon.xml:removed
--- aokell/features/glue/spoon/spoon.xml:1.1 Sat Feb 11 06:43:52 2006
+++ aokell/features/glue/spoon/spoon.xml Mon Feb 20 04:49:48 2006
@@ -1,33 +0,0 @@
-<!--
- ! This library is free software; you can redistribute it and/or
- ! modify it under the terms of the GNU Lesser General Public
- ! License as published by the Free Software Foundation; either
- ! version 2 of the License, or (at your option) any later version.
- !
- ! This library is distributed in the hope that it will be useful,
- ! but WITHOUT ANY WARRANTY; without even the implied warranty of
- ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- ! Lesser General Public License for more details.
- !
- ! You should have received a copy of the GNU Lesser General Public
- ! License along with this library; if not, write to the Free Software
- ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- !
- ! Contact: Lionel.Seinturier@xxxxxxx
--->
-
-<!-- =================================================================== -->
-<!-- This project is called from ${basedir}/build.xml to glue components -->
-<!-- with the control level -->
-<!-- =================================================================== -->
-
-<project name="glue-spoon" default="compile.aokell.spoon">
-
- <target name="compile.aokell.spoon">
- <javac destdir="${out.build}">
- <src refid="srcpath" />
- <classpath refid="classpath" />
- </javac>
- </target>
-
-</project>
Index: aokell/features/membrane/comp/membrane.xml
diff -u /dev/null aokell/features/membrane/comp/membrane.xml:1.1
--- /dev/null Mon Feb 20 04:49:48 2006
+++ aokell/features/membrane/comp/membrane.xml Mon Feb 20 04:49:47 2006
@@ -0,0 +1,58 @@
+<!--
+ ! This library is free software; you can redistribute it and/or
+ ! modify it under the terms of the GNU Lesser General Public
+ ! License as published by the Free Software Foundation; either
+ ! version 2 of the License, or (at your option) any later version.
+ !
+ ! This library is distributed in the hope that it will be useful,
+ ! but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ ! Lesser General Public License for more details.
+ !
+ ! You should have received a copy of the GNU Lesser General Public
+ ! License along with this library; if not, write to the Free Software
+ ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ !
+ ! Contact: Lionel.Seinturier@xxxxxxx
+-->
+
+<!-- =================================================================== -->
+<!-- This project is called from ${basedir}/build.xml to compile -->
+<!-- elements related to the membrane feature. -->
+<!-- =================================================================== -->
+
+<project name="membrane.comp" default="compile.membrane.comp">
+
+ <target name="compile.membrane.comp">
+
+ <!-- Check whether the membranes must be recompiled -->
+ <uptodate property="compile.membrane.notrequired"
+
targetfile="${out.generated}/membrane/comp/org/objectweb/fractal/aokell/lib/membrane/Base.java">
+ <srcfiles dir="${src.feature.membrane}" includes="**/*.fractal"
/>
+ </uptodate>
+
+ <antcall target="compile.membrane.required" />
+ </target>
+
+ <target name="compile.membrane.required"
unless="compile.membrane.notrequired">
+
+ <!-- Copy the .fractal membrane definitions to ${out.build} -->
+ <copy todir="${out.build}">
+ <fileset dir="${src.feature.membrane}" includes="**/*.fractal" />
+ </copy>
+
+ <!-- Generate the Java code associated to membrane definitions -->
+ <java
classname="org.objectweb.fractal.aokell.tools.membrane.MembraneCompiler"
+ classpathref="classpath" fork="yes">
+ <arg value="-d" />
+ <arg value="${out.generated}/membrane/comp" />
+ </java>
+
+ <!-- Compile the generated Java code -->
+ <javac destdir="${out.build}">
+ <src path="${out.generated}/membrane/comp" />
+ <classpath refid="classpath" />
+ </javac>
+ </target>
+
+</project>
Index: aokell/features/membrane/oo/membrane.xml
diff -u /dev/null aokell/features/membrane/oo/membrane.xml:1.1
--- /dev/null Mon Feb 20 04:49:48 2006
+++ aokell/features/membrane/oo/membrane.xml Mon Feb 20 04:49:47 2006
@@ -0,0 +1,30 @@
+<!--
+ ! This library is free software; you can redistribute it and/or
+ ! modify it under the terms of the GNU Lesser General Public
+ ! License as published by the Free Software Foundation; either
+ ! version 2 of the License, or (at your option) any later version.
+ !
+ ! This library is distributed in the hope that it will be useful,
+ ! but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ ! Lesser General Public License for more details.
+ !
+ ! You should have received a copy of the GNU Lesser General Public
+ ! License along with this library; if not, write to the Free Software
+ ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ !
+ ! Contact: Lionel.Seinturier@xxxxxxx
+-->
+
+<!-- =================================================================== -->
+<!-- This project is called from ${basedir}/build.xml to compile -->
+<!-- elements related to the membrane feature. -->
+<!-- =================================================================== -->
+
+<project name="membrane.oo" default="compile.membrane.oo">
+
+ <target name="compile.membrane.oo">
+ <!-- Indeed empty for object-oriented membranes. -->
+ </target>
+
+</project>
Index: aokell/test/build.xml
diff -u aokell/test/build.xml:1.1 aokell/test/build.xml:1.2
--- aokell/test/build.xml:1.1 Sat Feb 11 06:43:53 2006
+++ aokell/test/build.xml Mon Feb 20 04:49:47 2006
@@ -45,20 +45,8 @@
<!-- =========== COMPILATION ============ -->
<!-- ==================================== -->
- <condition
- property="antfile.feature.glue"
- value="${features.glue}/spoon/spoon.xml">
- <not> <isset property="feature.glue.aspectj" /> </not>
- </condition>
-
- <condition
- property="antfile.feature.glue"
- value="${features.glue}/aspectj/aspectj.xml">
- <isset property="feature.glue.aspectj" />
- </condition>
-
<target name="compile">
- <ant antfile="${antfile.feature.glue}" inheritrefs="true"
inheritall="true" />
+ <ant antfile="${feature.glue}/glue.xml" inheritrefs="true"
inheritall="true" />
</target>
<!-- ============================= -->
| <-- Date Index --> | <-- Thread Index --> |
Powered by MHonArc.
Copyright © 2006-2007, OW2 Consortium | contact | webmaster.