[cig-commits] r3918 - in long/3D/Gale/trunk: . documentation python/Gale/packages src src/PICellerator src/PICellerator/MaterialPoints/src src/PICellerator/PopulationControl/src src/PICellerator/Utils/src src/PICellerator/Voronoi/src src/PICellerator/Weights/src src/PICellerator/libPICellerator/src src/PICellerator/plugins/Output/MaterialCentroid src/PICellerator/src src/StGermain src/StGermain/Base/Automation/src src/StGermain/Base/Container/src src/StGermain/Base/Context/src src/StGermain/Base/Extensibility/src src/StGermain/Base/FlattenXML/src src/StGermain/Base/Foundation/src src/StGermain/Base/IO/src src/StGermain/Base/ListPlugins/src src/StGermain/Base/src src/StGermain/Discretisation/Geometry/src src/StGermain/Discretisation/Mesh/src src/StGermain/Discretisation/Shape/src src/StGermain/Discretisation/Swarm/src src/StGermain/Discretisation/Utils/src src/StGermain/Discretisation/src src/StGermain/FD/src src/StGermain/libStGermain src/StGermain/libStGermain/dynamic src/StGermain/libStGermain/src src/StgFEM src/StgFEM/Assembly/src src/StgFEM/Discretisation/src src/StgFEM/SLE/LinearAlgebra/Dummy src/StgFEM/SLE/LinearAlgebra/PETSc src/StgFEM/SLE/LinearAlgebra/src src/StgFEM/SLE/MultiGrid/src src/StgFEM/SLE/ProvidedSystems/AdvectionDiffusion/src src/StgFEM/SLE/ProvidedSystems/Energy/src src/StgFEM/SLE/ProvidedSystems/StokesFlow/src src/StgFEM/SLE/ProvidedSystems/src src/StgFEM/SLE/SystemSetup/src src/StgFEM/SLE/src src/StgFEM/libStG_FEM/src src/StgFEM/plugins src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution src/StgFEM/plugins/Document src/StgFEM/plugins/LevelSetPlugin src/StgFEM/plugins/MultiGrid src/StgFEM/plugins/Output/CPUTime src/StgFEM/plugins/Output/FrequentOutput src/StgFEM/plugins/Output/PeakMemory src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues_2dBox src/StgFEM/plugins/StandardConditionFunctions src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solA src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solB src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solD src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solKx src/StgFEM/src src/Underworld src/Underworld/InputFiles/tests src/Underworld/Rheology/src src/Underworld/Utils/src src/Underworld/libUnderworld/src src/Underworld/plugins/EulerDeform src/Underworld/plugins/IncompressibleExtensionBC src/Underworld/plugins/MaterialThermalDiffusivity src/Underworld/plugins/MovingMesh src/Underworld/plugins/MovingMeshEnergyCorrection src/Underworld/plugins/Output/BoundaryLayers src/Underworld/plugins/Output/Nusselt src/Underworld/plugins/Output/Vrms src/Underworld/plugins/VariableConditions/ShapeTemperatureIC src/Underworld/src src/gLucifer

walter at geodynamics.org walter at geodynamics.org
Wed Jul 5 15:51:59 PDT 2006


Author: walter
Date: 2006-07-05 15:51:54 -0700 (Wed, 05 Jul 2006)
New Revision: 3918

Added:
   long/3D/Gale/trunk/documentation/StGermain.tex
   long/3D/Gale/trunk/documentation/basic.tex
   long/3D/Gale/trunk/documentation/memory.tex
   long/3D/Gale/trunk/src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution/SConscript
Removed:
   long/3D/Gale/trunk/src/PICellerator/project-config.sh
   long/3D/Gale/trunk/src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution/makefile
   long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solA/makefile
   long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solB/makefile
   long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solD/makefile
   long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solKx/makefile
   long/3D/Gale/trunk/src/Underworld/InputFiles/tests/makefile
   long/3D/Gale/trunk/src/gLucifer/project-config.sh
Modified:
   long/3D/Gale/trunk/
   long/3D/Gale/trunk/SConstruct.in
   long/3D/Gale/trunk/configure.py
   long/3D/Gale/trunk/python/Gale/packages/petsc.py
   long/3D/Gale/trunk/simple-extension.xml
   long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SConscript
   long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SConscript
   long/3D/Gale/trunk/src/PICellerator/SConscript
   long/3D/Gale/trunk/src/PICellerator/Utils/src/SConscript
   long/3D/Gale/trunk/src/PICellerator/Voronoi/src/SConscript
   long/3D/Gale/trunk/src/PICellerator/Weights/src/SConscript
   long/3D/Gale/trunk/src/PICellerator/libPICellerator/src/SConscript
   long/3D/Gale/trunk/src/PICellerator/plugins/Output/MaterialCentroid/SConscript
   long/3D/Gale/trunk/src/PICellerator/src/SConscript
   long/3D/Gale/trunk/src/PICellerator/src/main.c
   long/3D/Gale/trunk/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/Automation/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/Container/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/Context/src/AbstractContext.c
   long/3D/Gale/trunk/src/StGermain/Base/Context/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginLoader.c
   long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginLoader.h
   long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginsManager.c
   long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginsManager.h
   long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/FlattenXML/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/Foundation/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/IO/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/ListPlugins/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Base/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Discretisation/Geometry/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Discretisation/Mesh/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Discretisation/Shape/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Discretisation/Utils/src/SConscript
   long/3D/Gale/trunk/src/StGermain/Discretisation/src/SConscript
   long/3D/Gale/trunk/src/StGermain/FD/src/SConscript
   long/3D/Gale/trunk/src/StGermain/SConscript
   long/3D/Gale/trunk/src/StGermain/libStGermain/SConscript
   long/3D/Gale/trunk/src/StGermain/libStGermain/dynamic/SConscript
   long/3D/Gale/trunk/src/StGermain/libStGermain/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/Assembly/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/Discretisation/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/Dummy/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/PETSc/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/MultiGrid/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/AdvectionDiffusion/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/Energy/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/StokesFlow/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/SystemSetup/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/SLE/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/libStG_FEM/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/Document/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/LevelSetPlugin/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/MultiGrid/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/Output/CPUTime/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/Output/FrequentOutput/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/Output/PeakMemory/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues_2dBox/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/SConscript
   long/3D/Gale/trunk/src/StgFEM/plugins/StandardConditionFunctions/SConscript
   long/3D/Gale/trunk/src/StgFEM/src/SConscript
   long/3D/Gale/trunk/src/StgFEM/src/main.c
   long/3D/Gale/trunk/src/Underworld/Rheology/src/SConscript
   long/3D/Gale/trunk/src/Underworld/SConscript
   long/3D/Gale/trunk/src/Underworld/Utils/src/SConscript
   long/3D/Gale/trunk/src/Underworld/libUnderworld/src/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/EulerDeform/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/IncompressibleExtensionBC/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/MaterialThermalDiffusivity/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/MovingMesh/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/MovingMeshEnergyCorrection/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/Output/BoundaryLayers/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/Output/Nusselt/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/Output/Vrms/SConscript
   long/3D/Gale/trunk/src/Underworld/plugins/VariableConditions/ShapeTemperatureIC/SConscript
   long/3D/Gale/trunk/src/Underworld/src/SConscript
   long/3D/Gale/trunk/src/Underworld/src/main.c
Log:
 r370 at earth:  boo | 2006-07-05 15:24:54 -0700
 Make static builds work again



Property changes on: long/3D/Gale/trunk
___________________________________________________________________
Name: svk:merge
   - 3a629746-de10-0410-b17b-fd6ecaaa963e:/cig:141
   + 3a629746-de10-0410-b17b-fd6ecaaa963e:/cig:370

Modified: long/3D/Gale/trunk/SConstruct.in
===================================================================
--- long/3D/Gale/trunk/SConstruct.in	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/SConstruct.in	2006-07-05 22:51:54 UTC (rev 3918)
@@ -31,8 +31,13 @@
 
 env.Append(CPPPATH=['#/build/include'])
 env.Append(CPPPATH=['#/build/include/StGermain'])
-env.Append(CPPFLAGS='-DVERSION=\\"3519\\"')
+env.Append(CPPFLAGS=['-DVERSION=\\"3519\\"'])
 env.Append(SHLINKFLAGS=Split('@SHARED_LIBRARY_FLAG@'))
+# Only use shared libraries if so configured.
+with_shared=True
+if not '@WITH_SHARED@':
+    with_shared=False
+    env.Append(CPPFLAGS=['-DNOSHARED'])
 
 # Add in the MPI paths
 for path in Split('@MPI_CPPPATH@'):
@@ -60,7 +65,7 @@
 
 # Add the local "lib" directory to the linker path
 
-env.Append(LIBPATH='#/build/lib')
+env.Append(LIBPATH=['#/build/lib'])
 
 cppflags='@CPPFLAGS@'
 if len(cppflags)!=0:
@@ -116,11 +121,20 @@
 header_groups={}
 bin_objects=[]
 shared_lib_objects=[]
+static_lib_objects=[]
 
 Export('header_groups')
 Export('bin_objects')
 Export('shared_lib_objects')
+Export('static_lib_objects')
 
+def libs(shared_lib_objects,static_lib_objects):
+    if '@WITH_SHARED@':
+        return shared_lib_objects
+    return static_lib_objects
+Export('libs')
+
+
 python_lib=[]
 python_py=[]
 python_include_dir='@PYTHON_INCLUDE_DIR@'
@@ -215,12 +229,16 @@
                                             'src/' + source + h)]
 
 Depends(shared_lib_objects,fake_header_install)
+Depends(static_lib_objects,fake_header_install)
 
-fake_lib_install=env.Install('build/lib',shared_lib_objects)
-Depends(bin_objects,fake_lib_install)
+if with_shared:
+    fake_lib_install=env.Install('build/lib',shared_lib_objects)
+    Depends(bin_objects,fake_lib_install)
+    lib_install=env.Install(lib_dir,shared_lib_objects)
+else:
+    lib_install=env.Install(lib_dir,static_lib_objects)
 
 bin_install=env.Install(bin_dir,bin_objects)
-lib_install=env.Install(lib_dir,shared_lib_objects)
 
 env.Alias('install',bin_install)
 env.Alias('install',lib_install)
@@ -228,28 +246,4 @@
 
 
 Default(None)
-Default(fake_header_install,shared_lib_objects,bin_objects)
-
-# Install the docs and manpage
-
-# doc_objects=[]
-# man_objects=[]
-# Export('doc_objects')
-# Export('man_objects')
-# SConscript('docs/SConscript')
-# doc_dir=prefix+"/share/doc/arx"
-# doc_install=env.Install(doc_dir,doc_objects)
-# env.Alias('install',doc_install)
-# man_install=env.Install(man_dir,man_objects)
-# env.Alias('install',man_install)
-
-# Make the python binding
-
-python_dir=lib_dir+"/python"+sys.version[:3]
-
-python_lib_install=env.Install(python_dir,python_lib)
-python_py_install=env.Install(python_dir,python_py)
-
-env.Alias('python',python_lib_install)
-env.Alias('python',python_py_install)
-env.Alias('python',lib_install)
+Default(bin_objects)

Modified: long/3D/Gale/trunk/configure.py
===================================================================
--- long/3D/Gale/trunk/configure.py	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/configure.py	2006-07-05 22:51:54 UTC (rev 3918)
@@ -166,6 +166,11 @@
     framework.compilers.addArgumentSubstitution('mandir', 'mandir')
     framework.compilers.addArgumentSubstitution('includedir', 'includedir')
 
+    shared_substitute=''
+    if framework.argDB.has_key('with-shared'):
+      shared_substitute='1'
+    framework.addSubstitution('WITH_SHARED',shared_substitute)
+
     framework.addSubstitution("PYTHON_BIN",sys.executable)
 
     framework.addSubstitutionFile("SConstruct")

Added: long/3D/Gale/trunk/documentation/StGermain.tex
===================================================================
--- long/3D/Gale/trunk/documentation/StGermain.tex	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/documentation/StGermain.tex	2006-07-05 22:51:54 UTC (rev 3918)
@@ -0,0 +1,66 @@
+\documentclass[a4paper,12pt]{article}
+\usepackage{graphicx}
+\date{}
+\begin{document}
+
+\section{Components}
+\label{com}
+
+\subsection{Memory Management}
+\include{memory}
+
+\subsection{Journaling}
+journal, streams, formatters, dictionary
+
+\subsection{Classes, Objects and Components}
+include this stuff from automation: component repository, components, 
+documentation component repository?, hierarchy table?, live component
+register?
+include this stuff from foundation: object adaptor?, primitive object?, 
+named objects (named object register), classes
+
+\subsection{Containers}
+array, binary tree, hash table, heap, index map, index set, linked list
+
+\subsection{Meshing}
+\subsubsection{Mesh Representation}
+\subsubsection{Mesh Generation}
+all the geometry and topology garbage, layouts, remeshers
+
+\subsection{Variables and Variable Conditions}
+Provide a list of all the things currently available, e.g. meshes, 
+swarms (both integration and material), voronoi stuff, rheologies.
+dof layouts, extra wall vcs and stuff
+
+\subsection{Swarms}
+
+\subsection{Geometric Math Routines}
+vector math, tensor maths, lines, edges, planes, trig math, shapes
+
+\subsection{Integration}
+time integrators
+
+\subsection{Parallelisation Utilities}
+sync
+
+\subsection{Application Contexts}
+abstract context
+
+\subsection{Extending the Framework}
+codelets, entry points, class extensions
+
+\subsection{Unknown}
+Sobol generator?
+
+\section{Applications}
+\label{app}
+flatten XML, list plugins
+
+\section{Python Embedding}
+\label{py}
+
+\section{Examples}
+\label{ex}
+Provide some examples illustrating how to get things done.
+
+\end{document}

