diff --git a/Common/Makefile b/Common/Makefile
index 6289b80363a27dfa831b0e837c49cea380407a9b..48e40c3fb2f1e53ad3bbb97cf0474ee4e8534610 100644
--- a/Common/Makefile
+++ b/Common/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.109 2006-09-14 15:23:28 remacle Exp $
+# $Id: Makefile,v 1.110 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -64,45 +64,46 @@ depend:
 	rm -f Makefile.new
 
 # DO NOT DELETE THIS LINE
+# 1 "/Users/geuzaine/.gmsh/Common//"
 Context.o: Context.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
   ../DataStr/List.h ../DataStr/Tree.h ../Numeric/Numeric.h Context.h \
   DefaultOptions.h GmshDefines.h Options.h Views.h ColorTable.h \
-  VertexArray.h SmoothNormals.h AdaptiveViews.h GmshMatrix.h \
-  gsl/gsl_linalg.h gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h \
-  Trackball.h
+  VertexArray.h SmoothNormals.h AdaptiveViews.h GmshMatrix.h Trackball.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 AdaptiveViews.o: AdaptiveViews.cpp AdaptiveViews.h ../DataStr/List.h \
-  GmshMatrix.h gsl/gsl_linalg.h gsl/gsl_matrix.h gsl/gsl_vector.h \
-  gsl/gsl_blas.h ../Plugin/Plugin.h ../Common/Options.h \
-  ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \
-  ../Common/VertexArray.h ../Common/SmoothNormals.h ../Numeric/Numeric.h \
+  GmshMatrix.h ../Plugin/Plugin.h ../Common/Options.h ../Common/Message.h \
+  ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \
+  ../Common/SmoothNormals.h ../Numeric/Numeric.h \
   ../Common/AdaptiveViews.h ../Common/GmshMatrix.h OS.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 Views.o: Views.cpp Gmsh.h Message.h ../DataStr/Malloc.h ../DataStr/List.h \
   ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \
   ../DataStr/Tree.h ../Numeric/Numeric.h Views.h ColorTable.h \
-  VertexArray.h SmoothNormals.h AdaptiveViews.h GmshMatrix.h \
-  gsl/gsl_linalg.h gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h \
-  Context.h Options.h
+  VertexArray.h SmoothNormals.h AdaptiveViews.h GmshMatrix.h Context.h \
+  Options.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 ViewsIO.o: ViewsIO.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
   ../DataStr/List.h ../DataStr/Tree.h ../Numeric/Numeric.h Views.h \
   ColorTable.h VertexArray.h SmoothNormals.h AdaptiveViews.h GmshMatrix.h \
-  gsl/gsl_linalg.h gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h \
   Context.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 Octree.o: Octree.cpp Octree.h OctreeInternals.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 OctreeInternals.o: OctreeInternals.cpp Message.h OctreeInternals.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 OctreePost.o: OctreePost.cpp Octree.h OctreeInternals.h OctreePost.h \
   ../DataStr/List.h Views.h ColorTable.h VertexArray.h SmoothNormals.h \
-  ../Numeric/Numeric.h AdaptiveViews.h GmshMatrix.h gsl/gsl_linalg.h \
-  gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h Message.h \
+  ../Numeric/Numeric.h AdaptiveViews.h GmshMatrix.h Message.h \
   ShapeFunctions.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 Options.o: Options.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
   ../DataStr/List.h ../DataStr/Tree.h GmshUI.h GmshDefines.h \
   ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \
   ../Common/VertexArray.h ../Common/SmoothNormals.h ../Numeric/Numeric.h \
-  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h gsl/gsl_linalg.h \
-  gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h Context.h Options.h \
+  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Context.h Options.h \
   ../Plugin/PluginManager.h ../Plugin/Plugin.h ../Common/Options.h \
   ../Common/Message.h ../Fltk/Solvers.h ../Fltk/GUI.h \
   ../Fltk/Opengl_Window.h ../Mesh/Mesh.h ../Common/GmshDefines.h \
@@ -113,13 +114,13 @@ Options.o: Options.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../Mesh/Simplex.h ../Mesh/Mesh.h ../Mesh/Matrix.h \
   ../Fltk/Colorbar_Window.h ../Common/GmshUI.h ../Fltk/Popup_Button.h \
   ../Fltk/SpherePosition_Widget.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 CommandLine.o: CommandLine.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
   ../DataStr/List.h ../DataStr/Tree.h GmshUI.h GmshDefines.h \
   GmshVersion.h CommandLine.h ../Numeric/Numeric.h Context.h Options.h \
   ../Geo/Geo.h Views.h ColorTable.h VertexArray.h SmoothNormals.h \
-  AdaptiveViews.h GmshMatrix.h gsl/gsl_linalg.h gsl/gsl_matrix.h \
-  gsl/gsl_vector.h gsl/gsl_blas.h ../Parser/OpenFile.h \
+  AdaptiveViews.h GmshMatrix.h ../Parser/OpenFile.h \
   ../Parser/CreateFile.h ../Parser/Parser.h ../Geo/GModel.h \
   ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \
   ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \
@@ -132,11 +133,14 @@ CommandLine.o: CommandLine.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../Geo/SVector3.h ../Geo/Pair.h ../Geo/GRegion.h ../Geo/GEntity.h \
   ../Geo/MElement.h ../Geo/SBoundingBox3d.h ../Common/SmoothNormals.h \
   OS.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 OS.o: OS.cpp Message.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 ColorTable.o: ColorTable.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
   ../DataStr/List.h ../DataStr/Tree.h ColorTable.h Context.h \
   ../Numeric/Numeric.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 Visibility.o: Visibility.cpp Visibility.h GmshDefines.h ../Geo/GVertex.h \
   ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \
   ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \
@@ -151,13 +155,17 @@ Visibility.o: Visibility.cpp Visibility.h GmshDefines.h ../Geo/GVertex.h \
   ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEdge.h ../Geo/GFace.h \
   ../Geo/GRegion.h ../Geo/SBoundingBox3d.h ../Common/SmoothNormals.h \
   ../Parser/Parser.h ../DataStr/Tree.h ../DataStr/avl.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 Trackball.o: Trackball.cpp Trackball.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 VertexArray.o: VertexArray.cpp VertexArray.h Context.h ../DataStr/List.h \
   ../Numeric/Numeric.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 SmoothNormals.o: SmoothNormals.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
   ../DataStr/List.h ../DataStr/Tree.h ../Numeric/Numeric.h \
   SmoothNormals.h
+# 1 "/Users/geuzaine/.gmsh/Common//"
 License.o: License.cpp Gmsh.h Message.h ../DataStr/Malloc.h \
   ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
   ../DataStr/List.h ../DataStr/Tree.h
diff --git a/DataStr/Makefile b/DataStr/Makefile
index 6cb1d2fbc82fe2b402f6be4e7e13782dce0540a2..5b975fff8d05617d7534099c517f4ccf37d3817e 100644
--- a/DataStr/Makefile
+++ b/DataStr/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.35 2006-09-14 15:23:28 remacle Exp $
+# $Id: Makefile,v 1.36 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -55,9 +55,15 @@ depend:
 	rm -f Makefile.new
 
 # DO NOT DELETE THIS LINE
+# 1 "/Users/geuzaine/.gmsh/DataStr//"
 List.o: List.cpp Malloc.h List.h ../Common/Message.h SafeIO.h
+# 1 "/Users/geuzaine/.gmsh/DataStr//"
 Malloc.o: Malloc.cpp Malloc.h ../Common/Message.h
+# 1 "/Users/geuzaine/.gmsh/DataStr//"
 SafeIO.o: SafeIO.cpp SafeIO.h ../Common/Message.h
+# 1 "/Users/geuzaine/.gmsh/DataStr//"
 Tree.o: Tree.cpp Malloc.h Tree.h avl.h ../Common/Message.h
+# 1 "/Users/geuzaine/.gmsh/DataStr//"
 avl.o: avl.cpp avl.h Malloc.h
+# 1 "/Users/geuzaine/.gmsh/DataStr//"
 Tools.o: Tools.cpp Tools.h List.h Tree.h avl.h
