-The Netgen 4.3 from the web location : http://www.hpfem.jku.at/netgen/ is used
-in the SMESH Module of Salome2 distribution.
+The Netgen 4.5 from the web location : http://www.hpfem.jku.at/netgen/
+(CVS access) is used in the SMESH Module of Salome3 distribution.
How to build Netgen for Salome
------------------------------
-Patch the official netgen 4.3 distribution:
+Patch the netgen 4.5 distribution:
-$ cd netgen43
-$ patch -p1 < patch_directory/netgen43ForSalome.patch
+$ cd netgen45
+$ patch -p1 < patch_directory/netgen45ForSalome.patch
-Then run makeForSalome.sh:
+Then run makeForSalome.sh (it will be created by the patch):
$ sh makeForSalome.sh
Additional information for maintainers
--------------------------------------
-The SMESH Engine of SALOME2 (particularly the m4 file check_Netgen.m4) assume
+The file check_NETGENPLUGIN.m4 assumes
that Netgen is installed in the directory <netgen_installation_path> as follow:
prompt> ls <netgen_installation_path>
-bin/ cshrc_for_netgen doc/ include/ lib/ tutorials/
-
-prompt> ls <netgen_installation_path>/bin
-
-LINUX/
-
-prompt> ls <netgen_installation_path>/bin/LINUX/
-
-demoapp/ ng ng.tcl ngtcltk/ startup.tcl
-
-prompt> ls <netgen_installation_path>/bin/LINUX/demoapp/
-
-demoapp.tcl
-
-prompt> ls <netgen_installation_path>/bin/LINUX/ngtcltk/
-
-dialog.tcl menustat.tcl ngicon.tcl parameters.tcl
-drawing.tcl nghelp.tcl ngvisual.tcl variables.tcl
-
-prompt> ls <netgen_installation_path>/doc/
-
-ng4.pdf usenetgen.ps
-
-prompt> ls <netgen_installation_path>/include/
-
-nglib.h
-
-prompt> ls <netgen_installation_path>/lib/
+include/ lib/
+
+prompt> ls <netgen_installation_path>/include
+
+adfront2.hpp explicitcurve2d.hpp hpref_quad.hpp myadt.hpp spbita2d.hpp
+adfront3.hpp extrusion.hpp hpref_segm.hpp mydefs.hpp specials.hpp
+adtree.hpp findip.hpp hpref_tet.hpp mystdlib.h specpoin.hpp
+algprim.hpp findip2.hpp hpref_trig.hpp mystring.hpp spline.hpp
+array.hpp flags.hpp hprefinement.hpp ngexception.hpp spline2d.hpp
+autoptr.hpp gencyl.hpp identify.hpp nglib.h spline3d.hpp
+basemat.hpp geom2d.hpp improve2.hpp occgeom.hpp splinegeometry.hpp
+bisect.hpp geom2dmesh.hpp improve3.hpp occmeshsurf.hpp splinegeometry2.hpp
+bitarray.hpp geom3d.hpp linalg.hpp opti.hpp stack.hpp
+boundarylayer.hpp geometry2d.hpp localh.hpp optmem.hpp stlgeom.hpp
+brick.hpp geomfuncs.hpp manifold.hpp parthreads.hpp stlline.hpp
+classifyhpel.hpp geoml.hpp meshclass.hpp polyhedra.hpp stltool.hpp
+clusters.hpp geomobjects.hpp meshfunc.hpp polynomial.hpp stltopology.hpp
+csg.hpp geomops.hpp meshing.hpp profiler.hpp surface.hpp
+csgeom.hpp geomsearch.hpp meshing2.hpp revolution.hpp symbolta.hpp
+csgparser.hpp geomtest3d.hpp meshing3.hpp ruler2.hpp table.hpp
+curve2d.hpp global.hpp meshstlsurface.hpp ruler3.hpp template.hpp
+curvedelems.hpp gprim.hpp meshsurf.hpp seti.hpp topology.hpp
+curvedelems_new.hpp hashtabl.hpp meshtool.hpp singularref.hpp transform3d.hpp
+densemat.hpp hpref_hex.hpp meshtype.hpp solid.hpp triapprox.hpp
+dynamicmem.hpp hpref_prism.hpp moveablemem.hpp sort.hpp vector.hpp
+edgeflw.hpp hpref_pyramid.hpp msghandler.hpp sparsmat.hpp
+
+prompt> ls <netgen_installation_path>/lib
LINUX/
-prompt> ls <netgen_installation_path>/lib/LINUX/
+prompt> ls <netgen_installation_path>/lib/LINUX
-libcsg.a libgeom2d.a libla.a libnginterface.a libstlgeom.a
-libgen.a libgprim.a libmesh.a libopti.a libvis.a
+libcsg.a libgeom2d.a libla.a libnginterface.a libopti.a
+libgen.a libgprim.a libmesh.a libocc.a libstlgeom.a
-prompt> ls <netgen_installation_path>/tutorials/
-
-boxcyl.geo cylinder.geo ficherea.geo part1.stl square.in2d
-cone.geo cylsphere.geo hinge.stl sculpture.geo trafo.geo
-cubeandspheres.geo demo2d.in2d lshape3d.geo shaft.geo twobricks.geo
-cube.geo ellipsoid.geo manyholes.geo sphere.geo twocubes.geo
-cubemcyl.geo ellipticcyl.geo matrix.geo sphereincube.geo twocyl.geo
-cubemsphere.geo
-
-All *.tcl files are needed to control and initiate the Netgen mesher throughout its
-MHI (Machine Human Interface).<netgen_installation_path>/bin/LINUX/ng is the Netgen
-executable with its embarked MHI. All the libraries *.a should be compiled without
-the option -DOPENGL which is only needed for the Netgen MHI. netgen43 is assumed to
-be the directory downloaded from the above web location archive of Netgen. The library
+All the libraries *.a should be compiled without the option -DOPENGL.
+netgen45 is assumed to be the directory downloaded from the above web
+location archive of Netgen. The library
<netgen_installation_path>/lib/LINUX/libnginterface.a should contain the objects
-nglib.o (from netgen43/libsrc/interface/nglib.cpp) and ngnewdelete.o
-(from netgen43/ngtcltk/ngnewdelete.cpp).
+nglib.o (from netgen45/libsrc/interface/nglib.cpp) and ngnewdelete.o
+(from netgen45/ngtcltk/ngnewdelete.cpp).
To have that kind of distribution from the version in the above web location you
-should first compile Netgen as suggested in the netgen43/README.INSTALL file. It will
-then produce the executable ng linked statically with the libraries *.a. Then modify
-the Makefiles to remove -DOPENGL from compiler flags list, add the objects nglib.o
-and ngnewdelete.o to the library libnginterface.a and recompile the libraries only.
-
-From the above web location perhaps, you will have to alter some Netgen sources to
-compile them; if you find any difficulties to do that, just ask me.
-
-Nadir
-
-********************************
-* Dr Nadir Bouhamou *
-* Ingénieur-chercheur *
-* Engineer-Researcher *
-* *
-* CEA Saclay *
-* DEN/DM2S/SFME/LGLS *
-* Bat 454 Pièce 5A *
-* 91191 Gif-Sur-Yvette cédex *
-* *
-* Tél: +33 (0)1 69 08 73 07 *
-* Fax: +33 (0)1 69 08 96 96 *
-* email: nadir.bouhamou@cea.fr *
-********************************
+need not to compile Netgen as suggested in the netgen45/README.INSTALL file.
+Simply modify the Makefiles to remove -DOPENGL from compiler flags
+list and to add OCC include dir and flags to compiler flags, add the objects
+nglib.o and ngnewdelete.o to the library libnginterface.a and
+recompile the libraries only.
+All this job is done by applying the patch and running the script makeForSalome.sh.
+
+Th suggested patch alters some Netgen sources to compile them.
+
+Michael SAZONOV
+m-sazonov@opencascade.com