Added: long/3D/Gale/trunk/documentation/basic.tex
===================================================================
--- long/3D/Gale/trunk/documentation/basic.tex	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/documentation/basic.tex	2006-07-05 22:51:54 UTC (rev 3918)
@@ -0,0 +1,76 @@
+\documentclass[a4paper,12pt]{article}
+\usepackage{graphicx}
+\date{}
+\begin{document}
+
+\section{Overview}
+\label{ov}
+\begin{description}
+\item [StGermain] Handles low level operations, e.g. memory managment.
+\item [StgFEM] Provides interfaces and implementations to finite element based
+  operations.
+\item [PICellerator] Provides routines for handling particle-based integration.
+  This includes such things as population control and parallel management.
+\item [Underworld] Primarily constituted by material rheologies for use with
+  the underlying components.
+\item [gLucifer] A visualisation utility providing parallel rendering, allowing
+  for visualisation of large data sets.
+\end{description}
+See \ref{com} for a more complete list of functionality.
+
+\subsection{StGermain}
+\label{ov:stgermain}
+StGermain provides a suite of components and utilities used as a foundation for
+the other higher level packages (e.g. StgFEM). The functionality provided by
+StGermain is suited primarily to high-performance scientific applications. This
+includes (but not limited to):
+\begin{itemize}
+\item memory management/profiling, 
+\item basic container classes (e.g. hash tables, binary trees), 
+\item XML input manipulation, 
+\item mesh representation and construction, 
+\item basic particle managment routines and
+\item low level parallelisation in interfaces.
+\end{itemize}
+
+\subsection{StgFEM}
+\label{ov:stgfem}
+StgFEM provides a set of routines more focused on finite element applications.
+\begin{itemize}
+\item element types (e.g. linear, bilinear, etc.)
+\item parallel equation number calculation, 
+\item linear algebra interfaces, 
+\item matrix and vector interfaces
+\item multigrid solvers, 
+\item a set of existing solvers (e.g. advection/diffusion, energy)
+\end{itemize}
+
+\subsection{PICellerator}
+\label{ov:pic}
+\begin{itemize}
+\item storage of material properties on particles, 
+\item population control (e.g. particle splitting and removal), 
+\item particle based integration routines
+\end{itemize}
+
+\subsection{Underworld}
+\label{ov:underworld}
+Going to chat to the guys at Monash for an accurate desciription of this one.
+
+\subsection{gLucifer}
+\label{ov:glu}
+Same as above; I don't really know what each part of gLucifer is for.
+
+\section{Coding Conventions}
+\label{cc}
+Describe the phases we use (construct, build, initialise, execute).
+
+Describe entry points, pulgins, components, objects.
+
+Detail the code layout, e.g. src and test directories
+
+The major components discussed thus far all 
+Describe the object oriented C style of coding. Include conventions like
+underbar prefix for private functions, etc.
+
+\end{document}

Added: long/3D/Gale/trunk/documentation/memory.tex
===================================================================
--- long/3D/Gale/trunk/documentation/memory.tex	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/documentation/memory.tex	2006-07-05 22:51:54 UTC (rev 3918)
@@ -0,0 +1,215 @@
+\documentclass[a4paper,12pt]{article}
+\usepackage{graphicx}
+\date{}
+\begin{document}
+
+\section{Memory}
+The memory module is design to aid development and debugging of programs in the StGermain framework by providing common allocation routines and recording statistical information on memory allocation. It allows the logical grouping of allocations by type and name, as well as records handy information such as the file, function and line number an allocation was made from.
+
+Although \texttt{malloc()} in standard C provides a good general interface in memory allocation, it is often too simplistic to be used in computational codes where a lot of allocations demand matricies, 3D arrays or other advanced array structures. It also lacks useful statistical information of the allocatinos which could be used when debugging or benchmarking code.
+
+The Memory module in StGermain extends the memory management interface in C to include these addtional features to help the development process. It introduces new allocation routines which can create 1D to 4D array structures. Allocations are also tagged with the data type being created, the memory space used, the location in code which it was called from, and optionally a name to associate with. These statistics can be summarised in a print out or searched and filtered to produce useful information when debugging a system.
+
+For performance, the statistics recording option of the Memory module can be switched off both at the run-time level or at compilation level to produce optimised programs without changing any source code.
+
+\subsection{Basic Array Allocation}
+Basic array allocations create array structures that allow the use of "[]" brackets to access its contents. They are the dynamic equivalent of statically decleared arrays in C.
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc( \textit{Type}, Name name )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_Array( \textit{Type}, Index arrayLength, Name name )} \\ \hline
+    \texttt{\textit{Type}** Memory\_Alloc\_2DArray( \textit{Type}, Index xLength, Index yLength, Name name )} \\ \hline
+    \texttt{\textit{Type}*** Memory\_Alloc\_3DArray( \textit{Type}, Index xLength, Index yLength, Index zLength, Name name )} \\ \hline
+    \texttt{\textit{Type}**** Memory\_Alloc\_4DArray( \textit{Type}, Index xLength, Index yLength, Index zLength, Index wLength, Name name )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_Unnamed( \textit{Type} )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_Array\_Unnamed( \textit{Type}, Index arrayLength )} \\ \hline
+    \texttt{\textit{Type}** Memory\_Alloc\_2DArray\_Unnamed( \textit{Type}, Index xLength, Index yLength )} \\ \hline
+    \texttt{\textit{Type}*** Memory\_Alloc\_3DArray\_Unnamed( \textit{Type}, Index xLength, Index yLength, Index zLength )} \\ \hline
+    \texttt{\textit{Type}**** Memory\_Alloc\_4DArray\_Unnamed( \textit{Type}, Index xLength, Index yLength, Index zLength, Index wLength )} \\ \hline
+  \end{tabular}
+\end{table}
+
+Allocation functions in the Memory module require a \texttt{\textit{Type}} to be specified as an argument. This can be any primitive data type, pointers, structs or typedefs. The allocation function will automatically cast the result into the appropriate data type to be used.
+
+\subsection{Complex Array Allocation}
+Complex arrays are multi-dimensional arrays designed to conserve memory space
+by allocating each length of a dimension to a custom value.
+
+For example, a 1000 by 1000 matrix can allocated as a 2D array. However in this
+particular calculation, only the first row uses the full 1000 items in the
+matrix whilst the others use only 10 items on average. If the number of items
+used in each row was known, then a conservative memory allocation can be
+created instead with a Complex 2D array where the number of items in each row
+are set to the number of items used. This reduces the memory usage of the code
+and allows it to become a more scalable program.
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{2D Functions}} \\ \hline
+    \texttt{\textit{Type}** Memory\_Alloc\_2DComplex( \textit{Type}, Index xLength, Index* yLengths, Name name )} \\ \hline
+    \texttt{\textit{Type}** Memory\_Alloc\_2DComplex\_Unnamed( \textit{Type}, Index xLength, Index* yLengths )} \\ \hline
+  \end{tabular}
+\end{table}
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{3D Functions}} \\ \hline
+    \texttt{Index** Memory\_Alloc\_3DSetup( Index xLength, Index* yLengths )} \\ \hline
+    \texttt{\textit{Type}*** Memory\_Alloc\_3DComplex( \textit{Type}, Index xLength, Index* yLengths, Index** zLengths, Name name )} \\ \hline
+    \texttt{\textit{Type}*** Memory\_Alloc\_3DComplex\_Unnamed( Index** setupPtr, \textit{Type}, Index xLength, Index* yLengths )} \\ \hline
+  \end{tabular}
+\end{table}
+
+StGermain includes complex allocations for 2D and 3D arrays. In the 3D case, the \texttt{Memory\_Alloc\_3DSetup()} function is used to create an indexing matrix used for both allocating the custom size of the array and as well as the iterating limits in loop statements.
+
+\subsection{Multi-dimensional Arrays in 1D Form}
+A performance increase can be achieved by allocating and accessing a multi-dimensional array within a 1D array. The overhead of memory pointer headers are also removed, so memory space usage is also more efficient.
+
+Accessing macros have been created to make using such arrays more convienent.
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_2DArrayAs1D( \textit{Type}, Index xLength, Index yLength, Name name )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_2DArrayAs1D\_Unnamed( \textit{Type}, Index xLength, Index yLength )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Access2D( array2D, x, y, yLength )} \\ \hline
+  \end{tabular}
+\end{table}
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_3DArrayAs1D( \textit{Type}, Index xLength, Index yLength, Index zLength, Name name )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_3DArrayAs1D\_Unnamed( \textit{Type}, Index xLength, Index yLength, Index zLength )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Access3D( array2D, x, y, z, yLength, zLength )} \\ \hline
+  \end{tabular}
+\end{table}
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_4DArrayAs1D( \textit{Type}, Index xLength, Index yLength, Index zLength, Index wLength, Name name )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Alloc\_4DArrayAs1D\_Unnamed( \textit{Type}, Index xLength, Index yLength, Index zLength, Index wLength )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Access4D( array2D, x, y, z, w, yLength, zLength, wLength )} \\ \hline
+  \end{tabular}
+\end{table}
+
+\subsection{Byte-wise Allocation}
+It is still possible to create allocations with a integer number of bytes. 
+The purpose of these functions are to maintain compatibility with the original 
+\texttt{malloc()} interface and still allow statistical recording of allocations.
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{void* Memory\_Alloc\_Bytes( SizeT size, Type type, Name name )} \\ \hline
+    \texttt{void* Memory\_Alloc\_Bytes\_Unnamed( SizeT size, Type type )} \\ \hline
+    \texttt{void* Memory\_Alloc\_Array\_Bytes( SizeT size, Index arrayLength, Type type, Name name )} \\ \hline
+    \texttt{void* Memory\_Alloc\_Array\_Bytes\_Unnamed( SizeT size, Index arrayLength, Type type )} \\ \hline
+  \end{tabular}
+\end{table}
+
+\subsection{Memory Deallocation}
+All allocations made with the Memory module in StGermain should be 
+deallocated with \texttt{Memory\_Free()}.
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{void Memory\_Free( void* ptr )} \\ \hline
+  \end{tabular}
+\end{table}
+
+This will free the memory used by the pointer and update the statistics 
+database if enabled.
+
+\subsection{Resizing Allocations}
+Wrappers have been written for the realloc function to allow easy size changes to alloctions dynamically. Note that these realloc wrappers still behave in the same way that the C \texttt{realloc()} function does. If a \texttt{NULL} is given as an argument to resize, a \texttt{malloc()} instead occurs and creates a new allocation. In such situations, \texttt{Name\_Invalid} is given as the default name for his allocation.
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{\textit{Type}* Memory\_Realloc( void* ptr, SizeT newSize )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Realloc\_Array( void* ptr, \textit{Type}, Index newLength )} \\ \hline
+    \texttt{\textit{Type}** Memory\_Realloc\_2DArray( void* ptr, \textit{Type}, Index newX, Index newY )} \\ \hline
+    \texttt{\textit{Type}*** Memory\_Realloc\_3DArray( void* ptr, \textit{Type}, Index newX, Index newY, Index newZ )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Realloc\_2DArrayAs1D( void* ptr, \textit{Type}, Index oldX, Index oldY, Index newX, Index newY )} \\ \hline
+    \texttt{\textit{Type}* Memory\_Realloc\_3DArrayAs1D( void* ptr, \textit{Type}, Index oldX, Index oldY, Index oldZ, Index newX, Index newY, Index newZ )} \\ \hline
+  \end{tabular}
+\end{table}
+
+{\bf Notes}
+\begin{itemize}
+\item For 2D and 3D allocations, the integrity of the data in the pointer is only kept if the dimensions are made larger and not smaller.
+\item \texttt{Memory\_Realloc()} is used to resize single instances which is a rare operation to perform. This function is made to be compatible with the C interface and an Array allocation is perferred if possible.
+\end{itemize}
+
+\subsection{Enabling Statistic Recording}
+By default, statistical recording in the Memory module is {\bf disabled} so that no processing overhead is introduced. To enable statistical recording, you must change the configuration settings in StGermain. Re-configure StGermain to include the \texttt{\textbf{memory\_stats}} option. You may still use all of the module's allocation, reallocation and deallocation routines while the statistics recording is disabled.
+
+To avoid recompiling StGermain to switch between options, you may switch off statistics recording during run-time as well. Note that this implies that the \verb:memory_stats: options was used to configure StGermain.
+
+\subsection{Displaying Statistics}
+While the memory module is turned on, information such as the type of the allocation, size of data, length of array, file, function and line number is recored for each allocation call.
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{void Memory\_Print()} \\ \hline
+    \texttt{void Memory\_Print\_Summary()} \\ \hline
+  \end{tabular}
+\end{table}
+
+These functions display a summary of the information in the database to the "Memory" Info stream in StGermain. \verb:Memory_Print_Summary(): will also print a record of each pointer allocated at level 2 printing.
+
+\subsection{Memory Leaks}
+Memory leaks are allocations which have been forgotten and do not get properly deallocated when the program finishes. In software development, memory leaks tend to return and haunt programmers in the form of bugs and exploits.
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{void Memory\_Print\_Leak()} \\ \hline
+  \end{tabular}
+\end{table}
+
+This function is useful while debugging programs as it displays the number of known allocations in the system which has currently not been deallocated. Good programming practice would suggest software to be written without memory leaks to reduce the possibility of bugs in code.
+
+\subsection{Displaying Groups and Sub-groups}
+It is also possible to display summaries of types, names, files and functions.
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{void Memory\_Print\_Type( \textit{Type} )} \\ \hline
+    \texttt{void Memory\_Print\_Type\_Name( \textit{Type}, Name name )} \\ \hline
+    \texttt{void Memory\_Print\_File( char* fileName )} \\ \hline
+    \texttt{void Memory\_Print\_File\_Function( char* fileName, char* funcName )} \\ \hline
+  \end{tabular}
+\end{table}
+
+These functions are useful for both debugging and measurement, to analyse the amount of resources used by code.
+
+\subsection{Displaying a Pointer}
+A handy function to use for debugging is \texttt{Memory\_Print\_Pointer()}.
+
+\begin{table}[h]
+  \begin{tabular}{|p{13.3cm}|}
+    \hline \multicolumn{1}{|c|}{\textbf{Function}} \\ \hline
+    \texttt{void Memory\_Print\_Pointer( void* ptr )} \\ \hline
+  \end{tabular}
+\end{table}
+
+Any currently allocated memory block created by the Memory module given to this function will give a print out of all details of this pointer. It is sometimes also possible to call this function from gdb, depending on your system, settings and current position in gdb.
+
+\subsection{Further Notes}
+\begin{itemize}
+\item The memory module only records infomation while it is \textbf{enabled}.
+\item All memory module functions should be called \textbf{after} \texttt{StGermain\_Init()} and \textbf{before} \texttt{StGermain\_Finalise()}.
+\item The module has been designed for development and debugging purposes. Where performance is an issue, it should be disabled.
+\item This module is {\bf NOT} thread safe. Future development may include thread safe capabilities through the use of semaphores.
+\item In general, give meaningful allocation names as oppose to using \texttt{Unnamed} allocations. Although this increases the length of code you'll write, the ability to catgorise the allocations you create will help you analyse your code in the future.
+\item Use the Unnamed allocations only for temporary objects that have little complexity. These are usually local function allocations where the scope of the object(s) exists only for that function. For example, a temporary char buffer used for string maniplation within a certain function.
+\item Replace all \texttt{malloc()} / \texttt{free()} calls in your code to use the Memory module equivalents. Remember that when the memory module is disabled, it will not have any performance impact to the allocations you create.
+\end{itemize}
+
+\end{document}