diff --git a/Fltk/Makefile b/Fltk/Makefile
index 18ab6e61267c3c8bc53e918ea69f9642032f0d90..a91dd7c8015da036592697a8f4f6a80b92ad3000 100644
--- a/Fltk/Makefile
+++ b/Fltk/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.106 2006-09-14 15:23:28 remacle Exp $
+# $Id: Makefile,v 1.107 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -63,6 +63,7 @@ depend:
 	rm -f Makefile.new
 
 # DO NOT DELETE THIS LINE
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 Main.o: Main.cpp GUI.h Opengl_Window.h ../Mesh/Mesh.h \
   ../Common/GmshDefines.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../Mesh/Vertex.h ../Mesh/Element.h ../Mesh/Vertex.h \
@@ -76,8 +77,7 @@ Main.o: Main.cpp GUI.h Opengl_Window.h ../Mesh/Mesh.h \
   ../DataStr/List.h ../DataStr/Tree.h ../Geo/Geo.h ../Parser/CreateFile.h \
   ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \
   ../Common/VertexArray.h ../Common/SmoothNormals.h ../Numeric/Numeric.h \
-  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h gsl/gsl_linalg.h \
-  gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h ../Common/Context.h \
+  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h \
   ../Common/Options.h ../Parser/Parser.h ../Parser/OpenFile.h \
   ../Common/CommandLine.h Solvers.h ../Plugin/PluginManager.h \
   ../Plugin/Plugin.h ../Geo/gmshModel.h ../Geo/GModel.h ../Geo/GVertex.h \
@@ -91,6 +91,7 @@ Main.o: Main.cpp GUI.h Opengl_Window.h ../Mesh/Mesh.h \
   ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \
   ../Geo/GRegion.h ../Geo/GEntity.h ../Geo/MElement.h \
   ../Geo/SBoundingBox3d.h
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 Message.o: Message.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \
@@ -103,14 +104,14 @@ Message.o: Message.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Mesh/Simplex.h ../Mesh/Mesh.h ../Mesh/Matrix.h Colorbar_Window.h \
   ../Common/ColorTable.h Popup_Button.h SpherePosition_Widget.h \
   GUI_Extras.h ../Common/OS.h
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 GUI.o: GUI.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
   ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \
   ../DataStr/List.h ../DataStr/Tree.h ../Common/GmshUI.h \
   ../Numeric/Numeric.h ../Common/Context.h ../Common/Options.h \
   ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \
   ../Common/VertexArray.h ../Common/SmoothNormals.h \
-  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h gsl/gsl_linalg.h \
-  gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h GUI.h Opengl_Window.h \
+  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h GUI.h Opengl_Window.h \
   ../Mesh/Mesh.h ../Common/GmshDefines.h ../Mesh/Vertex.h \
   ../Mesh/Element.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Vertex.h \
   ../Mesh/Element.h ../Mesh/Face.h ../Mesh/Vertex.h ../Mesh/Element.h \
@@ -120,6 +121,7 @@ GUI.o: GUI.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \
   Popup_Button.h SpherePosition_Widget.h Callbacks.h Bitmaps.h \
   Win32Icon.h ../Parser/OpenFile.h ../Common/CommandLine.h Solvers.h \
   ../Plugin/PluginManager.h ../Plugin/Plugin.h Shortcut_Window.h
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 GUI_Extras.o: GUI_Extras.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \
@@ -133,8 +135,8 @@ GUI_Extras.o: GUI_Extras.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Common/Context.h ../Graphics/Draw.h ../Common/Views.h \
   ../Common/ColorTable.h ../Common/VertexArray.h \
   ../Common/SmoothNormals.h ../Numeric/Numeric.h \
-  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h gsl/gsl_linalg.h \
-  gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h
+  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 Callbacks.o: Callbacks.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \
@@ -147,8 +149,7 @@ Callbacks.o: Callbacks.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Mesh/Matrix.h ../Geo/ExtrudeParams.h ../Geo/ExtractContour.h \
   ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \
   ../Common/VertexArray.h ../Common/SmoothNormals.h ../Numeric/Numeric.h \
-  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h gsl/gsl_linalg.h \
-  gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h \
+  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \
   ../Graphics/SelectBuffer.h ../Geo/GVertex.h ../Geo/GEntity.h \
   ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \
   ../Geo/SPoint3.h ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h \
@@ -166,6 +167,7 @@ Callbacks.o: Callbacks.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Common/GmshDefines.h Solvers.h ../Common/OS.h ../Geo/GModel.h \
   ../Geo/GVertex.h ../Geo/GEdge.h ../Geo/GFace.h ../Geo/GRegion.h \
   ../Geo/SBoundingBox3d.h
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 Opengl.o: Opengl.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \
@@ -173,9 +175,8 @@ Opengl.o: Opengl.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Geo/Geo.h ../Graphics/Draw.h ../Common/Views.h \
   ../Common/ColorTable.h ../Common/VertexArray.h \
   ../Common/SmoothNormals.h ../Common/AdaptiveViews.h \
-  ../Common/GmshMatrix.h gsl/gsl_linalg.h gsl/gsl_matrix.h \
-  gsl/gsl_vector.h gsl/gsl_blas.h ../Graphics/SelectBuffer.h \
-  ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \
+  ../Common/GmshMatrix.h ../Graphics/SelectBuffer.h ../Geo/GVertex.h \
+  ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \
   ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \
   ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/GEdge.h \
   ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \
@@ -191,6 +192,7 @@ Opengl.o: Opengl.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Mesh/Metric.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Mesh.h \
   ../Mesh/Matrix.h Colorbar_Window.h Popup_Button.h \
   SpherePosition_Widget.h ../Graphics/gl2ps.h
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 Opengl_Window.o: Opengl_Window.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \
@@ -198,9 +200,8 @@ Opengl_Window.o: Opengl_Window.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Geo/Geo.h ../Graphics/Draw.h ../Common/Views.h \
   ../Common/ColorTable.h ../Common/VertexArray.h \
   ../Common/SmoothNormals.h ../Common/AdaptiveViews.h \
-  ../Common/GmshMatrix.h gsl/gsl_linalg.h gsl/gsl_matrix.h \
-  gsl/gsl_vector.h gsl/gsl_blas.h ../Graphics/SelectBuffer.h \
-  ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \
+  ../Common/GmshMatrix.h ../Graphics/SelectBuffer.h ../Geo/GVertex.h \
+  ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \
   ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \
   ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/GEdge.h \
   ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \
@@ -216,6 +217,7 @@ Opengl_Window.o: Opengl_Window.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Mesh/Metric.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Mesh.h \
   ../Mesh/Matrix.h Colorbar_Window.h Popup_Button.h \
   SpherePosition_Widget.h
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 Colorbar_Window.o: Colorbar_Window.cpp ../Common/Gmsh.h \
   ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \
   ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \
@@ -228,6 +230,7 @@ Colorbar_Window.o: Colorbar_Window.cpp ../Common/Gmsh.h \
   ../Mesh/Simplex.h ../Mesh/Mesh.h ../Mesh/Matrix.h Colorbar_Window.h \
   ../Common/ColorTable.h Popup_Button.h SpherePosition_Widget.h \
   ../Common/Context.h
+# 1 "/Users/geuzaine/.gmsh/Fltk//"
 Solvers.o: Solvers.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \
@@ -241,5 +244,4 @@ Solvers.o: Solvers.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../Common/ColorTable.h Popup_Button.h SpherePosition_Widget.h \
   ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \
   ../Common/VertexArray.h ../Common/SmoothNormals.h ../Numeric/Numeric.h \
-  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h gsl/gsl_linalg.h \
-  gsl/gsl_matrix.h gsl/gsl_vector.h gsl/gsl_blas.h ../Common/Context.h
+  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h
diff --git a/Geo/fourierModel.cpp b/Geo/fourierModel.cpp
index 420a363abb13be6e1867ad31004f54daf6902b79..cbaf6b59db7ecaf9df149894d8abd00726769c79 100644
--- a/Geo/fourierModel.cpp
+++ b/Geo/fourierModel.cpp
@@ -54,30 +54,50 @@ void debugVertices(std::vector<MVertex*> &vertices, std::string file,
   fclose(fp);
 }
 
