From 0db6fda9532d78b26d13a65fbd2a6636258ac861 Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Sat, 19 Jan 2008 22:29:21 +0000
Subject: [PATCH] More header cleanups in preparation for embedding.

We now have a self-consistent API for the model foundation classes:
installing the following header files in a separate directory

gmsh/
 GEdge.h -> ../Geo/GEdge.h
 GEdgeLoop.h -> ../Geo/GEdgeLoop.h
 GEntity.h -> ../Geo/GEntity.h
 GFace.h -> ../Geo/GFace.h
 GModel.h -> ../Geo/GModel.h
 GPoint.h -> ../Geo/GPoint.h
 GRegion.h -> ../Geo/GRegion.h
 GVertex.h -> ../Geo/GVertex.h
 GmshDefines.h -> ../Common/GmshDefines.h
 MEdge.h -> ../Geo/MEdge.h
 MElement.h -> ../Geo/MElement.h
 MFace.h -> ../Geo/MFace.h
 MVertex.h -> ../Geo/MVertex.h
 Pair.h -> ../Geo/Pair.h
 Range.h -> ../Geo/Range.h
 SBoundingBox3d.h -> ../Geo/SBoundingBox3d.h
 SPoint2.h -> ../Geo/SPoint2.h
 SPoint3.h -> ../Geo/SPoint3.h
 SVector3.h -> ../Geo/SVector3.h

and compiling a single "libGmsh.a" lib with "make embed" we can link
a test.cpp program like this

#include <gmsh/GModel.h>

int main(int argc, char **argv)
{
  if(argc > 1){
    GModel *m = new GModel();
    m->readMSH(argv[1]);
    m->writeMSH("out.msh");
  }
}

with

g++ test.cpp -lGmsh -lgsl -lgslcblas
---
 Geo/MElement.h | 1 -
 Makefile       | 4 ++--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/Geo/MElement.h b/Geo/MElement.h
index f9c93b1436..bb7b4b9498 100644
--- a/Geo/MElement.h
+++ b/Geo/MElement.h
@@ -27,7 +27,6 @@
 #include "MVertex.h"
 #include "MEdge.h"
 #include "MFace.h"
-#include "Numeric.h"
 
 class GFace;
 
diff --git a/Makefile b/Makefile
index 9e046e06e2..0833139257 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.451 2008-01-19 22:05:58 geuzaine Exp $
+# $Id: Makefile,v 1.452 2008-01-19 22:29:21 geuzaine Exp $
 #
 # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 #
@@ -58,7 +58,7 @@ install-mac: variables package-mac
 	cp -rf gmsh-${GMSH_VERSION}/Gmsh.app /Applications
 	rm -rf gmsh-${GMSH_VERSION} gmsh-${GMSH_VERSION}-MacOSX.tgz
 
-install-lib: compile
+embed: compile
 	${AR} ${ARFLAGS}libGmsh${LIBEXT} lib/*${LIBEXT}
 	${RANLIB} libGmsh${LIBEXT}
 
-- 
GitLab