Modified: long/3D/Gale/trunk/python/Gale/packages/petsc.py
===================================================================
--- long/3D/Gale/trunk/python/Gale/packages/petsc.py	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/python/Gale/packages/petsc.py	2006-07-05 22:51:54 UTC (rev 3918)
@@ -63,7 +63,7 @@
         self.compilers.LIBS += ' -l'+library
       self.pushLanguage(self.language[-1])
       if config.setCompilers.Configure.isDarwin():
-        self.compilers.LIBS += ' -framework veclib'
+        self.compilers.LIBS += ' -framework vecLib'
       if not self.checkLink('', testFunction+'();\n'):
         foundLibrary = False
       self.compilers.LIBS = oldLibs

Modified: long/3D/Gale/trunk/simple-extension.xml
===================================================================
--- long/3D/Gale/trunk/simple-extension.xml	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/simple-extension.xml	2006-07-05 22:51:54 UTC (rev 3918)
@@ -129,7 +129,7 @@
     </struct>
     <struct name="VelocityMagnitudeField">
       <param name="Type">OperatorFeVariable</param>
-      <param name="Operator">VectorMag</param>
+      <param name="Operator">Magnitude</param>
       <param name="FeVariable">VelocityField</param>
     </struct>
     <struct name="VelocityGradientsField">
@@ -181,10 +181,27 @@
       <param name="Type">GaussParticleLayout</param>
     </struct>
     <struct name="gaussSwarm">
-      <param name="Type">Swarm</param>
+      <param name="Type">IntegrationPointsSwarm</param>
       <param name="CellLayout">cellLayout</param>
       <param name="ParticleLayout">particleLayout</param>
+      <param name="FiniteElement_Mesh">mesh-linear</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="IntegrationPointMapper">gaussMapper</param>
     </struct>
+    <struct name="gaussMapper">
+      <param name="Type">GaussMapper</param>
+      <param name="IntegrationPointsSwarm">gaussSwarm</param>
+      <param name="MaterialPointsSwarm">gaussMaterialSwarm</param>
+    </struct>
+    <struct name="backgroundLayout">
+      <param name="Type">BackgroundParticleLayout</param>
+    </struct>
+    <struct name="gaussMaterialSwarm">
+      <param name="Type">MaterialPointsSwarm</param>
+      <param name="CellLayout">cellLayout</param>
+      <param name="ParticleLayout">backgroundLayout</param>
+      <param name="FiniteElement_Mesh">mesh-linear</param>
+    </struct>
     <struct name="timeIntegrator">
       <param name="Type">TimeIntegrator</param>
       <param name="order">timeIntegratorOrder</param>
@@ -209,19 +226,39 @@
 	<param name="Type">DiscreteVoronoiWeights</param>
 	<param name="DiscreteVoronoi">discreteVoronoi</param>
     </struct>
-    <struct name="materialPoints">
+    <struct name="picIntegrationPoints">
       <param name="Type">IntegrationPointsSwarm</param>
       <param name="CellLayout">elementCellLayout</param>
       <param name="ParticleLayout">materialPointsParticleLayout</param>
       <param name="WeightsCalculator">weights</param>
+      <param name="FiniteElement_Mesh">mesh-linear</param>
       <param name="TimeIntegrator">timeIntegrator</param>
       <!--param name="SplittingRoutine">splittingRoutine</param-->
       <!--param name="RemovalRoutine">removalRoutine</param-->
       <param name="EscapedRoutine">escapedRoutine</param>
+      <param name="IntegrationPointMapper">mapper</param>
     </struct>
+    <struct name="mapper">
+      <param name="Type">CoincidentMapper</param>
+      <param name="IntegrationPointsSwarm">picIntegrationPoints</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
+    </struct>
+    <struct name="materialSwarmParticleLayout">
+      <param name="Type">SpaceFillerParticleLayout</param>
+      <param name="averageInitialParticlesPerCell">particlesPerCell</param>
+    </struct>
+    <struct name="materialSwarm">
+      <param name="Type">MaterialPointsSwarm</param>
+      <param name="CellLayout">elementCellLayout</param>
+      <param name="ParticleLayout">materialSwarmParticleLayout</param>
+      <param name="FiniteElement_Mesh">mesh-linear</param>
+      <param name="SplittingRoutine">splittingRoutine</param>
+      <param name="RemovalRoutine">removalRoutine</param>
+      <param name="EscapedRoutine">escapedRoutine</param>
+    </struct>
     <struct name="materialPointsAdvector">
       <param name="Type">SwarmAdvector</param>
-      <param name="Swarm">materialPoints</param>
+      <param name="Swarm">materialSwarm</param>
       <param name="TimeIntegrator">timeIntegrator</param>
       <param name="VelocityField">VelocityField</param>
       <param name="PeriodicBCsManager">periodicBCsManager</param>
@@ -256,7 +293,7 @@
     </struct>
     <struct name="constitutiveMatrix">
       <param name="Type">ConstitutiveMatrixCartesian</param>
-      <param name="Swarm">materialPoints</param>
+      <param name="Swarm">picIntegrationPoints</param>
       <param name="StiffnessMatrix">k_matrix</param>
     </struct>
     <struct name="g_matrix">
@@ -278,7 +315,7 @@
     </struct>
     <struct name="preconditionerTerm">
       <param name="Type">UzawaPreconditionerTerm</param>
-      <param name="Swarm">materialPoints</param>
+      <param name="Swarm">picIntegrationPoints</param>
       <param name="StiffnessMatrix">preconditioner</param>
     </struct>
     <struct name="uzawa">
@@ -360,6 +397,8 @@
     <!-- Rheologies -->
     <struct name="StrainWeakening">
       <param name="Type">StrainWeakening</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
       <param name="initialStrain">0.5</param>
       <param name="finalStrain">1.0</param>
       <param name="initialDamageFraction">0.0</param>
@@ -368,6 +407,9 @@
     </struct>
     <struct name="director">
       <param name="Type">Director</param>
+      <param name="TimeIntegrator">timeIntegrator</param>
+      <param name="VelocityGradientsField">VelocityGradientsField</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
       <param name="initialDirectionX">0.0</param>
       <param name="initialDirectionY">1.0</param>
       <param name="initialDirectionZ">0.0</param>
@@ -376,8 +418,10 @@
     <struct name="sandYielding">
       <param name="Type">MohrCoulomb</param>
       <param name="PressureField">PressureField</param>
-      <param name="IntegrationPointsSwarm">materialPoints</param>
+      <param name="VelocityGradientsField">VelocityGradientsField</param>
+      <param name="MaterialPointsSwarm">materialSwarm</param>
       <param name="Director">director</param>
+      <param name="Context">context</param>
       <param name="StrainWeakening">StrainWeakening</param>
       <param name="cohesion">10.0</param>
       <param name="cohesionAfterSoftening">10.0</param>

Modified: long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/MaterialPoints/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,74 +15,73 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','PICellerator_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"PICelleratorMaterialPoints\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"PICelleratorMaterialPoints\\\""])
 
-header_groups['PICellerator/MaterialPoints']=Split("""CoincidentMapper.h
+header_groups['PICellerator/MaterialPoints']=Split("""BackgroundParticleLayout.h
+CoincidentMapper.h
 Context.h
 Finalise.h
+GaussMapper.h
 Init.h
 IntegrationPointMapper.h
 IntegrationPointsSwarm.h
 ManyToOneMapper.h
+MappedParticleLayout.h
 MaterialFeVariable.h
 Material.h
 MaterialPoint.h
 MaterialPoints.h
 MaterialPointsSwarm.h
 Materials_Register.h
-OneToOneMapFunction.h
 OneToOneMapper.h
-OneToOneSamePosition.h
 ParticleFeVariable.h
 PeriodicBoundariesManager.h
-PopulationControlSwarm.h
 SwarmAdvectorD.h
 SwarmAdvector.h
 types.h""")
 
 
-c_files=Split("""CoincidentMapper.c
+c_files=Split("""BackgroundParticleLayout.c
+CoincidentMapper.c
 Context.c
 Finalise.c
+GaussMapper.c
 Init.c
 IntegrationPointMapper.c
 IntegrationPointsSwarm.c
 ManyToOneMapper.c
+MappedParticleLayout.c
 Material.c
 MaterialFeVariable.c
 MaterialPoint.c
 MaterialPointsSwarm.c
 Materials_Register.c
-OneToOneMapFunction.c
 OneToOneMapper.c
-OneToOneSamePosition.c
 ParticleFeVariable.c
 PeriodicBoundariesManager.c
-PopulationControlSwarm.c
 SwarmAdvector.c
 SwarmAdvectorD.c""")
 
 
-meta_files=Split("""CoincidentMapper.meta
+meta_files=Split("""BackgroundParticleLayout.meta
+CoincidentMapper.meta
 Context.meta
+GaussMapper.meta
 IntegrationPointMapper.meta
 IntegrationPointsSwarm.meta
 IPMapper.meta
 ManyToOneMapper.meta
+MappedParticleLayout.meta
 MaterialFeVariable.meta
 Material.meta
-MaterialPointsClass.meta
 MaterialPointsSwarm.meta
 MaterialSwarm.meta
-OneToOneMapFunction.meta
 OneToOneMapper.meta
-OneToOneSamePosition.meta
 ParticleFeVariable.meta
 PeriodicBoundariesManager.meta
-PopulationControlSwarm.meta
 SingleMaterialMapper.meta
 SwarmAdvectorD.meta
 SwarmAdvector.meta""")
@@ -91,5 +90,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('PICelleratorMaterialPoints',
                                              c_files)]
-    
+PICellerator_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/PopulationControl/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','PICellerator_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -51,5 +51,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('PICelleratorPopulationControl',c_files)]
-    
+PICellerator_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/PICellerator/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,6 +15,9 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
+PICellerator_static_objects=[]
+Export('PICellerator_static_objects')
+
 SConscript('Utils/SConscript')
 SConscript('Voronoi/SConscript')
 SConscript('Weights/SConscript')

Modified: long/3D/Gale/trunk/src/PICellerator/Utils/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Utils/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/Utils/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','PICellerator_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -39,5 +39,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('PICelleratorUtils',c_files)]
-    
+PICellerator_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/PICellerator/Voronoi/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Voronoi/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/Voronoi/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','PICellerator_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -42,5 +42,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('PICelleratorVoronoi',c_files)]
-    
+PICellerator_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/PICellerator/Weights/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/Weights/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/Weights/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','PICellerator_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -26,6 +26,7 @@
 IterativeWeights.h
 MomentBalanceWeights.h
 types.h
+VolumeWeights.h
 WeightsCalculator.h
 Weights.h""")
 
@@ -36,6 +37,7 @@
 Init.c
 IterativeWeights.c
 MomentBalanceWeights.c
+VolumeWeights.c
 WeightsCalculator.c""")
 
 
@@ -43,10 +45,11 @@
 DiscreteVoronoiWeights.meta
 IterativeWeights.meta
 MomentBalanceWeights.meta
+VolumeWeights.meta
 WeightsCalculator.meta""")
 
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('PICelleratorWeights',c_files)]
-    
+PICellerator_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/PICellerator/libPICellerator/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/libPICellerator/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/libPICellerator/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','static_lib_objects','PICellerator_static_objects','header_groups')
 
 local_env=env.Copy()
 local_env.Append(CPPPATH=["#/build/include/PICellerator"])