-void debugElements(std::vector<MElement*> &elements, std::string file, 
+template<class T>
+void debugElements(std::vector<T*> &elements, std::string file, 
 		   bool parametric, int num=0)
 {
   char name[256];
   sprintf(name, "%s_%d.pos", file.c_str(), num);
   FILE *fp = fopen(name, "w");
   fprintf(fp, "View \"debug\"{\n");
-  for(unsigned int i = 0; i < elements.size(); i++)
-    elements[i]->writePOS(fp);
-  fprintf(fp, "};\n");    
+  for(unsigned int i = 0; i < elements.size(); i++){
+    fprintf(fp, "%s(", elements[i]->getStringForPOS());
+    for(int j = 0; j < elements[i]->getNumVertices(); j++){
+      MVertex *v = elements[i]->getVertex(j);
+      if(j) fprintf(fp, ",");
+      double x, y, z;
+      if(parametric){
+	v->getParameter(0, x);
+	v->getParameter(1, y);
+	z = 0;
+      }
+      else{
+	x = v->x(); y = v->y(); z = v->z();
+      }
+      fprintf(fp, "%g,%g,%g", x, y, z);
+    }
+    fprintf(fp, "){");
+    for(int j = 0; j < elements[i]->getNumVertices(); j++){
+      MVertex *v = elements[i]->getVertex(j);
+      if(j) fprintf(fp, ",");
+      if(v->getData()){
+	double pou = *(double*)v->getData();
+	fprintf(fp, "%g", pou);
+      }
+      else{
+	fprintf(fp, "%d", v->onWhat()->tag());
+      }
+    }
+    fprintf(fp, "};\n");
+  }
+  fprintf(fp, "};\n");
   fclose(fp);
 }
 
 class meshCartesian{
 public:
-  typedef MDataFaceVertex<double> DVertex;
-  static std::set<DVertex*, MVertexLessThanLexicographic> vPosition;
-  static std::set<MVertex*> vDelete;
-  static void deleteUnusedVertices()
-  {
-    for(std::set<MVertex*>::iterator it = vDelete.begin(); it != vDelete.end(); it++)
-      delete *it;
-    vDelete.clear();
-  }
   void operator() (GFace *gf)
   {  
     int M = (int)(30. / CTX.mesh.lc_factor), N = (int)(30. / CTX.mesh.lc_factor);
@@ -88,17 +108,8 @@ public:
 	GPoint p = gf->point(u, v);
 	double pou;
 	FM->GetPou(gf->tag(), u, v, pou);
-	DVertex *w = new DVertex(p.x(), p.y(), p.z(), gf, u, v, pou);
-	// eliminate duplicate vertices on hard edges
-	std::set<DVertex*, MVertexLessThanLexicographic>::iterator it = vPosition.find(w);
-	if(it != vPosition.end()){
-	  delete w;
-	  gf->mesh_vertices.push_back(*it);
-	}
-	else{
-	  vPosition.insert(w);
-	  gf->mesh_vertices.push_back(w);
-	}
+	gf->mesh_vertices.push_back
+	  (new MDataFaceVertex<double>(p.x(), p.y(), p.z(), gf, u, v, pou));
       }
     }
     for(int i = 0; i < M - 1; i++){
@@ -114,9 +125,6 @@ public:
   }
 };
 
-std::set<meshCartesian::DVertex*, MVertexLessThanLexicographic> meshCartesian::vPosition;
-std::set<MVertex*> meshCartesian::vDelete;
-
 class computePartitionOfUnity{
 public:
   void operator() (GFace *gf)
@@ -160,6 +168,8 @@ public:
 	}
       }
     }
+
+    //debugElements(gf->quadrangles, "pou", false, gf->tag());
   }
 };
 
@@ -189,8 +199,7 @@ public:
 	newq.push_back(gf->quadrangles[i]);
     gf->quadrangles = newq;
 
-    // remove vertices in the groove (we cannot delete them right away
-    // since some can be shared between faces on hard edges)
+    // remove vertices in the groove
     std::vector<MVertex*> newv;
     for(unsigned int i = 0; i < gf->mesh_vertices.size(); i++)
       gf->mesh_vertices[i]->setVisibility(-1);
@@ -199,7 +208,7 @@ public:
 	gf->quadrangles[i]->getVertex(j)->setVisibility(1);
     for(unsigned int i = 0; i < gf->mesh_vertices.size(); i++)
       if(gf->mesh_vertices[i]->getVisibility() < 0) 
-	meshCartesian::vDelete.insert(gf->mesh_vertices[i]);
+	delete gf->mesh_vertices[i];
       else
 	newv.push_back(gf->mesh_vertices[i]);
     gf->mesh_vertices = newv;