@@ -29,5 +29,5 @@
 Init.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('PICellerator',c_files)]
-    
-
+static_lib_objects=[local_env.StaticLibrary('PICellerator',[c_files+PICellerator_static_objects])]+static_lib_objects
+Export('static_lib_objects')

Modified: long/3D/Gale/trunk/src/PICellerator/plugins/Output/MaterialCentroid/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/plugins/Output/MaterialCentroid/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/plugins/Output/MaterialCentroid/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,13 +15,13 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects')
+Import('env','shared_lib_objects','PICellerator_static_objects')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"PICellerator_MaterialCentroid\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"PICellerator_MaterialCentroid\\\""])
 
 c_files=Split("""MaterialCentroid.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('PICellerator_MaterialCentroidmodule',c_files,SHLIBPREFIX='')]
-    
+PICellerator_static_objects+=[local_env.StaticLibrary('PICellerator_MaterialCentroidmodule',c_files)]
 

Deleted: long/3D/Gale/trunk/src/PICellerator/project-config.sh
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/project-config.sh	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/project-config.sh	2006-07-05 22:51:54 UTC (rev 3918)
@@ -1,48 +0,0 @@
-#!/bin/sh
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-##
-## Victorian Partnership for Advanced Computing (VPAC) Ltd, Australia
-## (C) 2003 All Rights Reserved
-##
-## California Institute of Technology (Caltech), USA
-## (C) 2003 All Rights Reserved
-##
-## Authors:
-## 	Stevan M. Quenette, Senior Software Engineer, VPAC.
-##	Stevan M. Quenette, Visitor in Geophysics, Caltech.
-##
-## <copyright-release-tag>
-##
-## Role:
-##	Obtain the project configuration.
-##
-## $Id$
-##
-##
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-	emulate sh
-	NULLCMD=:
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
-	set -o posix
-fi
-
-. './build-functions.sh'
-
-setValue PROJECT 'PICellerator'
-
-# Setup Makefile shortcuts
-. ./VMake/Config/makefile-shortcuts.sh
-
-# Do configurations
-. ./VMake/Config/StGermain-config.sh
-. ./VMake/Config/StG_FEM-config.sh
-
-. ./VMake/Config/compiler-config.sh
-. ./VMake/Config/math-config.sh
-. ./VMake/Config/PETSc-config.sh
-. ./VMake/Config/mpi-config.sh
-. ./VMake/Config/xml-config.sh
-. ./VMake/Config/python-config.sh

Modified: long/3D/Gale/trunk/src/PICellerator/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,9 +15,11 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','bin_objects','shared_lib_objects')
+Import('env','bin_objects','libs','shared_lib_objects','static_lib_objects')
 
 local_env=env.Copy()
 
-bin_objects+=[local_env.Program('PICellerator',['main.c',shared_lib_objects])]
+bin_objects+=[local_env.Program('PICellerator',
+                                ['main.c',libs(shared_lib_objects,
+                                               static_lib_objects)])]
 

Modified: long/3D/Gale/trunk/src/PICellerator/src/main.c
===================================================================
--- long/3D/Gale/trunk/src/PICellerator/src/main.c	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/PICellerator/src/main.c	2006-07-05 22:51:54 UTC (rev 3918)
@@ -114,7 +114,7 @@
 	CheckDictionaryKeys(componentDict, errMessage);
 	
 	LiveComponentRegister_Add( context->CF->LCRegister, (Stg_Component*) context );
-	PluginsManager_Load( context->plugins, context, dictionary );
+	PluginsManager_Load( context->plugins, context, dictionary, 0, NULL, NULL );
 		
 	Stg_ComponentFactory_CreateComponents( context->CF );
 	Stg_ComponentFactory_ConstructComponents( context->CF );

Modified: long/3D/Gale/trunk/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -20,4 +20,4 @@
 SConscript('PICellerator/SConscript')
 SConscript('Underworld/SConscript')
 #SConscript('gLucifer/SConscript')
-SConscript('Gale/SConscript')
+#SConscript('Gale/SConscript')

Modified: long/3D/Gale/trunk/src/StGermain/Base/Automation/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Automation/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Automation/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,11 +15,12 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
 header_groups['StGermain/Base/Automation']=["Automation.h",
+                                            "CallGraph.h",
                                             "ComponentRepository.h",
                                             "CompositeVC.h",
                                             "ConditionFunction.h",
@@ -55,6 +56,7 @@
 	VariableCondition_Register.c
 	CompositeVC.c
 	SetVC.c
+        CallGraph.c
 	VariableAllVC.c
 	Stg_Component.c
 	Stg_ComponentMeta.c
@@ -77,5 +79,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainBaseAutomation',
                                              c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/Base/Container/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Container/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Container/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -27,6 +27,7 @@
                                            "Finalise.h",
                                            "HashTable.h",
                                            "HashTableIterator.h",
+                                           "Heap.h",
                                            "IndexMap.h",
                                            "IndexSet.h",
                                            "Init.h",
@@ -35,6 +36,7 @@
                                            "LinkedListNode.h",
                                            "List.h",
                                            "Map.h",
+                                           "MaxHeap.h",
                                            "PtrMap.h",
                                            "PtrSet.h",
                                            "Set.h",
@@ -54,13 +56,15 @@
 	LinkedListNode.c
 	LinkedList.c
 	LinkedListIterator.c
+        Heap.c
 	HashTable.c
 	Set.c
 	PtrSet.c
 	Map.c
+        MaxHeap.c
 	Init.c
 	Finalise.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainBaseContainer',c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/Base/Context/src/AbstractContext.c
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Context/src/AbstractContext.c	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Context/src/AbstractContext.c	2006-07-05 22:51:54 UTC (rev 3918)
@@ -670,7 +670,7 @@
 	
 	Journal_Printf( self->debug, "In: %s\n", __func__ );
 	
-	PluginsManager_Load( self->plugins, self, self->dictionary );
+	PluginsManager_Load( self->plugins, self, self->dictionary, 0, NULL, NULL );
 	KeyCall( self, self->constructExtensionsK, EntryPoint_VoidPtr_CallCast* )( KeyHandle(self,self->constructExtensionsK), self );
 	Journal_ReadFromDictionary( self->dictionary );
 	

Modified: long/3D/Gale/trunk/src/StGermain/Base/Context/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Context/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Context/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,14 +15,15 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DLIB_DIR=\\"'+local_env["lib_dir"]+'\\"')
+local_env.Append(CPPFLAGS=['-DLIB_DIR=\\"'+local_env["lib_dir"]+'\\"'])
 
 header_groups['StGermain/Base/Context']=["AbstractContext.h",
                                          "ContextEntryPoint.h",
                                          "Context.h",
+                                         "DictionaryCheck.h",
                                          "Finalise.h",
                                          "Init.h",
                                          "shortcuts.h",
@@ -31,6 +32,7 @@
 
 c_files=Split("""AbstractContext.c
 ContextEntryPoint.c
+DictionaryCheck.c
 Finalise.c
 Init.c""")
 
@@ -38,4 +40,4 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainBaseContext',c_files)]
-
+StGermain_static_objects+=[local_env.StaticObject(c_files)]

Modified: long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginLoader.c
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginLoader.c	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginLoader.c	2006-07-05 22:51:54 UTC (rev 3918)
@@ -51,6 +51,7 @@
 #include <assert.h>
 #include <string.h>
 
+
 #ifdef NOSHARED
 	#define dlopen( x, y ) (NULL)
 	#define dlsym( x, y ) (NULL)
@@ -77,14 +78,21 @@
 const char* PLUGIN_DEPENDENCY_NAME_KEY = "plugin";
 const char* PLUGIN_DEPENDENCY_VERSION_KEY = "version";
 const char* PLUGIN_DEPENDENCY_URL_KEY = "url";
+
+
 	
-PluginLoader* PluginLoader_NewLocal( Name pluginName, Stg_ObjectList* directories ) {
+PluginLoader* PluginLoader_NewLocal( Name pluginName, Stg_ObjectList* directories, 
+				     int nPlugins, char** pluginNames, StaticPluginEntry* pluginLst )
+{
+#ifndef NOSHARED
 	DLL_Handle			dllPtr;
+#endif
 	PluginLoader_Register_Func*		Register;
 	PluginLoader_GetMetadata_Func*	GetMetadata;
 	PluginLoader_GetName_Func*		GetName;
 	PluginLoader_GetVersion_Func*		GetVersion;
 
+#ifndef NOSHARED
 	char* 				fileName = NULL;
 	char*				fullPathName = NULL;
 	int				fullPathLength = 0;
@@ -97,9 +105,11 @@
 	stream =  Journal_Register( Info_Type, "PluginLoaders" );
 	debug =  Journal_Register( Debug_Type, "PluginLoaders" );
 	error =  Journal_Register( Error_Type, "PluginLoaders" );
+#endif
 
 	assert( pluginName );
 
+#ifndef NOSHARED
 	/* Try the plugin name by itself (allows LD_LIBRARY_PATH) to take precendence */
 	fileName = Memory_Alloc_Array( char, strlen(pluginName) + strlen(PLUGININFO_PLUGIN_SUFFIX) + strlen(MODULE_EXT) + 1, "filename" );
 	sprintf( fileName, "%s%s%s", pluginName, PLUGININFO_PLUGIN_SUFFIX, MODULE_EXT );
@@ -149,6 +159,29 @@
 	GetVersion = (PluginLoader_GetVersion_Func*)PluginLoader_LoadSymbol( dllPtr, pluginName, PLUGININFO_GETVERSION_SUFFIX );
 
 	return PluginLoader_New( pluginName, dllPtr, Register, GetMetadata, GetName, GetVersion );
+#else
+
+	/* STATIC STUFF */
+	{
+		int	entry_i;
+
+		for( entry_i = 0; entry_i < nPlugins; entry_i++ ) {
+			if( !strcmp( pluginNames[entry_i], pluginName ) )
+				break;
+		}
+		if( entry_i == nPlugins ) {
+			fprintf( stderr, "No such plugin." );
+			exit(1);
+		}
+
+		Register = pluginLst[entry_i].reg;
+		GetMetadata = pluginLst[entry_i].gmd;
+		GetName = pluginLst[entry_i].name;
+		GetVersion = pluginLst[entry_i].ver;
+	}
+
+	return PluginLoader_New( pluginName, NULL, Register, GetMetadata, GetName, GetVersion );
+#endif
 }	
 
 PluginLoader* PluginLoader_New(
@@ -256,7 +289,9 @@
 {
 	PluginLoader* self = (PluginLoader*)plugin;
 
+#ifndef NOSHARED
 	dlclose( self->dllPtr );
+#endif
 
 	Stg_Class_Delete( self->_meta );
 

Modified: long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginLoader.h
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginLoader.h	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginLoader.h	2006-07-05 22:51:54 UTC (rev 3918)
@@ -54,7 +54,15 @@
 	extern const char* PLUGIN_DEPENDENCY_NAME_KEY;
 	extern const char* PLUGIN_DEPENDENCY_VERSION_KEY;
 	extern const char* PLUGIN_DEPENDENCY_URL_KEY;
-	
+
+#ifdef NOSHARED
+        typedef struct {
+          PluginLoader_Register_Func*     reg;
+          PluginLoader_GetMetadata_Func*  gmd;
+          PluginLoader_GetName_Func*      name;
+          PluginLoader_GetVersion_Func*   ver;
+        } StaticPluginEntry;
+#endif
 	/* PluginLoaders info */
 	#define __PluginLoader \
 		/* General info */ \
@@ -69,7 +77,8 @@
 		
 	struct PluginLoader { __PluginLoader };
 
-	PluginLoader* PluginLoader_NewLocal( Name pluginName, Stg_ObjectList* directories );
+        PluginLoader* PluginLoader_NewLocal( Name pluginName, Stg_ObjectList* directories,
+                                             int nPlugins, char** pluginNames, StaticPluginEntry* pluginLst );
 
 	/* Create a new PluginLoaders */
 	PluginLoader* PluginLoader_New(

Modified: long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginsManager.c
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginsManager.c	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginsManager.c	2006-07-05 22:51:54 UTC (rev 3918)
@@ -220,7 +220,8 @@
 }
 
 
-void PluginsManager_Load( void* plugins, void* context, void* _dictionary ) {
+void PluginsManager_Load( void* plugins, void* context, void* _dictionary,
+                          int nPlugins, char** pluginNames, StaticPluginEntry* pluginLst ) {
 	PluginsManager*			self = (PluginsManager*)plugins;
 	Dictionary*			dictionary = (Dictionary*)_dictionary;
 	unsigned int			entryCount;
@@ -281,7 +282,7 @@
 		Name		pluginName;
 		pluginName = Dictionary_Entry_Value_AsString( Dictionary_Entry_Value_GetElement( pluginsVal, entry_I ) );
 
-		if ( ! PluginsManager_LoadPlugin( self, pluginName, context ) ) {
+		if ( ! PluginsManager_LoadPlugin( self, pluginName, context, nPlugins, pluginNames, pluginLst ) ) {
 			Journal_Firewall(
 				0,
 				Journal_Register( Info_Type, "Plugins" ),
@@ -302,7 +303,8 @@
 #endif /* ifdef SINGLE_EXE */
 }
 
-Bool PluginsManager_LoadPlugin( void* plugins, Name pluginName, void* _context ) {
+Bool PluginsManager_LoadPlugin( void* plugins, Name pluginName, void* _context,
+                                int nPlugins, char** pluginNames, StaticPluginEntry* pluginLst ) {
 	PluginsManager*	self = (PluginsManager*)plugins;
 	PluginLoader* thePlugin;
 
@@ -325,7 +327,7 @@
 	}
 
 	/* Try local search first */
-	thePlugin = PluginLoader_NewLocal( pluginName, self->directories );
+	thePlugin = PluginLoader_NewLocal( pluginName, self->directories, nPlugins, pluginNames, pluginLst );
 
 	/* remote search? */
 
@@ -362,7 +364,7 @@
 			version = (depVersion == NULL) ? NULL : Dictionary_Entry_Value_AsString( depVersion );
 			url = (depUrl == NULL) ? NULL : Dictionary_Entry_Value_AsString( depUrl );
 
-			if ( ! PluginsManager_LoadPlugin( self, name, _context ) ) {
+			if ( ! PluginsManager_LoadPlugin( self, name, _context, nPlugins, pluginNames, pluginLst ) ) {
 				Journal_Printf( stream, "Dependency %s failed to load\n", name );
 				Stg_Class_Delete( thePlugin );
 				return False;

Modified: long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginsManager.h
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginsManager.h	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/PluginsManager.h	2006-07-05 22:51:54 UTC (rev 3918)
@@ -89,11 +89,13 @@
 	Dictionary_Entry_Value* PluginsManager_GetPluginsList( void* dict );
 	
 	/** Load the specified plugins from the dictionary */ 
-	void PluginsManager_Load( void* plugins, void* _context, void* _dictionary );
+        void PluginsManager_Load( void* plugins, void* _context, void* _dictionary,
+                                  int nPlugins, char** pluginNames, StaticPluginEntry* pluginLst );
 
 	/** Load a plugin */
-	Bool PluginsManager_LoadPlugin( void* plugins, Name pluginName, void* _context );
-	
+        Bool PluginsManager_LoadPlugin( void* plugins, Name pluginName, void* _context,
+                                  int nPlugins, char** pluginNames, StaticPluginEntry* pluginLst );
+
 	/** Add a directory to the list of prefixes it will try if the "dlopen" fails on a plugin. It won't add the same dir
 	    twice. */
 	void PluginsManager_AddDirectory( void* plugins, Name name, char* directory );

Modified: long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Extensibility/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DMODULE_EXT=\\"' + local_env["SHLIBSUFFIX"][1:] + '\\"')
+local_env.Append(CPPFLAGS=['-DMODULE_EXT=\\"' + local_env["SHLIBSUFFIX"][1:] + '\\"'])
 
 header_groups['StGermain/Base/Extensibility']=["ClassHook.h",
                                                "ClassPtrExtensionInfo.h",
@@ -58,5 +58,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainBaseExtensibility',
                                              c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/Base/FlattenXML/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/FlattenXML/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/FlattenXML/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,9 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','bin_objects','shared_lib_objects')
+Import('env','bin_objects','libs','shared_lib_objects','StGermain_static_objects')
 
 local_env=env.Copy()
 
-bin_objects+=[local_env.Program('FlattenXML',['main.c',shared_lib_objects])]
-
+bin_objects+=[local_env.Program('FlattenXML',
+                                ['main.c',libs(shared_lib_objects,
+                                               StGermain_static_objects)])]

Modified: long/3D/Gale/trunk/src/StGermain/Base/Foundation/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Foundation/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/Foundation/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -58,4 +58,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainBaseFoundation',
                                              c_files)]
-
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]

Modified: long/3D/Gale/trunk/src/StGermain/Base/IO/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/IO/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/IO/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"StGermainBaseIO\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"StGermainBaseIO\\"'])
 
 header_groups['StGermain/Base/IO']=["CFile.h",
                                     "CStream.h",
@@ -70,4 +70,4 @@
               """)
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainBaseIO',c_files)]
-
+StGermain_static_objects+=[local_env.StaticObject(c_files)]

Modified: long/3D/Gale/trunk/src/StGermain/Base/ListPlugins/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/ListPlugins/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/ListPlugins/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,9 +15,11 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','bin_objects','shared_lib_objects')
+Import('env','bin_objects','libs','shared_lib_objects','StGermain_static_objects')
 
 local_env=env.Copy()
 
-bin_objects+=[local_env.Program('ListPlugins',['main.c',shared_lib_objects])]
+bin_objects+=[local_env.Program('ListPlugins',
+                                ['main.c',libs(shared_lib_objects,
+                                               StGermain_static_objects)])]
 

Modified: long/3D/Gale/trunk/src/StGermain/Base/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Base/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -27,4 +27,4 @@
               Init.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainBase',c_files)]
-
+StGermain_static_objects+=[local_env.StaticObject(c_files)]

Modified: long/3D/Gale/trunk/src/StGermain/Discretisation/Geometry/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Discretisation/Geometry/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Discretisation/Geometry/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,15 +15,16 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"StGermainDiscretisationGeometry\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"StGermainDiscretisationGeometry\\"'])
 
 header_groups['StGermain/Discretisation/Geometry']=["units.h",
                                                     "types.h",
                                                     "isinf.h",
                                                     "Dimension.h",
+                                                    "Delaunay.h",
                                                     "VectorMath.h",
                                                     "TensorMath.h",
                                                     "TrigMath.h",
@@ -31,6 +32,7 @@
                                                     "Line.h",
                                                     "Plane.h",
                                                     "Edge.h",
+                                                    "QuadEdge.h",
                                                     "RMatrix.h",
                                                     "Topology.h",
                                                     "IJKTopology.h",
@@ -48,6 +50,7 @@
 
 
 c_files=["Dimension.c",
+         "Delaunay.c",
          "VectorMath.c",
          "TensorMath.c",
          "TrigMath.c",
@@ -55,6 +58,7 @@
          "Line.c",
          "Plane.c",
          "Edge.c",
+         "QuadEdge.c",
          "RMatrix.c",
          "Topology.c",
          "IJKTopology.c",
@@ -84,5 +88,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainDiscretisationGeometry',
                                              c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/Discretisation/Mesh/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Discretisation/Mesh/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Discretisation/Mesh/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -35,6 +35,7 @@
                                                 "MeshGeometry.h",
                                                 "MeshLayout.h",
                                                 "MeshClass.h",
+                                                "HMesh.h",
                                                 "Init.h",
                                                 "Finalise.h",
                                                 "Mesh.h"]
@@ -52,6 +53,7 @@
          "MeshGeometry.c",
          "MeshLayout.c",
          "MeshClass.c",
+         "HMesh.c",
          "Init.c",
          "Finalise.c"]
 
@@ -74,5 +76,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainDiscretisationMesh',
                                              c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/Discretisation/Shape/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Discretisation/Shape/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Discretisation/Shape/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,12 +15,14 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"StGermainDiscretisationShape\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"StGermainDiscretisationShape\\"'])
 
-header_groups['StGermain/Discretisation/Shape']=["Box.h",
+header_groups['StGermain/Discretisation/Shape']=["BelowCosinePlane.h",
+                                                 "BelowPlane.h",
+                                                 "Box.h",
                                                  "ConvexHull.h",
                                                  "Cylinder.h",
                                                  "Everywhere.h",
@@ -36,7 +38,9 @@
                                                  "types.h",
                                                  "Union.h"]
 
-c_files=["Box.c",
+c_files=["BelowCosinePlane.c",
+         "BelowPlane.c",
+         "Box.c",
          "ConvexHull.c",
          "Cylinder.c",
          "Everywhere.c",
@@ -50,7 +54,9 @@
          "Superellipsoid.c",
          "Union.c"]
 
-meta_files=Split("""Box.meta
+meta_files=Split("""BelowCosinePlane.meta
+BelowPlane.meta
+Box.meta
 Everywhere.meta
 PythonShape.meta
 Superellipsoid.meta
@@ -66,5 +72,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainDiscretisationShape',
                                              c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Discretisation/Swarm/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -32,7 +32,6 @@
                                                  "OperatorSwarmVariable.h",
                                                  "ParticleCommHandler.h",
                                                  "ParticleLayout.h",
-                                                 "ParticleSize_Register.h",
                                                  "PerCellParticleLayout.h",
                                                  "PlaneParticleLayout.h",
                                                  "Random.h",
@@ -51,6 +50,7 @@
                                                  "TriGaussParticleLayout.h",
                                                  "TriSingleCellLayout.h",
                                                  "types.h",
+                                                 "UnionParticleLayout.h",
                                                  "WithinShapeParticleLayout.h"]
 
 c_files=["CellLayout.c",
@@ -66,7 +66,6 @@
          "OperatorSwarmVariable.c",
          "ParticleCommHandler.c",
          "ParticleLayout.c",
-         "ParticleSize_Register.c",
          "PerCellParticleLayout.c",
          "PlaneParticleLayout.c",
          "Random.c",
@@ -82,6 +81,7 @@
          "SwarmVariable_Register.c",
          "TriGaussParticleLayout.c",
          "TriSingleCellLayout.c",
+         "UnionParticleLayout.c",
          "WithinShapeParticleLayout.c"]
 
 meta_files=Split("""CellLayout.meta
@@ -105,11 +105,13 @@
 SwarmVariable.meta
 TriGaussParticleLayout.meta
 TriSingleCellLayout.meta
+UnionParticleLayout.meta
 WithinShapeParticleLayout.meta""")
 
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainDiscretisationSwarm',
                                              c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/Discretisation/Utils/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Discretisation/Utils/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Discretisation/Utils/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -33,6 +33,7 @@
                                                  "FieldVariable.h",
                                                  "FieldVariable_Register.h",
                                                  "OperatorFieldVariable.h",
+                                                 "Operator.h",
                                                  "MeshCoarsener_Hexa.h",
                                                  "DiscretisationContext.h",
                                                  "LinearRegression.h",
@@ -62,6 +63,7 @@
          "FieldVariable.c",
          "FieldVariable_Register.c",
          "OperatorFieldVariable.c",
+         "Operator.c",
          "MeshCoarsener_Hexa.c",
          "DiscretisationContext.c",
          "LinearRegression.c",
@@ -103,5 +105,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainDiscretisationUtils',
                                              c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/Discretisation/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Discretisation/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/Discretisation/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -28,4 +28,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainDiscretisation',
                                              c_files)]
-
+StGermain_static_objects+=[local_env.StaticObject(
+                                             c_files)]