@@ -224,6 +233,11 @@ void getOrderedBoundaryLoops(std::vector<MElement*> &elements,
   for(std::map<vpair, vpair>::iterator it = edges.begin(); it != edges.end(); it++)
     connect[it->second.first] = it->second.second;
 
+  std::vector<MVertex*> debug;
+  for(std::map<MVertex*, MVertex*>::iterator it = connect.begin(); it != connect.end(); it++)
+    debug.push_back(it->first);
+  debugVertices(debug, "xxxx", false, 0);
+
   loops.resize(1);
   while(connect.size()){
     if(loops[loops.size() - 1].empty()) 
@@ -242,14 +256,6 @@ void getOrderedBoundaryLoops(std::vector<MElement*> &elements,
   Msg(INFO, "Found %d loop(s) in boundary", loops.size());
 }
 
-void addElements(GFace *gf, std::vector<MElement*> &elements)
-{
-  for(unsigned int i = 0; i < gf->triangles.size(); i++)
-    elements.push_back(gf->triangles[i]);
-  for(unsigned int i = 0; i < gf->quadrangles.size(); i++)
-    elements.push_back(gf->quadrangles[i]);
-}
-
 void classifyFaces(GFace *gf, std::set<GFace*> &connected, std::set<GFace*> &other)
 {
   connected.insert(gf); 
@@ -288,7 +294,7 @@ void getIntersectingBoundaryParts(GFace *gf, std::vector<MElement*> &elements,
   getOrderedBoundaryLoops(elements, loops);
   parts.resize(loops.size());
 
-  if(gf->tag() == 0){
+  if(0){
     debugElements(elements, "elements", false);
     for(unsigned int i = 0; i < loops.size(); i++)
       debugVertices(loops[i], "boundary", false, i);
@@ -325,22 +331,49 @@ void getIntersectingBoundaryParts(GFace *gf, std::vector<MElement*> &elements,
   }
 }
 
+void meshGrout(GFace *gf, std::vector<MVertex*> &loop, std::vector<MVertex*> &hole)
+{ 
+  fourierFace *grout = new fourierFace(gf, loop, hole);
+  meshGFace mesh; 
+  mesh(grout);
+  //debugElements(grout->triangles, "grout", true);
+  for(unsigned int i = 0; i < grout->triangles.size(); i++)
+    gf->triangles.push_back(grout->triangles[i]);
+  for(unsigned int i = 0; i < loop.size(); i++)
+    gf->mesh_vertices.push_back(loop[i]);
+  for(unsigned int i = 0; i < hole.size(); i++)
+    gf->mesh_vertices.push_back(hole[i]);
+  for(unsigned int i = 0; i < grout->mesh_vertices.size(); i++)
+    gf->mesh_vertices.push_back(grout->mesh_vertices[i]);
+  delete grout;
+}
+
 class createGrout{
 public:
   void operator() (GFace *gf)
   {  
-    if(gf->tag() > 1) return;
+    if(gf->tag() > 2) return;
 
     Msg(INFO, "Processing grout for face %d", gf->tag());
 
     std::set<GFace*> connected, other;
     classifyFaces(gf, connected, other);
 
-    std::vector<MElement*> connectedElements, otherElements;
-    for(std::set<GFace*>::iterator it = connected.begin(); it != connected.end(); it++)
-      addElements(*it, connectedElements);
-    for(std::set<GFace*>::iterator it = other.begin(); it != other.end(); it++)
-      addElements(*it, otherElements);
+    std::vector<MElement*> connectedElements;
+    for(std::set<GFace*>::iterator it = connected.begin(); it != connected.end(); it++){
+      for(unsigned int i = 0; i < (*it)->triangles.size(); i++)
+	connectedElements.push_back((*it)->triangles[i]);
+      for(unsigned int i = 0; i < (*it)->quadrangles.size(); i++)
+	connectedElements.push_back((*it)->quadrangles[i]);
+    }
+
+    std::vector<MElement*> otherElements;
+    for(std::set<GFace*>::iterator it = other.begin(); it != other.end(); it++){
+      for(unsigned int i = 0; i < (*it)->triangles.size(); i++)
+	otherElements.push_back((*it)->triangles[i]);
+      for(unsigned int i = 0; i < (*it)->quadrangles.size(); i++)
+	otherElements.push_back((*it)->quadrangles[i]);
+    }
 
     std::vector<std::vector<std::vector<MVertex*> > > inside;
     getIntersectingBoundaryParts(gf, connectedElements, inside);
@@ -357,6 +390,7 @@ public:
     std::vector<MVertex*> hole, loop;
     
     if(inside.size() == 1 && inside[0].size() == 1){
+      Msg(INFO, "CASE 1: MESH AROUND ONE-PART HOLE");
       // create hole
       SPoint2 ic(0., 0.);
       {
@@ -404,39 +438,31 @@ public:
 	loop.push_back(hole[0]);
       }
       // mesh the grout
-      fourierFace *grout = new fourierFace(gf, loop, hole);
-      meshGFace mesh; 
-      mesh(grout);
-      for(unsigned int i = 0; i < grout->triangles.size(); i++)
-	gf->triangles.push_back(grout->triangles[i]);
-      for(unsigned int i = 0; i < loop.size(); i++)
-	gf->mesh_vertices.push_back(loop[i]);
-      for(unsigned int i = 0; i < hole.size(); i++)
-	gf->mesh_vertices.push_back(hole[i]);
-      for(unsigned int i = 0; i < grout->mesh_vertices.size(); i++)
-	gf->mesh_vertices.push_back(grout->mesh_vertices[i]);
-      delete grout;
+      meshGrout(gf, loop, hole);
     }
-    else{
-      Msg(WARNING, "Faces with no holes not implemented yet!");
-
-      // num individual meshes = num parts with onWhat() == gf!
-
-      // for each one
-      //   - find other parts that are "close" (using POUs?)
-      //   - sort parts w.r.t barycenter of each group      
-
+    else if(!outside.size()){
+      Msg(INFO, "CASE 2: MESH SIMPLE HOLES");
+      hole.clear();
       for(unsigned int i = 0; i < inside.size(); i++){
+	loop.clear();
 	for(unsigned int j = 0; j < inside[i].size(); j++){
 	  for(unsigned int k = 0; k < inside[i][j].size(); k++){
 	    loop.push_back(inside[i][j][k]);
 	  }
 	}
+	loop.push_back(loop[0]);
+	meshGrout(gf, loop, hole);
       }
     }
-    
-    debugVertices(hole, "hole", false, gf->tag());
-    debugVertices(loop, "loop", false, gf->tag());
+    else{
+      // num individual meshes = num parts with onWhat() == gf!
+      // for each one
+      //   - find other parts that are "close" (using POUs?)
+      //   - sort parts w.r.t barycenter of each group      
+      Msg(GERROR, "This case is not implemented yet");
+    }
+    debugVertices(hole, "hole", true, gf->tag());
+    debugVertices(loop, "loop", true, gf->tag());
   }
 };
 
@@ -453,9 +479,6 @@ fourierModel::fourierModel(const std::string &name)
   for(int i = 0; i < FM->GetNumPatches(); i++)
     add(new fourierFace(this, i));
 
-  meshCartesian::vPosition.clear();
-  MVertexLessThanLexicographic::tolerance = 1.e-12; // Warning: tolerance
-
   // mesh each face with quads
   std::for_each(firstFace(), lastFace(), meshCartesian());
 
@@ -463,13 +486,13 @@ fourierModel::fourierModel(const std::string &name)
   std::for_each(firstFace(), lastFace(), computePartitionOfUnity());
 
   // create grooves
-  meshCartesian::vDelete.clear();
   std::for_each(firstFace(), lastFace(), createGroove());
-  meshCartesian::deleteUnusedVertices();
-  
+
   // create grout
   std::for_each(firstFace(), lastFace(), createGrout());
 
+  // remove any duplicate vertices on hard edges
+
   CTX.mesh.changed = ENT_ALL;
 }
 
diff --git a/Mesh/Makefile b/Mesh/Makefile
index 08d38501d86d1adbd2bb67eb8917c9cfa5ad4577..389b01b621d15fcb07381b6cf085f3dfa122ecb9 100644
--- a/Mesh/Makefile
+++ b/Mesh/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.132 2006-09-11 18:16:19 remacle Exp $
+# $Id: Makefile,v 1.133 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -448,17 +448,30 @@ meshGFaceTransfinite.o: meshGFaceTransfinite.cpp meshGFace.h \
   ../Geo/GEntity.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \
   ../Geo/Pair.h ../Common/Message.h
 # 1 "/Users/geuzaine/.gmsh/Mesh//"
-meshGRegion.o: meshGRegion.cpp meshGRegion.h ../Geo/GRegion.h \
-  ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \
+meshGRegionDelaunayInsertion.o: meshGRegionDelaunayInsertion.cpp \
+  meshGRegionDelaunayInsertion.h ../Geo/MElement.h \
+  ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/SPoint3.h \
+  ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \
+  ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h ../Numeric/Numeric.h \
+  ../Common/Context.h ../DataStr/List.h ../Geo/GRegion.h ../Geo/GEntity.h \
+  ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \
+  ../Geo/SPoint3.h ../Geo/MElement.h ../Common/Message.h
+# 1 "/Users/geuzaine/.gmsh/Mesh//"
+meshGRegion.o: meshGRegion.cpp meshGRegion.h ../Geo/GModel.h \
+  ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \
   ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \
-  ../Geo/MElement.h ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/MEdge.h \
-  ../Geo/MVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/MFace.h \
+  ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/GEdge.h \
+  ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \
+  ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \
+  ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Geo/MFace.h \
   ../Geo/MVertex.h ../Geo/SVector3.h ../Numeric/Numeric.h \
   ../Common/Context.h ../DataStr/List.h ../Geo/GFace.h ../Geo/GPoint.h \
   ../Geo/GEntity.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \
-  ../Geo/Pair.h BDS.h ../Common/Views.h ../Common/ColorTable.h \
-  ../Common/VertexArray.h ../Common/SmoothNormals.h \
-  ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Message.h
+  ../Geo/Pair.h ../Geo/GRegion.h ../Geo/GEntity.h ../Geo/MElement.h \
+  ../Geo/SBoundingBox3d.h ../Common/SmoothNormals.h BDS.h \
+  ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \
+  ../Common/SmoothNormals.h ../Common/AdaptiveViews.h \
+  ../Common/GmshMatrix.h ../Common/Message.h
 # 1 "/Users/geuzaine/.gmsh/Mesh//"
 Nurbs.o: Nurbs.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
diff --git a/Numeric/Makefile b/Numeric/Makefile
index 37aa256761b93e7b3a322524a70d62cf2efaaedc..4752d4457b02800ced0288c7975c6bce85b67bdf 100644
--- a/Numeric/Makefile
+++ b/Numeric/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.29 2006-09-11 17:58:19 geuzaine Exp $
+# $Id: Makefile,v 1.30 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -62,6 +62,8 @@ Numeric.o: Numeric.cpp ../Common/Gmsh.h ../Common/Message.h \
 # 1 "/Users/geuzaine/.gmsh/Numeric//"
 EigSolve.o: EigSolve.cpp
 # 1 "/Users/geuzaine/.gmsh/Numeric//"
+predicates.o: predicates.cpp
+# 1 "/Users/geuzaine/.gmsh/Numeric//"
 gsl_newt.o: gsl_newt.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \
diff --git a/Parallel/Makefile b/Parallel/Makefile
index de006973074b81743230a6fda1984ecff98f7faf..5a9e35ef82be5e12d6a368b9547e78acb104c01f 100644
--- a/Parallel/Makefile
+++ b/Parallel/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.32 2006-09-14 15:23:29 remacle Exp $
+# $Id: Makefile,v 1.33 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -50,6 +50,7 @@ depend:
 	rm -f Makefile.new
 
 # DO NOT DELETE THIS LINE
+# 1 "/Users/geuzaine/.gmsh/Parallel//"
 ParUtil.o: ParUtil.cpp ../Common/Gmsh.h ../Common/Message.h \
   ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \
   ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \
diff --git a/benchmarks/3d/p19.geo b/benchmarks/3d/p19.geo
index ac2e2e30d75552adc616309dff69cf5cd52c1cea..d192ce955fa916d4cf235bc84f8978a03d488558 100644
--- a/benchmarks/3d/p19.geo
+++ b/benchmarks/3d/p19.geo
@@ -106,17 +106,3 @@ Coherence;
 Extrude Surface {126, {0,0,hcav-hg} };
 Coherence;
 
-//Characteristic Length {58,71} = 0.01; 
-
-//Point(85) = {0.0,0.0,0.0,1.0};
-Surface Loop(158) = {67,27,43,47,51,55,59,63,68};
-Volume(159) = {158};
-Surface Loop(159) = {112,29,84,67,125,92,96,100,104,108,116,120,124};
-Volume(160) = {159};
-
-GO      = 1 ;
-CAV     = 2 ;
-DIS     = 3 ; 
-CLDSRC  = 4 ;
-CLD     = 5 ;
-
diff --git a/contrib/ANN/Makefile b/contrib/ANN/Makefile
index c83f510ebf556704225d92fe2ba38bc7e0649ae9..53a8c4baa7369d0fcbcf048de8bb4d60a8839189 100644
--- a/contrib/ANN/Makefile
+++ b/contrib/ANN/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.10 2006-09-14 15:23:29 remacle Exp $
+# $Id: Makefile,v 1.11 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -63,38 +63,52 @@ depend:
 	rm -f Makefile.new
 
 # DO NOT DELETE THIS LINE
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 ANN.o: src/ANN.cpp include/ANN/ANNx.h include/ANN/ANN.h \
   include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 bd_fix_rad_search.o: src/bd_fix_rad_search.cpp src/bd_tree.h \
   include/ANN/ANNx.h include/ANN/ANN.h src/kd_tree.h \
   src/kd_fix_rad_search.h src/kd_util.h src/pr_queue_k.h \
   include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 bd_pr_search.o: src/bd_pr_search.cpp src/bd_tree.h include/ANN/ANNx.h \
   include/ANN/ANN.h src/kd_tree.h src/kd_pr_search.h src/kd_util.h \
   src/pr_queue.h include/ANN/ANNperf.h src/pr_queue_k.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 bd_search.o: src/bd_search.cpp src/bd_tree.h include/ANN/ANNx.h \
   include/ANN/ANN.h src/kd_tree.h src/kd_search.h src/kd_util.h \
   src/pr_queue_k.h include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 bd_tree.o: src/bd_tree.cpp src/bd_tree.h include/ANN/ANNx.h \
   include/ANN/ANN.h src/kd_tree.h src/kd_util.h src/kd_split.h \
   include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 brute.o: src/brute.cpp include/ANN/ANNx.h include/ANN/ANN.h \
   src/pr_queue_k.h include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 kd_dump.o: src/kd_dump.cpp src/kd_tree.h include/ANN/ANNx.h \
   include/ANN/ANN.h src/bd_tree.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 kd_fix_rad_search.o: src/kd_fix_rad_search.cpp src/kd_fix_rad_search.h \
   src/kd_tree.h include/ANN/ANNx.h include/ANN/ANN.h src/kd_util.h \
   src/pr_queue_k.h include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 kd_pr_search.o: src/kd_pr_search.cpp src/kd_pr_search.h src/kd_tree.h \
   include/ANN/ANNx.h include/ANN/ANN.h src/kd_util.h src/pr_queue.h \
   include/ANN/ANNperf.h src/pr_queue_k.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 kd_search.o: src/kd_search.cpp src/kd_search.h src/kd_tree.h \
   include/ANN/ANNx.h include/ANN/ANN.h src/kd_util.h src/pr_queue_k.h \
   include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 kd_split.o: src/kd_split.cpp src/kd_tree.h include/ANN/ANNx.h \
   include/ANN/ANN.h src/kd_util.h src/kd_split.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 kd_tree.o: src/kd_tree.cpp src/kd_tree.h include/ANN/ANNx.h \
   include/ANN/ANN.h src/kd_split.h src/kd_util.h include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 kd_util.o: src/kd_util.cpp src/kd_util.h src/kd_tree.h include/ANN/ANNx.h \
   include/ANN/ANN.h include/ANN/ANNperf.h
+# 1 "/Users/geuzaine/.gmsh/contrib/ANN//"
 perf.o: src/perf.cpp include/ANN/ANN.h include/ANN/ANNperf.h
diff --git a/contrib/MathEval/Makefile b/contrib/MathEval/Makefile
index 61af198f6db917bf45d803c4e11160454b26fa5e..00452256bcb8e9a7d3e5256843232f1050625044 100644
--- a/contrib/MathEval/Makefile
+++ b/contrib/MathEval/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.10 2006-09-14 15:23:30 remacle Exp $
+# $Id: Makefile,v 1.11 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -61,13 +61,19 @@ depend:
 	rm -f Makefile.new
 
 # DO NOT DELETE THIS LINE
+# 1 "/Users/geuzaine/.gmsh/contrib/MathEval//"
 matheval.o: matheval.cpp common.h ../../DataStr/Malloc.h matheval.h \
   node.h symbol_table.h
+# 1 "/Users/geuzaine/.gmsh/contrib/MathEval//"
 node.o: node.cpp common.h ../../DataStr/Malloc.h node.h symbol_table.h
+# 1 "/Users/geuzaine/.gmsh/contrib/MathEval//"
 scanner.yy.o: scanner.yy.cpp common.h ../../DataStr/Malloc.h node.h \
   symbol_table.h parser.tab.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/MathEval//"
 parser.tab.o: parser.tab.cpp common.h ../../DataStr/Malloc.h node.h \
   symbol_table.h
+# 1 "/Users/geuzaine/.gmsh/contrib/MathEval//"
 symbol_table.o: symbol_table.cpp common.h ../../DataStr/Malloc.h \
   symbol_table.h xmath.h
+# 1 "/Users/geuzaine/.gmsh/contrib/MathEval//"
 xmath.o: xmath.cpp xmath.h
diff --git a/contrib/Metis/Makefile b/contrib/Metis/Makefile
index c43a74c0145855a751ae16a755de60d761896566..84b54fb92976b0a48e288acbad20401d0bb1198d 100644
--- a/contrib/Metis/Makefile
+++ b/contrib/Metis/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.10 2006-09-14 15:23:30 remacle Exp $
+# $Id: Makefile,v 1.11 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -101,65 +101,117 @@ depend:
 	rm -f Makefile.new
 
 # DO NOT DELETE THIS LINE
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 balance.o: balance.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 fm.o: fm.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 kwayfm.o: kwayfm.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mcoarsen.o: mcoarsen.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 minitpart2.o: minitpart2.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mpmetis.o: mpmetis.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 pmetis.o: pmetis.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 subdomains.o: subdomains.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 bucketsort.o: bucketsort.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 fortran.o: fortran.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 kwayrefine.o: kwayrefine.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 memory.o: memory.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 minitpart.o: minitpart.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mrefine2.o: mrefine2.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 pqueue.o: pqueue.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 timing.o: timing.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 ccgraph.o: ccgraph.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 frename.o: frename.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 kwayvolfm.o: kwayvolfm.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mesh.o: mesh.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mkmetis.o: mkmetis.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mrefine.o: mrefine.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 refine.o: refine.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 util.o: util.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 coarsen.o: coarsen.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 graph.o: graph.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 kwayvolrefine.o: kwayvolrefine.c metis.h defs.h struct.h macros.h \
   rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 meshpart.o: meshpart.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mkwayfmh.o: mkwayfmh.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mutil.o: mutil.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 separator.o: separator.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 compress.o: compress.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 initpart.o: initpart.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 match.o: match.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mfm2.o: mfm2.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mkwayrefine.o: mkwayrefine.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 myqsort.o: myqsort.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 sfm.o: sfm.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 debug.o: debug.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 kmetis.o: kmetis.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mbalance2.o: mbalance2.c metis.h defs.h struct.h macros.h rename.h \
   proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mfm.o: mfm.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mmatch.o: mmatch.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 ometis.o: ometis.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 srefine.o: srefine.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 estmem.o: estmem.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 kvmetis.o: kvmetis.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mbalance.o: mbalance.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mincover.o: mincover.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 mmd.o: mmd.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 parmetis.o: parmetis.c metis.h defs.h struct.h macros.h rename.h proto.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Metis//"
 stat.o: stat.c metis.h defs.h struct.h macros.h rename.h proto.h
diff --git a/contrib/NR/nrutil.h b/contrib/NR/nrutil.h
index 4b277537856f50d073304a0ec6862781cdbfc690..6deadd08b165b9f6c07a50b771e82a62e3b39aaa 100644
--- a/contrib/NR/nrutil.h
+++ b/contrib/NR/nrutil.h
@@ -45,9 +45,9 @@ static int imaxarg1,imaxarg2;
 static int iminarg1,iminarg2;
 #define IMIN(a,b) (iminarg1=(a),iminarg2=(b),(iminarg1) < (iminarg2) ?\
         (iminarg1) : (iminarg2))
+*/
 
 #define SIGN(a,b) ((b) >= 0.0 ? fabs(a) : -fabs(a))
-*/
 
 #if defined(__STDC__) || defined(ANSI) || defined(NRANSI) /* ANSI */
 
diff --git a/contrib/Netgen/Makefile b/contrib/Netgen/Makefile
index d448ceae79edde576d405f043d62e04e95ce10a9..267e978c8e490f6e42364dd7756edaa491eb96ca 100644
--- a/contrib/Netgen/Makefile
+++ b/contrib/Netgen/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.11 2006-09-14 15:23:30 remacle Exp $
+# $Id: Makefile,v 1.12 2006-09-14 15:48:35 geuzaine Exp $
 #
 # Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
 #
@@ -148,6 +148,7 @@ depend:
 	rm -f Makefile.new
 
 # DO NOT DELETE THIS LINE
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 linopt.o: libsrc/opti/linopt.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -168,6 +169,7 @@ linopt.o: libsrc/opti/linopt.cpp libsrc/include/mystdlib.h \
   libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \
   libsrc/include/../linalg/densemat.hpp \
   libsrc/include/../linalg/polynomial.hpp libsrc/opti/opti.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 bfgs.o: libsrc/opti/bfgs.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -188,6 +190,7 @@ bfgs.o: libsrc/opti/bfgs.cpp libsrc/include/mystdlib.h \
   libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \
   libsrc/include/../linalg/densemat.hpp \
   libsrc/include/../linalg/polynomial.hpp libsrc/opti/opti.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 linsearch.o: libsrc/opti/linsearch.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -208,6 +211,7 @@ linsearch.o: libsrc/opti/linsearch.cpp libsrc/include/mystdlib.h \
   libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \
   libsrc/include/../linalg/densemat.hpp \
   libsrc/include/../linalg/polynomial.hpp libsrc/opti/opti.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 global.o: libsrc/meshing/global.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -250,6 +254,7 @@ global.o: libsrc/meshing/global.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 bisect.o: libsrc/meshing/bisect.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -292,6 +297,7 @@ bisect.o: libsrc/meshing/bisect.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshtool.o: libsrc/meshing/meshtool.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -351,6 +357,7 @@ meshtool.o: libsrc/meshing/meshtool.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/include/../geom2d/spline2d.hpp \
   libsrc/include/../geom2d/splinegeometry2.hpp \
   libsrc/include/../geom2d/geom2dmesh.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 refine.o: libsrc/meshing/refine.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -393,6 +400,7 @@ refine.o: libsrc/meshing/refine.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 ruler3.o: libsrc/meshing/ruler3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -435,6 +443,7 @@ ruler3.o: libsrc/meshing/ruler3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 improve3.o: libsrc/meshing/improve3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -477,6 +486,7 @@ improve3.o: libsrc/meshing/improve3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 smoothing3.o: libsrc/meshing/smoothing3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -519,6 +529,7 @@ smoothing3.o: libsrc/meshing/smoothing3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 adfront3.o: libsrc/meshing/adfront3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -561,10 +572,15 @@ adfront3.o: libsrc/meshing/adfront3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 tetrarls.o: libsrc/meshing/tetrarls.cpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 prism2rls.o: libsrc/meshing/prism2rls.cpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 pyramidrls.o: libsrc/meshing/pyramidrls.cpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 pyramid2rls.o: libsrc/meshing/pyramid2rls.cpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 netrule3.o: libsrc/meshing/netrule3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -607,6 +623,7 @@ netrule3.o: libsrc/meshing/netrule3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 ruler2.o: libsrc/meshing/ruler2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -649,6 +666,7 @@ ruler2.o: libsrc/meshing/ruler2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshclass.o: libsrc/meshing/meshclass.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -691,6 +709,7 @@ meshclass.o: libsrc/meshing/meshclass.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 improve2.o: libsrc/meshing/improve2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -733,6 +752,7 @@ improve2.o: libsrc/meshing/improve2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 smoothing2.o: libsrc/meshing/smoothing2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -775,6 +795,7 @@ smoothing2.o: libsrc/meshing/smoothing2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 adfront2.o: libsrc/meshing/adfront2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -817,6 +838,7 @@ adfront2.o: libsrc/meshing/adfront2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 netrule2.o: libsrc/meshing/netrule2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -859,7 +881,9 @@ netrule2.o: libsrc/meshing/netrule2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 triarls.o: libsrc/meshing/triarls.cpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 geomsearch.o: libsrc/meshing/geomsearch.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -902,6 +926,7 @@ geomsearch.o: libsrc/meshing/geomsearch.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 secondorder.o: libsrc/meshing/secondorder.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -944,6 +969,7 @@ secondorder.o: libsrc/meshing/secondorder.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshtype.o: libsrc/meshing/meshtype.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -986,6 +1012,7 @@ meshtype.o: libsrc/meshing/meshtype.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 parser3.o: libsrc/meshing/parser3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1028,6 +1055,7 @@ parser3.o: libsrc/meshing/parser3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshing2.o: libsrc/meshing/meshing2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1070,7 +1098,9 @@ meshing2.o: libsrc/meshing/meshing2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 quadrls.o: libsrc/meshing/quadrls.cpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 specials.o: libsrc/meshing/specials.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1113,6 +1143,7 @@ specials.o: libsrc/meshing/specials.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 parser2.o: libsrc/meshing/parser2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1155,6 +1186,7 @@ parser2.o: libsrc/meshing/parser2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshing3.o: libsrc/meshing/meshing3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1197,6 +1229,7 @@ meshing3.o: libsrc/meshing/meshing3.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshfunc.o: libsrc/meshing/meshfunc.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1239,6 +1272,7 @@ meshfunc.o: libsrc/meshing/meshfunc.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 localh.o: libsrc/meshing/localh.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1281,6 +1315,7 @@ localh.o: libsrc/meshing/localh.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 improve2gen.o: libsrc/meshing/improve2gen.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1323,6 +1358,7 @@ improve2gen.o: libsrc/meshing/improve2gen.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 delaunay.o: libsrc/meshing/delaunay.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1365,6 +1401,7 @@ delaunay.o: libsrc/meshing/delaunay.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 boundarylayer.o: libsrc/meshing/boundarylayer.cpp \
   libsrc/include/mystdlib.h libsrc/meshing/meshing.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -1407,6 +1444,7 @@ boundarylayer.o: libsrc/meshing/boundarylayer.cpp \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 msghandler.o: libsrc/meshing/msghandler.cpp libsrc/include/meshing.hpp \
   libsrc/include/../meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mystdlib.h \
@@ -1461,6 +1499,7 @@ msghandler.o: libsrc/meshing/msghandler.cpp libsrc/include/meshing.hpp \
   libsrc/include/../meshing/hprefinement.hpp \
   libsrc/include/../meshing/boundarylayer.hpp \
   libsrc/include/../meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshfunc2d.o: libsrc/meshing/meshfunc2d.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1503,6 +1542,7 @@ meshfunc2d.o: libsrc/meshing/meshfunc2d.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 topology.o: libsrc/meshing/topology.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1545,6 +1585,7 @@ topology.o: libsrc/meshing/topology.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 clusters.o: libsrc/meshing/clusters.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1587,6 +1628,7 @@ clusters.o: libsrc/meshing/clusters.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 curvedelems.o: libsrc/meshing/curvedelems.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1629,6 +1671,7 @@ curvedelems.o: libsrc/meshing/curvedelems.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 curvedelems2.o: libsrc/meshing/curvedelems2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1671,6 +1714,7 @@ curvedelems2.o: libsrc/meshing/curvedelems2.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \
   libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \
   libsrc/meshing/specials.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 hprefinement.o: libsrc/meshing/hprefinement.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -1715,6 +1759,7 @@ hprefinement.o: libsrc/meshing/hprefinement.cpp libsrc/include/mystdlib.h \
   libsrc/meshing/specials.hpp libsrc/meshing/hpref_trig.hpp \
   libsrc/meshing/hpref_quad.hpp libsrc/meshing/hpref_tet.hpp \
   libsrc/meshing/hpref_prism.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 nglib.o: libsrc/interface/nglib.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -1792,6 +1837,7 @@ nglib.o: libsrc/interface/nglib.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/include/../geom2d/spline2d.hpp \
   libsrc/include/../geom2d/splinegeometry2.hpp \
   libsrc/include/../geom2d/geom2dmesh.hpp libsrc/interface/nglib.h
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 geomtest3d.o: libsrc/gprim/geomtest3d.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -1820,6 +1866,7 @@ geomtest3d.o: libsrc/gprim/geomtest3d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/geomtest3d.hpp \
   libsrc/include/../gprim/transform3d.hpp \
   libsrc/include/../gprim/adtree.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 geom2d.o: libsrc/gprim/geom2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -1845,6 +1892,7 @@ geom2d.o: libsrc/gprim/geom2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/geomtest3d.hpp \
   libsrc/include/../gprim/transform3d.hpp \
   libsrc/include/../gprim/adtree.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 geom3d.o: libsrc/gprim/geom3d.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -1870,6 +1918,7 @@ geom3d.o: libsrc/gprim/geom3d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/geomtest3d.hpp \
   libsrc/include/../gprim/transform3d.hpp \
   libsrc/include/../gprim/adtree.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 adtree.o: libsrc/gprim/adtree.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -1895,6 +1944,7 @@ adtree.o: libsrc/gprim/adtree.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/geomtest3d.hpp \
   libsrc/include/../gprim/transform3d.hpp \
   libsrc/include/../gprim/adtree.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 transform3d.o: libsrc/gprim/transform3d.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -1923,6 +1973,7 @@ transform3d.o: libsrc/gprim/transform3d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \
   libsrc/include/../linalg/densemat.hpp \
   libsrc/include/../linalg/polynomial.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 geomfuncs.o: libsrc/gprim/geomfuncs.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -1948,6 +1999,7 @@ geomfuncs.o: libsrc/gprim/geomfuncs.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/geomtest3d.hpp \
   libsrc/include/../gprim/transform3d.hpp \
   libsrc/include/../gprim/adtree.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 polynomial.o: libsrc/linalg/polynomial.cpp libsrc/include/mystdlib.h \
   libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -1969,6 +2021,7 @@ polynomial.o: libsrc/linalg/polynomial.cpp libsrc/include/mystdlib.h \
   libsrc/include/../linalg/vector.hpp \
   libsrc/include/../linalg/densemat.hpp \
   libsrc/include/../linalg/polynomial.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 densemat.o: libsrc/linalg/densemat.cpp libsrc/include/mystdlib.h \
   libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -1990,7 +2043,9 @@ densemat.o: libsrc/linalg/densemat.cpp libsrc/include/mystdlib.h \
   libsrc/include/../linalg/vector.hpp \
   libsrc/include/../linalg/densemat.hpp \
   libsrc/include/../linalg/polynomial.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 vector.o: libsrc/linalg/vector.cpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 algprim.o: libsrc/csg/algprim.cpp libsrc/include/mystdlib.h \
   libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -2059,6 +2114,7 @@ algprim.o: libsrc/csg/algprim.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 brick.o: libsrc/csg/brick.cpp libsrc/include/mystdlib.h \
   libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -2127,6 +2183,7 @@ brick.o: libsrc/csg/brick.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 manifold.o: libsrc/csg/manifold.cpp libsrc/include/csg.hpp \
   libsrc/include/../csg/csg.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mystdlib.h \
@@ -2194,6 +2251,7 @@ manifold.o: libsrc/csg/manifold.cpp libsrc/include/csg.hpp \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 bspline2d.o: libsrc/csg/bspline2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/csg.hpp libsrc/include/../csg/csg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -2261,6 +2319,7 @@ bspline2d.o: libsrc/csg/bspline2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshsurf.o: libsrc/csg/meshsurf.cpp libsrc/include/mystdlib.h \
   libsrc/include/csg.hpp libsrc/include/../csg/csg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -2328,6 +2387,7 @@ meshsurf.o: libsrc/csg/meshsurf.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 csgeom.o: libsrc/csg/csgeom.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -2395,6 +2455,7 @@ csgeom.o: libsrc/csg/csgeom.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 polyhedra.o: libsrc/csg/polyhedra.cpp libsrc/include/mystdlib.h \
   libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -2463,6 +2524,7 @@ polyhedra.o: libsrc/csg/polyhedra.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 curve2d.o: libsrc/csg/curve2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -2530,6 +2592,7 @@ curve2d.o: libsrc/csg/curve2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 singularref.o: libsrc/csg/singularref.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -2597,6 +2660,7 @@ singularref.o: libsrc/csg/singularref.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 edgeflw.o: libsrc/csg/edgeflw.cpp libsrc/include/mystdlib.h \
   libsrc/include/meshing.hpp libsrc/include/../meshing/meshing.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -2663,6 +2727,7 @@ edgeflw.o: libsrc/csg/edgeflw.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 solid.o: libsrc/csg/solid.cpp libsrc/include/mystdlib.h \
   libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -2731,6 +2796,7 @@ solid.o: libsrc/csg/solid.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 explicitcurve2d.o: libsrc/csg/explicitcurve2d.cpp \
   libsrc/include/mystdlib.h libsrc/include/csg.hpp \
   libsrc/include/../csg/csg.hpp libsrc/include/myadt.hpp \
@@ -2799,6 +2865,7 @@ explicitcurve2d.o: libsrc/csg/explicitcurve2d.cpp \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 specpoin.o: libsrc/csg/specpoin.cpp libsrc/include/mystdlib.h \
   libsrc/include/meshing.hpp libsrc/include/../meshing/meshing.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -2865,6 +2932,7 @@ specpoin.o: libsrc/csg/specpoin.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 gencyl.o: libsrc/csg/gencyl.cpp libsrc/include/linalg.hpp \
   libsrc/include/../linalg/linalg.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mystdlib.h \
@@ -2933,6 +3001,7 @@ gencyl.o: libsrc/csg/gencyl.cpp libsrc/include/linalg.hpp \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 revolution.o: libsrc/csg/revolution.cpp libsrc/include/mystdlib.h \
   libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -3001,6 +3070,7 @@ revolution.o: libsrc/csg/revolution.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 genmesh.o: libsrc/csg/genmesh.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3068,6 +3138,7 @@ genmesh.o: libsrc/csg/genmesh.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 spline3d.o: libsrc/csg/spline3d.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3135,6 +3206,7 @@ spline3d.o: libsrc/csg/spline3d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 surface.o: libsrc/csg/surface.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3203,6 +3275,7 @@ surface.o: libsrc/csg/surface.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \
   libsrc/include/../linalg/linalg.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 identify.o: libsrc/csg/identify.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3270,6 +3343,7 @@ identify.o: libsrc/csg/identify.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 triapprox.o: libsrc/csg/triapprox.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3337,6 +3411,7 @@ triapprox.o: libsrc/csg/triapprox.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/extrusion.hpp \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 geom2dmesh.o: libsrc/geom2d/geom2dmesh.cpp libsrc/include/mystdlib.h \
   libsrc/include/csg.hpp libsrc/include/../csg/csg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -3408,6 +3483,7 @@ geom2dmesh.o: libsrc/geom2d/geom2dmesh.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/include/../geom2d/spline2d.hpp \
   libsrc/include/../geom2d/splinegeometry2.hpp \
   libsrc/include/../geom2d/geom2dmesh.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 spline2d.o: libsrc/geom2d/spline2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/csg.hpp libsrc/include/../csg/csg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -3476,6 +3552,7 @@ spline2d.o: libsrc/geom2d/spline2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \
   libsrc/include/../linalg/linalg.hpp libsrc/geom2d/spline2d.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 splinegeometry2.o: libsrc/geom2d/splinegeometry2.cpp \
   libsrc/include/mystdlib.h libsrc/include/csg.hpp \
   libsrc/include/../csg/csg.hpp libsrc/include/myadt.hpp \
@@ -3546,6 +3623,7 @@ splinegeometry2.o: libsrc/geom2d/splinegeometry2.cpp \
   libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \
   libsrc/include/../linalg/linalg.hpp libsrc/geom2d/spline2d.hpp \
   libsrc/geom2d/splinegeometry2.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 genmesh2d.o: libsrc/geom2d/genmesh2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/csg.hpp libsrc/include/../csg/csg.hpp \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
@@ -3617,6 +3695,7 @@ genmesh2d.o: libsrc/geom2d/genmesh2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/include/../geom2d/spline2d.hpp \
   libsrc/include/../geom2d/splinegeometry2.hpp \
   libsrc/include/../geom2d/geom2dmesh.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 meshstlsurface.o: libsrc/stlgeom/meshstlsurface.cpp \
   libsrc/include/mystdlib.h libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \
@@ -3676,6 +3755,7 @@ meshstlsurface.o: libsrc/stlgeom/meshstlsurface.cpp \
   libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \
   libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \
   libsrc/stlgeom/meshstlsurface.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 stlline.o: libsrc/stlgeom/stlline.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3734,6 +3814,7 @@ stlline.o: libsrc/stlgeom/stlline.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \
   libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \
   libsrc/stlgeom/meshstlsurface.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 stltopology.o: libsrc/stlgeom/stltopology.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3792,6 +3873,7 @@ stltopology.o: libsrc/stlgeom/stltopology.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \
   libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \
   libsrc/stlgeom/meshstlsurface.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 stltool.o: libsrc/stlgeom/stltool.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3850,6 +3932,7 @@ stltool.o: libsrc/stlgeom/stltool.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \
   libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \
   libsrc/stlgeom/meshstlsurface.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 stlgeom.o: libsrc/stlgeom/stlgeom.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3908,6 +3991,7 @@ stlgeom.o: libsrc/stlgeom/stlgeom.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \
   libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \
   libsrc/stlgeom/meshstlsurface.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 stlgeomchart.o: libsrc/stlgeom/stlgeomchart.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -3966,6 +4050,7 @@ stlgeomchart.o: libsrc/stlgeom/stlgeomchart.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \
   libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \
   libsrc/stlgeom/meshstlsurface.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 stlgeommesh.o: libsrc/stlgeom/stlgeommesh.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4024,6 +4109,7 @@ stlgeommesh.o: libsrc/stlgeom/stlgeommesh.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \
   libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \
   libsrc/stlgeom/meshstlsurface.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 moveablemem.o: libsrc/general/moveablemem.cpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mystdlib.h \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4041,6 +4127,7 @@ moveablemem.o: libsrc/general/moveablemem.cpp libsrc/include/myadt.hpp \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 ngexception.o: libsrc/general/ngexception.cpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mystdlib.h \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4058,6 +4145,7 @@ ngexception.o: libsrc/general/ngexception.cpp libsrc/include/myadt.hpp \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 table.o: libsrc/general/table.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4075,6 +4163,7 @@ table.o: libsrc/general/table.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 optmem.o: libsrc/general/optmem.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4092,6 +4181,7 @@ optmem.o: libsrc/general/optmem.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 spbita2d.o: libsrc/general/spbita2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4109,6 +4199,7 @@ spbita2d.o: libsrc/general/spbita2d.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 hashtabl.o: libsrc/general/hashtabl.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4126,6 +4217,7 @@ hashtabl.o: libsrc/general/hashtabl.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 sort.o: libsrc/general/sort.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4143,6 +4235,7 @@ sort.o: libsrc/general/sort.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 flags.o: libsrc/general/flags.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4160,6 +4253,7 @@ flags.o: libsrc/general/flags.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 seti.o: libsrc/general/seti.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4177,6 +4271,7 @@ seti.o: libsrc/general/seti.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 bitarray.o: libsrc/general/bitarray.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4194,6 +4289,7 @@ bitarray.o: libsrc/general/bitarray.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 array.o: libsrc/general/array.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4211,6 +4307,7 @@ array.o: libsrc/general/array.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 symbolta.o: libsrc/general/symbolta.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4228,6 +4325,7 @@ symbolta.o: libsrc/general/symbolta.cpp libsrc/include/mystdlib.h \
   libsrc/include/../general/autoptr.hpp \
   libsrc/include/../general/sort.hpp libsrc/include/../general/stack.hpp \
   libsrc/include/../general/mystring.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 mystring.o: libsrc/general/mystring.cpp libsrc/include/mystdlib.h \
   libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \
   libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \
@@ -4256,6 +4354,7 @@ mystring.o: libsrc/general/mystring.cpp libsrc/include/mystdlib.h \
   libsrc/include/../gprim/geomtest3d.hpp \
   libsrc/include/../gprim/transform3d.hpp \
   libsrc/include/../gprim/adtree.hpp
+# 1 "/Users/geuzaine/.gmsh/contrib/Netgen//"
 nglib_addon.o: nglib_addon.cpp libsrc/include/meshing.hpp \
   libsrc/include/../meshing/meshing.hpp libsrc/include/myadt.hpp \
   libsrc/include/../general/myadt.hpp libsrc/include/mystdlib.h \
diff --git a/doc/TODO b/doc/TODO
index 4107a08864b298aa1eb0b02071c36022f43a2e8d..97a260c683e43ef062aa63c73a5350739a5685d6 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -1,4 +1,4 @@
-$Id: TODO,v 1.18 2006-08-27 23:10:36 geuzaine Exp $
+$Id: TODO,v 1.19 2006-09-14 15:48:35 geuzaine Exp $
 
 ********************************************************************
 
@@ -49,45 +49,6 @@ element to element in a single surface? (TO BE CONFIRMED)
 
 ********************************************************************
 
-recompute bbox/axes depending on what is which entities are
-visible. (For meshes with no geometry: either store a bbox for each
-curve/surface/volume or loop over all elements.)
-
-********************************************************************
-
-- Fix nodes of surface elements in Tetgen (easy)
-- Extend Tetgen to multiple-volume geometries (hard)
-- Tetgen+partitions -> crash in BDS transfer
-
-********************************************************************
-
-allow mixed 1st/2nd order meshes (2nd order only where the geometry
-requires it). Add this as an advanced option since it will create
-meshes with hanging nodes.
-
-From: Julian Swartz <swartzjp@gmail.com>
-> I think that the feature may also fit under:
-> 
-> menu: Tool -> Options
-> select "Mesh"
-> tab "General"
-> then perhaps under "Generate second order elements" there could be an 
-> additional check box for "Generate second order elements only along 
-> curved boundaries".
->
-
-********************************************************************
-
-automatic exterior orientation of boundary surfaces (would greatly
-enhance Netgen/Frontal integration). One way is to compute the solid
-angle using the discretized surface. Another (probably more efficient
-way) is to select one element per surface loop, shoot a ray in both
-normal directions, and count the intersections with all other elements
-in the same surface: if we get 0 or an even number, the normal points
-outside. If we get an even number, it points inside.
-
-********************************************************************
-
 add an interactive way to choose the orientation of surfaces in
 surface loops and lines in line loops?
 
@@ -109,10 +70,6 @@ extruded+recombined surfaces to create Transfinite Volumes
 
 ********************************************************************
 
-add a mode to pick a mesh element with the mouse (a la medit)
-
-********************************************************************
-
 add option to cutmesh to cap the mesh instead of displaying "whole"
 elements
 
@@ -167,10 +124,6 @@ index-based format)
 
 ********************************************************************
 
-Test and reintroduce the cylindrical surfaces (cylinder, cone, torus)
-
-********************************************************************
-
 add parameter to transformation operations to copy the meshes
 
 ********************************************************************
@@ -198,11 +151,6 @@ be solved if we had dynamic labels?)
 
 ********************************************************************
 
-make Recombine work the same as "Second order"? (i.e., allow for
-interactive use?)
-
-********************************************************************
-
 The "Symmetry" operation should be renamed "Reflection" (?)
 
 ********************************************************************