Modified: long/3D/Gale/trunk/src/StGermain/FD/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/FD/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/FD/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StGermain_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -35,5 +35,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('StGermainFD',c_files)]
-    
+StGermain_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StGermain/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,6 +15,9 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
+StGermain_static_objects=[]
+Export('StGermain_static_objects')
+
 SConscript('Base/SConscript')
 SConscript('Discretisation/SConscript')
 SConscript('FD/SConscript')

Modified: long/3D/Gale/trunk/src/StGermain/libStGermain/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/libStGermain/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/libStGermain/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,8 +15,8 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-libStGermain_objects=[]
-Export('libStGermain_objects')
+libStGermain_shared_objects=[]
+Export('libStGermain_shared_objects')
 
 SConscript('src/SConscript')
 SConscript('dynamic/SConscript')

Modified: long/3D/Gale/trunk/src/StGermain/libStGermain/dynamic/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/libStGermain/dynamic/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/libStGermain/dynamic/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,11 +15,13 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','libStGermain_objects')
+Import('env','shared_lib_objects','static_lib_objects',
+       'StGermain_static_objects','libStGermain_shared_objects')
 
 local_env=env.Copy()
 
-c_files=libStGermain_objects+["dummy.c"]
+c_shared_files=libStGermain_shared_objects+["dummy.c"]
+shared_lib_objects+=[local_env.SharedLibrary('StGermain',c_shared_files)]
 
-shared_lib_objects+=[local_env.SharedLibrary('StGermain',c_files)]
-
+static_lib_objects=[local_env.StaticLibrary('StGermain',[StGermain_static_objects+local_env.StaticObject("dummy.c")])]+static_lib_objects
+Export('static_lib_objects')

Modified: long/3D/Gale/trunk/src/StGermain/libStGermain/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StGermain/libStGermain/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StGermain/libStGermain/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,8 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','libStGermain_objects','header_groups')
+Import('env','libStGermain_shared_objects','StGermain_static_objects',
+       'header_groups')
 
 local_env=env.Copy()
 
@@ -23,5 +24,6 @@
                             "Finalise.h",
                             "Init.h"]
 
-libStGermain_objects+=[local_env.SharedObject(["Finalise.c","Init.c"])]
+libStGermain_shared_objects+=[local_env.SharedObject(["Finalise.c","Init.c"])]
+StGermain_static_objects+=[local_env.StaticObject(["Finalise.c","Init.c"])]
 

Modified: long/3D/Gale/trunk/src/StgFEM/Assembly/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/Assembly/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/Assembly/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 local_env.Append(CPPPATH=["#/build/include/StG_FEM"])
@@ -47,5 +47,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMAssembly',c_files)]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]
 

Modified: long/3D/Gale/trunk/src/StgFEM/Discretisation/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/Discretisation/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/Discretisation/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -73,5 +73,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMDiscretisation',c_files)]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]
 

Modified: long/3D/Gale/trunk/src/StgFEM/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -18,9 +18,12 @@
 # For now, comment out Apps since it only has tests
 #SConscript('Apps/SConscript')
 
+StgFEM_static_objects=[]
+Export('StgFEM_static_objects')
+
 SConscript('Assembly/SConscript')
 SConscript('Discretisation/SConscript')
 SConscript('SLE/SConscript')
+SConscript('plugins/SConscript')
 SConscript('libStG_FEM/SConscript')
-SConscript('plugins/SConscript')
 SConscript('src/SConscript')

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/Dummy/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/Dummy/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/Dummy/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects')
+Import('env','shared_lib_objects','StgFEM_static_objects')
 
 local_env=env.Copy()
 local_env.Append(CPPPATH=["#/build/include/StG_FEM"])
@@ -28,3 +28,4 @@
 Vector.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMSLELinearAlgebraDummy',c_files)]
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/PETSc/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/PETSc/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/PETSc/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,11 +15,11 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects')
+Import('env','shared_lib_objects','StgFEM_static_objects')
 
 local_env=env.Copy()
 local_env.Append(CPPPATH=["#build/include/StG_FEM"])
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"StG_FEM_SLE_LinearAlgebraPETSc\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"StG_FEM_SLE_LinearAlgebraPETSc\\"'])
 
 c_files=Split("""Finalise.c
 Init.c
@@ -30,3 +30,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMSLELinearAlgebraPETSc',
                                              c_files)]
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]
+    

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/LinearAlgebra/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -31,3 +31,4 @@
 c_files=Split("""dummy.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMSLELinearAlgebra',c_files)]
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/MultiGrid/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/MultiGrid/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/MultiGrid/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -36,3 +36,4 @@
 _MultiGrid.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('SLEMultiGrid',c_files)]
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/AdvectionDiffusion/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/AdvectionDiffusion/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/AdvectionDiffusion/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -51,5 +51,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMProvidedSystemsAdvectionDiffusion',c_files)]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/Energy/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/Energy/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/Energy/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -38,5 +38,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMSLEProvidedSystemsEnergy',
                                              c_files)]
-    
+StgFEM_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/StokesFlow/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/StokesFlow/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/StokesFlow/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -46,5 +46,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMProvidedSystemsStokesFlow',
                                              c_files)]
-    
+StgFEM_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/ProvidedSystems/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -28,4 +28,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('libStgFEMSLEProvidedSystems',
                                              c_files)]
-
+StgFEM_static_objects+=[local_env.StaticObject(
+                                             c_files)]

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/SystemSetup/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/SystemSetup/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/SystemSetup/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,11 +15,11 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DLIB_DIR=\\\""+local_env["lib_dir"]+"\\\"")
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_SLE_SystemSetup\\\"")
+local_env.Append(CPPFLAGS=["-DLIB_DIR=\\\""+local_env["lib_dir"]+"\\\""])
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_SLE_SystemSetup\\\""])
 
 
 header_groups['StgFEM/SLE/SystemSetup']=Split("""Context.h
@@ -63,5 +63,6 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMSLESystemSetup',
                                              c_files)]
-    
+StgFEM_static_objects+=[local_env.StaticObject(
+                                             c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/SLE/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/SLE/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/SLE/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -34,5 +34,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEMSLE',c_files)]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/libStG_FEM/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/libStG_FEM/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/libStG_FEM/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,8 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','static_lib_objects',
+       'StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -27,4 +28,5 @@
 Init.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('StgFEM',c_files)]
-
+static_lib_objects=[local_env.StaticLibrary('StgFEM',[c_files]+StgFEM_static_objects)] + static_lib_objects
+Export('static_lib_objects')

Added: long/3D/Gale/trunk/src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -0,0 +1,28 @@
+# Copyright 2006 California Institute of Technology
+
+# This program 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.1 of the
+# License, or (at your option) any later version.
+
+# This program 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
+# General Public License for more details.
+
+# You should have received a copy of the GNU Lesser General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA
+
+Import('env','shared_lib_objects','StgFEM_static_objects')
+
+local_env=env.Copy()
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_CompareFeVariableAgainstReferenceSolution\\\""])
+
+c_files=Split("""CompareFeVariableAgainstReferenceSolution.c""")
+
+shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_CompareFeVariableAgainstReferenceSolutionmodule',
+                                             c_files,SHLIBPREFIX='')]
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]
+

Deleted: long/3D/Gale/trunk/src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution/makefile
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution/makefile	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/CompareFeVariableAgainstReferenceSolution/makefile	2006-07-05 22:51:54 UTC (rev 3918)
@@ -1,59 +0,0 @@
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-##
-## Copyright (C), 2003-2006, Victorian Partnership for Advanced Computing (VPAC) Ltd, 110 Victoria Street,
-##	Melbourne, 3053, Australia.
-##
-## Primary Contributing Organisations:
-##	Victorian Partnership for Advanced Computing Ltd, Computational Software Development - http://csd.vpac.org
-##	Australian Computational Earth Systems Simulator - http://www.access.edu.au
-##	Monash Cluster Computing - http://www.mcc.monash.edu.au
-##	Computational Infrastructure for Geodynamics - http://www.geodynamics.org
-##
-## Contributors:
-##	Patrick D. Sunter, Software Engineer, VPAC. (pds at vpac.org)
-##	Robert Turnbull, Research Assistant, Monash University. (robert.turnbull at sci.monash.edu.au)
-##	Stevan M. Quenette, Senior Software Engineer, VPAC. (steve at vpac.org)
-##	David May, PhD Student, Monash University (david.may at sci.monash.edu.au)
-##	Louis Moresi, Associate Professor, Monash University. (louis.moresi at sci.monash.edu.au)
-##	Luke J. Hodkinson, Computational Engineer, VPAC. (lhodkins at vpac.org)
-##	Alan H. Lo, Computational Engineer, VPAC. (alan at vpac.org)
-##	Raquibul Hassan, Computational Engineer, VPAC. (raq at vpac.org)
-##	Julian Giordani, Research Assistant, Monash University. (julian.giordani at sci.monash.edu.au)
-##	Vincent Lemiale, Postdoctoral Fellow, Monash University. (vincent.lemiale at sci.monash.edu.au)
-##
-##  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.1 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., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-##
-## $Id: makefile 535 2006-04-11 13:07:34Z PatrickSunter $
-##
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-SHELL := $(shell which bash)
-PROJ_ROOT := $(shell until test -r ./Makefile.system ; do cd .. ; done ; echo `pwd`)
-
-include ${PROJ_ROOT}/Makefile.system
-
-modName := $(shell basename `pwd` )
-modName := $(shell echo ${modName} | cut -c 1 | tr '[:lower:]' '[:upper:]' )$(shell echo ${modName} | cut -c 2- ) 
-
-mod = ${PROJECT}_${modName}
-includes = ${PROJECT}/${modName}
-
-SRCS = $(wildcard *.c)
-HDRS = $(wildcard *.h)
-
-packages = STGERMAIN PETSC MPI XML
-EXTERNAL_LIBS = -lStG_FEM
-
-include ${PROJ_ROOT}/Makefile.vmake

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/Document/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/Document/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/Document/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,14 +15,14 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects')
+Import('env','shared_lib_objects','StgFEM_static_objects')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_Document\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_Document\\\""])
 
 c_files=Split("""Document.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_Documentmodule',
                                              c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/LevelSetPlugin/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/LevelSetPlugin/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/LevelSetPlugin/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -37,5 +37,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_LevelSetPluginmodule',c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]
 

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/MultiGrid/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/MultiGrid/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/MultiGrid/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_MultiGrid\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_MultiGrid\\\""])
 
 header_groups['StgFEM/plugins/MultiGrid']=Split("""Context.h
 MultiGrid.h""")
@@ -27,5 +27,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_MultiGridmodule',
                                              c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]
 

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/Output/CPUTime/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/Output/CPUTime/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/Output/CPUTime/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_CPUTime\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_CPUTime\\\""])
 
 header_groups['StgFEM/plugins/Output/CPUTime']=Split("""CPUTime.h""")
 
@@ -26,5 +26,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_CPUTimemodule',
                                              c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]
 

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/Output/FrequentOutput/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/Output/FrequentOutput/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/Output/FrequentOutput/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_FrequentOutput\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_FrequentOutput\\\""])
 
 header_groups['StgFEM/plugins/Output/FrequentOutput']=Split("""FrequentOutput.h""")
 
@@ -26,5 +26,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_FrequentOutputmodule',
                                              c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/Output/PeakMemory/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/Output/PeakMemory/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/Output/PeakMemory/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_PeakMemory\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_PeakMemory\\\""])
 
 header_groups['StgFEM/plugins/Output/PeakMemory']=Split("""PeakMemory.h""")
 
@@ -26,5 +26,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_PeakMemorymodule',
                                              c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_PrintFeVariableDiscreteValues\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_PrintFeVariableDiscreteValues\\\""])
 
 header_groups['StgFEM/plugins/Output/PrintFeVariableDiscreteValues']=Split("""Plugin.h""")
 
@@ -26,5 +26,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_PrintFeVariableDiscreteValuesmodule',
                                              c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues_2dBox/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues_2dBox/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/Output/PrintFeVariableDiscreteValues_2dBox/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_PrintFeVariableDiscreteValues_2dBox\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_PrintFeVariableDiscreteValues_2dBox\\\""])
 
 header_groups['StgFEM/plugins/Output/PrintFeVariableDiscreteValues_2dBox']=Split("""Plugin.h""")
 
@@ -26,5 +26,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_PrintFeVariableDiscreteValues_2dBoxmodule',
                                              c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,6 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
+SConscript('CompareFeVariableAgainstReferenceSolution/SConscript')
 SConscript('Document/SConscript')
 SConscript('LevelSetPlugin/SConscript')
 SConscript('MultiGrid/SConscript')

Modified: long/3D/Gale/trunk/src/StgFEM/plugins/StandardConditionFunctions/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/StandardConditionFunctions/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/StandardConditionFunctions/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','StgFEM_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=" -DCURR_MODULE_NAME=\\\"StG_FEM_StandardConditionFunctions\\\"")
+local_env.Append(CPPFLAGS=["-DCURR_MODULE_NAME=\\\"StG_FEM_StandardConditionFunctions\\\""])
 
 header_groups['StgFEM/plugins/StandardConditionFunctions']=Split("""StandardConditionFunctions.h""")
 
@@ -26,5 +26,5 @@
 
 shared_lib_objects+=[local_env.SharedLibrary('StG_FEM_StandardConditionFunctionsmodule',
                                              c_files,SHLIBPREFIX='')]
-    
+StgFEM_static_objects+=[local_env.StaticObject(c_files)]    
 

Deleted: long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solA/makefile
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solA/makefile	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solA/makefile	2006-07-05 22:51:54 UTC (rev 3918)
@@ -1,59 +0,0 @@
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-##
-## Copyright (C), 2003-2006, Victorian Partnership for Advanced Computing (VPAC) Ltd, 110 Victoria Street,
-##	Melbourne, 3053, Australia.
-##
-## Primary Contributing Organisations:
-##	Victorian Partnership for Advanced Computing Ltd, Computational Software Development - http://csd.vpac.org
-##	Australian Computational Earth Systems Simulator - http://www.access.edu.au
-##	Monash Cluster Computing - http://www.mcc.monash.edu.au
-##	Computational Infrastructure for Geodynamics - http://www.geodynamics.org
-##
-## Contributors:
-##	Patrick D. Sunter, Software Engineer, VPAC. (pds at vpac.org)
-##	Robert Turnbull, Research Assistant, Monash University. (robert.turnbull at sci.monash.edu.au)
-##	Stevan M. Quenette, Senior Software Engineer, VPAC. (steve at vpac.org)
-##	David May, PhD Student, Monash University (david.may at sci.monash.edu.au)
-##	Louis Moresi, Associate Professor, Monash University. (louis.moresi at sci.monash.edu.au)
-##	Luke J. Hodkinson, Computational Engineer, VPAC. (lhodkins at vpac.org)
-##	Alan H. Lo, Computational Engineer, VPAC. (alan at vpac.org)
-##	Raquibul Hassan, Computational Engineer, VPAC. (raq at vpac.org)
-##	Julian Giordani, Research Assistant, Monash University. (julian.giordani at sci.monash.edu.au)
-##	Vincent Lemiale, Postdoctoral Fellow, Monash University. (vincent.lemiale at sci.monash.edu.au)
-##
-##  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.1 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., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-##
-## $Id: makefile 535 2006-04-11 13:07:34Z PatrickSunter $
-##
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-SHELL := $(shell which bash)
-PROJ_ROOT := $(shell until test -r ./Makefile.system ; do cd .. ; done ; echo `pwd`)
-
-include ${PROJ_ROOT}/Makefile.system
-
-modName := $(shell basename `pwd` )
-modName := $(shell echo ${modName} | cut -c 1 | tr '[:lower:]' '[:upper:]' )$(shell echo ${modName} | cut -c 2- ) 
-
-mod = ${modName}
-includes = ${PROJECT}/${modName}
-
-SRCS = $(wildcard *.c)
-HDRS = $(wildcard *.h)
-
-packages = STGERMAIN PETSC MPI XML
-EXTERNAL_LIBS = -lStG_FEM
-
-include ${PROJ_ROOT}/Makefile.vmake

Deleted: long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solB/makefile
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solB/makefile	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solB/makefile	2006-07-05 22:51:54 UTC (rev 3918)
@@ -1,59 +0,0 @@
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-##
-## Copyright (C), 2003-2006, Victorian Partnership for Advanced Computing (VPAC) Ltd, 110 Victoria Street,
-##	Melbourne, 3053, Australia.
-##
-## Primary Contributing Organisations:
-##	Victorian Partnership for Advanced Computing Ltd, Computational Software Development - http://csd.vpac.org
-##	Australian Computational Earth Systems Simulator - http://www.access.edu.au
-##	Monash Cluster Computing - http://www.mcc.monash.edu.au
-##	Computational Infrastructure for Geodynamics - http://www.geodynamics.org
-##
-## Contributors:
-##	Patrick D. Sunter, Software Engineer, VPAC. (pds at vpac.org)
-##	Robert Turnbull, Research Assistant, Monash University. (robert.turnbull at sci.monash.edu.au)
-##	Stevan M. Quenette, Senior Software Engineer, VPAC. (steve at vpac.org)
-##	David May, PhD Student, Monash University (david.may at sci.monash.edu.au)
-##	Louis Moresi, Associate Professor, Monash University. (louis.moresi at sci.monash.edu.au)
-##	Luke J. Hodkinson, Computational Engineer, VPAC. (lhodkins at vpac.org)
-##	Alan H. Lo, Computational Engineer, VPAC. (alan at vpac.org)
-##	Raquibul Hassan, Computational Engineer, VPAC. (raq at vpac.org)
-##	Julian Giordani, Research Assistant, Monash University. (julian.giordani at sci.monash.edu.au)
-##	Vincent Lemiale, Postdoctoral Fellow, Monash University. (vincent.lemiale at sci.monash.edu.au)
-##
-##  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.1 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., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-##
-## $Id: makefile 535 2006-04-11 13:07:34Z PatrickSunter $
-##
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-SHELL := $(shell which bash)
-PROJ_ROOT := $(shell until test -r ./Makefile.system ; do cd .. ; done ; echo `pwd`)
-
-include ${PROJ_ROOT}/Makefile.system
-
-modName := $(shell basename `pwd` )
-modName := $(shell echo ${modName} | cut -c 1 | tr '[:lower:]' '[:upper:]' )$(shell echo ${modName} | cut -c 2- ) 
-
-mod = ${modName}
-includes = ${PROJECT}/${modName}
-
-SRCS = $(wildcard *.c)
-HDRS = $(wildcard *.h)
-
-packages = STGERMAIN PETSC MPI XML
-EXTERNAL_LIBS = -lStG_FEM
-
-include ${PROJ_ROOT}/Makefile.vmake

Deleted: long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solD/makefile
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solD/makefile	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solD/makefile	2006-07-05 22:51:54 UTC (rev 3918)
@@ -1,59 +0,0 @@
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-##
-## Copyright (C), 2003-2006, Victorian Partnership for Advanced Computing (VPAC) Ltd, 110 Victoria Street,
-##	Melbourne, 3053, Australia.
-##
-## Primary Contributing Organisations:
-##	Victorian Partnership for Advanced Computing Ltd, Computational Software Development - http://csd.vpac.org
-##	Australian Computational Earth Systems Simulator - http://www.access.edu.au
-##	Monash Cluster Computing - http://www.mcc.monash.edu.au
-##	Computational Infrastructure for Geodynamics - http://www.geodynamics.org
-##
-## Contributors:
-##	Patrick D. Sunter, Software Engineer, VPAC. (pds at vpac.org)
-##	Robert Turnbull, Research Assistant, Monash University. (robert.turnbull at sci.monash.edu.au)
-##	Stevan M. Quenette, Senior Software Engineer, VPAC. (steve at vpac.org)
-##	David May, PhD Student, Monash University (david.may at sci.monash.edu.au)
-##	Louis Moresi, Associate Professor, Monash University. (louis.moresi at sci.monash.edu.au)
-##	Luke J. Hodkinson, Computational Engineer, VPAC. (lhodkins at vpac.org)
-##	Alan H. Lo, Computational Engineer, VPAC. (alan at vpac.org)
-##	Raquibul Hassan, Computational Engineer, VPAC. (raq at vpac.org)
-##	Julian Giordani, Research Assistant, Monash University. (julian.giordani at sci.monash.edu.au)
-##	Vincent Lemiale, Postdoctoral Fellow, Monash University. (vincent.lemiale at sci.monash.edu.au)
-##
-##  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.1 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., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-##
-## $Id: makefile 535 2006-04-11 13:07:34Z PatrickSunter $
-##
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-SHELL := $(shell which bash)
-PROJ_ROOT := $(shell until test -r ./Makefile.system ; do cd .. ; done ; echo `pwd`)
-
-include ${PROJ_ROOT}/Makefile.system
-
-modName := $(shell basename `pwd` )
-modName := $(shell echo ${modName} | cut -c 1 | tr '[:lower:]' '[:upper:]' )$(shell echo ${modName} | cut -c 2- ) 
-
-mod = ${modName}
-includes = ${PROJECT}/${modName}
-
-SRCS = $(wildcard *.c)
-HDRS = $(wildcard *.h)
-
-packages = STGERMAIN PETSC MPI XML
-EXTERNAL_LIBS = -lStG_FEM
-
-include ${PROJ_ROOT}/Makefile.vmake

Deleted: long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solKx/makefile
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solKx/makefile	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/plugins/VelicAnalyticSolutions/Velic_solKx/makefile	2006-07-05 22:51:54 UTC (rev 3918)
@@ -1,59 +0,0 @@
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-##
-## Copyright (C), 2003-2006, Victorian Partnership for Advanced Computing (VPAC) Ltd, 110 Victoria Street,
-##	Melbourne, 3053, Australia.
-##
-## Primary Contributing Organisations:
-##	Victorian Partnership for Advanced Computing Ltd, Computational Software Development - http://csd.vpac.org
-##	Australian Computational Earth Systems Simulator - http://www.access.edu.au
-##	Monash Cluster Computing - http://www.mcc.monash.edu.au
-##	Computational Infrastructure for Geodynamics - http://www.geodynamics.org
-##
-## Contributors:
-##	Patrick D. Sunter, Software Engineer, VPAC. (pds at vpac.org)
-##	Robert Turnbull, Research Assistant, Monash University. (robert.turnbull at sci.monash.edu.au)
-##	Stevan M. Quenette, Senior Software Engineer, VPAC. (steve at vpac.org)
-##	David May, PhD Student, Monash University (david.may at sci.monash.edu.au)
-##	Louis Moresi, Associate Professor, Monash University. (louis.moresi at sci.monash.edu.au)
-##	Luke J. Hodkinson, Computational Engineer, VPAC. (lhodkins at vpac.org)
-##	Alan H. Lo, Computational Engineer, VPAC. (alan at vpac.org)
-##	Raquibul Hassan, Computational Engineer, VPAC. (raq at vpac.org)
-##	Julian Giordani, Research Assistant, Monash University. (julian.giordani at sci.monash.edu.au)
-##	Vincent Lemiale, Postdoctoral Fellow, Monash University. (vincent.lemiale at sci.monash.edu.au)
-##
-##  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.1 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., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-##
-## $Id: makefile 535 2006-04-11 13:07:34Z PatrickSunter $
-##
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-SHELL := $(shell which bash)
-PROJ_ROOT := $(shell until test -r ./Makefile.system ; do cd .. ; done ; echo `pwd`)
-
-include ${PROJ_ROOT}/Makefile.system
-
-modName := $(shell basename `pwd` )
-modName := $(shell echo ${modName} | cut -c 1 | tr '[:lower:]' '[:upper:]' )$(shell echo ${modName} | cut -c 2- ) 
-
-mod = ${modName}
-includes = ${PROJECT}/${modName}
-
-SRCS = $(wildcard *.c)
-HDRS = $(wildcard *.h)
-
-packages = STGERMAIN PETSC MPI XML
-EXTERNAL_LIBS = -lStG_FEM
-
-include ${PROJ_ROOT}/Makefile.vmake

Modified: long/3D/Gale/trunk/src/StgFEM/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,9 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','bin_objects','shared_lib_objects')
+Import('env','bin_objects','libs','shared_lib_objects','static_lib_objects')
 
 local_env=env.Copy()
 
-bin_objects+=[local_env.Program('StgFEM',['main.c',shared_lib_objects])]
+bin_objects+=[local_env.Program('StgFEM',['main.c',libs(shared_lib_objects,
+                                                        static_lib_objects)])]
 

Modified: long/3D/Gale/trunk/src/StgFEM/src/main.c
===================================================================
--- long/3D/Gale/trunk/src/StgFEM/src/main.c	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/StgFEM/src/main.c	2006-07-05 22:51:54 UTC (rev 3918)
@@ -121,7 +121,7 @@
 	CheckDictionaryKeys(componentDict, errMessage);
 	
 	LiveComponentRegister_Add( context->CF->LCRegister, (Stg_Component*) context );
-	PluginsManager_Load( context->plugins, context, dictionary );
+	PluginsManager_Load( context->plugins, context, dictionary, 0, NULL, NULL );
 
 	Stg_ComponentFactory_CreateComponents( context->CF );
 	Stg_ComponentFactory_ConstructComponents( context->CF );

Deleted: long/3D/Gale/trunk/src/Underworld/InputFiles/tests/makefile
===================================================================
--- long/3D/Gale/trunk/src/Underworld/InputFiles/tests/makefile	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/InputFiles/tests/makefile	2006-07-05 22:51:54 UTC (rev 3918)
@@ -1,21 +0,0 @@
-
-#Finds the Absolute path to the Project Root directory
-SHELL := /bin/bash
-PROJ_ROOT := $(shell until test -r ./Makefile.system ; do cd .. ; done ; echo `pwd`)
-include ${PROJ_ROOT}/Makefile.system
-
-checks = \
-	testExtensionDP.0of1.sh \
-	testExtensionMC.0of1.sh \
-	testRayleighTaylor2D.0of1.sh \
-	testRayleighTaylor2D.0of2.sh \
-	testThermoChemBenchmark.0of1.sh
-
-ifeq (${SYSTEM_64},0)
-	checks += testRayleighTaylor2D-checkpoint.0of1.sh
-endif
-
-#subdirs := 
-
-include ${PROJ_ROOT}/Makefile.vmake
-

Modified: long/3D/Gale/trunk/src/Underworld/Rheology/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/Rheology/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/Rheology/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -104,5 +104,5 @@
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('UnderworldRheology',c_files)]
-    
+Underworld_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/Underworld/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,6 +15,9 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
+Underworld_static_objects=[]
+Export('Underworld_static_objects')
+
 SConscript('Utils/SConscript')
 SConscript('plugins/SConscript')
 SConscript('Rheology/SConscript')

Modified: long/3D/Gale/trunk/src/Underworld/Utils/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/Utils/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/Utils/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -24,23 +24,29 @@
 Init.h
 PressureTemperatureOutput.h
 RadiogenicHeatingTerm.h
+StressField.h
 types.h
-Utils.h""")
+Utils.h
+ViscosityField.h""")
 
 
 c_files=Split("""Context.c
 Finalise.c
 Init.c
 PressureTemperatureOutput.c
-RadiogenicHeatingTerm.c""")
+RadiogenicHeatingTerm.c
+StressField.c
+ViscosityField.c""")
 
 
 meta_files=Split("""Context.meta
 PressureTemperatureOutput.meta
-RadiogenicHeatingTerm.meta""")
+RadiogenicHeatingTerm.meta
+StressField.meta
+ViscosityField.meta""")
 
 c_files+=[local_env.Meta(meta_files)]
 
 shared_lib_objects+=[local_env.SharedLibrary('UnderworldUtils',c_files)]
-    
+Underworld_static_objects+=[local_env.StaticObject(c_files)]    
 

Modified: long/3D/Gale/trunk/src/Underworld/libUnderworld/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/libUnderworld/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/libUnderworld/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,8 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','static_lib_objects',
+       'Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -28,5 +29,6 @@
 Init.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld',c_files)]
-    
+static_lib_objects=[local_env.StaticLibrary('Underworld',c_files+Underworld_static_objects)]+static_lib_objects
+Export('static_lib_objects')
 

Modified: long/3D/Gale/trunk/src/Underworld/plugins/EulerDeform/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/EulerDeform/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/EulerDeform/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,7 +15,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
 
@@ -27,5 +27,10 @@
 c_files=Split("""EulerDeform.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_EulerDeformmodule',c_files,SHLIBPREFIX='')]
-    
+Underworld_static_objects+=local_env.StaticObject(c_files)
 
+# For some reason, I have to have this export.  Otherwise, none of the
+# plugins get added to the list of library objects.  I think this is a
+# bug in SCons
+Export('Underworld_static_objects')
+

Modified: long/3D/Gale/trunk/src/Underworld/plugins/IncompressibleExtensionBC/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/IncompressibleExtensionBC/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/IncompressibleExtensionBC/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,12 +15,12 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects')
+Import('env','shared_lib_objects','Underworld_static_objects')
 
 local_env=env.Copy()
 
 c_files=Split("""IncompressibleExtensionBC.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_IncompressibleExtensionBCmodule',c_files,SHLIBPREFIX='')]
-    
+Underworld_static_objects+=local_env.StaticObject(c_files)
 

Modified: long/3D/Gale/trunk/src/Underworld/plugins/MaterialThermalDiffusivity/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/MaterialThermalDiffusivity/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/MaterialThermalDiffusivity/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,13 +15,12 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects')
+Import('env','shared_lib_objects','Underworld_static_objects')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"Underworld_MaterialThermalDiffusivity\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"Underworld_MaterialThermalDiffusivity\\"'])
 
 c_files=Split("""MaterialThermalDiffusivity.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_MaterialThermalDiffusivitymodule',c_files,SHLIBPREFIX='')]
-    
-
+Underworld_static_objects+=local_env.StaticObject(c_files)

Modified: long/3D/Gale/trunk/src/Underworld/plugins/MovingMesh/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/MovingMesh/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/MovingMesh/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"Underworld_MovingMesh\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"Underworld_MovingMesh\\"'])
 
 header_groups['Underworld/plugins/MovingMesh']=Split("""MovingMesh.h""")
 
@@ -26,5 +26,5 @@
 c_files=Split("""MovingMesh.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_MovingMeshmodule',c_files,SHLIBPREFIX='')]
-    
+Underworld_static_objects+=local_env.StaticObject(c_files)    
 

Modified: long/3D/Gale/trunk/src/Underworld/plugins/MovingMeshEnergyCorrection/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/MovingMeshEnergyCorrection/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/MovingMeshEnergyCorrection/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,13 +15,13 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects')
+Import('env','shared_lib_objects','Underworld_static_objects')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"Underworld_MovingMeshEnergyCorrection\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"Underworld_MovingMeshEnergyCorrection\\"'])
 
 c_files=Split("""MovingMeshEnergyCorrection.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_MovingMeshEnergyCorrectionmodule',c_files,SHLIBPREFIX='')]
-    
+Underworld_static_objects+=local_env.StaticObject(c_files)    
 

Modified: long/3D/Gale/trunk/src/Underworld/plugins/Output/BoundaryLayers/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/Output/BoundaryLayers/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/Output/BoundaryLayers/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"Underworld_BoundaryLayers\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"Underworld_BoundaryLayers\\"'])
 
 header_groups['Underworld/plugins/Output/BoundaryLayers']=Split("""BoundaryLayers.h""")
 
@@ -26,5 +26,5 @@
 c_files=Split("""BoundaryLayers.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_BoundaryLayersmodule',c_files,SHLIBPREFIX='')]
-    
+Underworld_static_objects+=local_env.StaticObject(c_files)    
 

Modified: long/3D/Gale/trunk/src/Underworld/plugins/Output/Nusselt/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/Output/Nusselt/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/Output/Nusselt/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"Underworld_Nusselt\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"Underworld_Nusselt\\"'])
 
 header_groups['Underworld/plugins/Output/Nusselt']=Split("""Nusselt.h""")
 
@@ -26,5 +26,5 @@
 c_files=Split("""Nusselt.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_Nusseltmodule',c_files,SHLIBPREFIX='')]
-    
+Underworld_static_objects+=local_env.StaticObject(c_files)    
 

Modified: long/3D/Gale/trunk/src/Underworld/plugins/Output/Vrms/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/Output/Vrms/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/Output/Vrms/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,10 +15,10 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
-local_env.Append(CPPFLAGS=' -DCURR_MODULE_NAME=\\"Underworld_Vrms\\"')
+local_env.Append(CPPFLAGS=['-DCURR_MODULE_NAME=\\"Underworld_Vrms\\"'])
 
 header_groups['Underworld/plugins/Output/Vrms']=Split("""Vrms.h""")
 
@@ -26,5 +26,5 @@
 c_files=Split("""Vrms.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_Vrmsmodule',c_files,SHLIBPREFIX='')]
-    
+Underworld_static_objects+=local_env.StaticObject(c_files)    
 

Modified: long/3D/Gale/trunk/src/Underworld/plugins/VariableConditions/ShapeTemperatureIC/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/plugins/VariableConditions/ShapeTemperatureIC/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/plugins/VariableConditions/ShapeTemperatureIC/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,12 +15,12 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','shared_lib_objects','header_groups')
+Import('env','shared_lib_objects','Underworld_static_objects','header_groups')
 
 local_env=env.Copy()
 
 c_files=Split("""ShapeTemperatureIC.c""")
 
 shared_lib_objects+=[local_env.SharedLibrary('Underworld_ShapeTemperatureICmodule',c_files,SHLIBPREFIX='')]
-    
+Underworld_static_objects+=local_env.StaticObject(c_files)    
 

Modified: long/3D/Gale/trunk/src/Underworld/src/SConscript
===================================================================
--- long/3D/Gale/trunk/src/Underworld/src/SConscript	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/src/SConscript	2006-07-05 22:51:54 UTC (rev 3918)
@@ -15,9 +15,11 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA
 
-Import('env','bin_objects','shared_lib_objects')
+Import('env','bin_objects','libs','shared_lib_objects','static_lib_objects')
 
 local_env=env.Copy()
 
-bin_objects+=[local_env.Program('Underworld',['main.c',shared_lib_objects])]
+bin_objects+=[local_env.Program('Underworld',
+                                ['main.c',libs(shared_lib_objects,
+                                               static_lib_objects)])]
 

Modified: long/3D/Gale/trunk/src/Underworld/src/main.c
===================================================================
--- long/3D/Gale/trunk/src/Underworld/src/main.c	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/Underworld/src/main.c	2006-07-05 22:51:54 UTC (rev 3918)
@@ -61,7 +61,24 @@
 #include <stdlib.h>
 #include <string.h>
 #include <assert.h>
+/* BEGIN STATIC PLUGINS */
+Index StG_FEM_FrequentOutput_Register( PluginsManager* pluginsManager );
+Index StG_FEM_StandardConditionFunctions_Register( PluginsManager* pluginsManager );
+Index StG_FEM_CPUTime_Register( PluginsManager* pluginsManager );
+Index _Underworld_EulerDeform_Register( PluginsManager* pluginsManager );
 
+int			nPlugins = 4;
+char*			pluginNames[] = {"StG_FEM_FrequentOutput", 
+					 "StG_FEM_StandardConditionFunctions", 
+					 "StG_FEM_CPUTime", 
+					 "Underworld_EulerDeform"};
+StaticPluginEntry	pluginLst[] = {{StG_FEM_FrequentOutput_Register, NULL, NULL, NULL}, 
+				       {StG_FEM_StandardConditionFunctions_Register, NULL, NULL, NULL}, 
+				       {StG_FEM_CPUTime_Register, NULL, NULL, NULL}, 
+				       {_Underworld_EulerDeform_Register}};
+/* END STATIC PLUGINS */
+
+
 int main( int argc, char* argv[] ) {
 	MPI_Comm           CommWorld;
 	int                rank;
@@ -108,7 +125,7 @@
 	CheckDictionaryKeys(componentDict, errMessage);
 
 	LiveComponentRegister_Add( context->CF->LCRegister, (Stg_Component*) context );
-	PluginsManager_Load( context->plugins, context, dictionary );
+	PluginsManager_Load( context->plugins, context, dictionary, nPlugins, pluginNames, pluginLst );
 	
 	Stg_ComponentFactory_CreateComponents( context->CF );
 	Stg_ComponentFactory_ConstructComponents( context->CF );

Deleted: long/3D/Gale/trunk/src/gLucifer/project-config.sh
===================================================================
--- long/3D/Gale/trunk/src/gLucifer/project-config.sh	2006-07-05 18:14:54 UTC (rev 3917)
+++ long/3D/Gale/trunk/src/gLucifer/project-config.sh	2006-07-05 22:51:54 UTC (rev 3918)
@@ -1,57 +0,0 @@
-#!/bin/sh
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-##
-## Victorian Partnership for Advanced Computing (VPAC) Ltd, Australia
-## (C) 2003 All Rights Reserved
-##
-## California Institute of Technology (Caltech), USA
-## (C) 2003 All Rights Reserved
-##
-## Authors:
-## 	Stevan M. Quenette, Senior Software Engineer, VPAC.
-##	Stevan M. Quenette, Visitor in Geophysics, Caltech.
-##
-## <copyright-release-tag>
-##
-## Role:
-##	Obtain the project configuration.
-##
-## $Id$
-##
-##
-##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-	emulate sh
-	NULLCMD=:
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
-	set -o posix
-fi
-
-. './build-functions.sh'
-
-setValue  PROJECT 'glucifer'
-
-# Setup Makefile shortcuts
-. ./VMake/Config/makefile-shortcuts.sh
-
-# Do configurations
-. ./VMake/Config/compiler-config.sh
-. ./VMake/Config/PETSc-config.sh
-. ./VMake/Config/mpi-config.sh
-. ./VMake/Config/xml-config.sh
-
-. ./VMake/Config/StGermain-config.sh
-. ./VMake/Config/StG_FEM-config.sh
-
-. ./VMake/Config/vtk-config.sh
-. ./VMake/Config/sdl-config.sh
-. ./VMake/Config/carbon-config.sh
-. ./VMake/Config/libfame-config.sh
-. ./VMake/Config/libavcodec-config.sh
-. ./VMake/Config/OpenGl-config.sh
-. ./VMake/Config/X11-config.sh
-. ./VMake/Config/ImageFormats-config.sh
-
-. ./VMake/Config/gLucifer-config.sh



More information about the cig-commits mailing list