netgen/libsrc/meshing
Matthias Hochsteger f6a0b31b96 Cleanup CMake build system
- Use CMAKE_INSTALL_PREFIX instead of INSTALL_DIR
  - Allow finer control of install directories
  - Use compiled TCL code by default
  - Fix RPATH usage on Linux and MacOSX

### Allow finer control of install directories
The following variables can be set to either absolute or relative paths
NG_INSTALL_DIR_PYTHON: Python files
NG_INSTALL_DIR_BIN: Executables
NG_INSTALL_DIR_LIB: Libraries
NG_INSTALL_DIR_INCLUDE: header files
NG_INSTALL_DIR_CMAKE: CMake files
NG_INSTALL_DIR_RES: Resources

### Use compiled TCL code by default
The tcl files contained in Netgen are stored in onetcl.cpp as c-string.
This way it's not necessary to install tcl files or set NETGENDIR

### Fix RPATH usage on Linux and MacOSX
The Netgen installation should be completely relocatable now.

Squashed commit of the following:

commit 201eda5e62726bd87d76beb13c3e5643cd4c7810
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 21:10:08 2017 +0200

    cleanup

commit b4cd46a9d2f390b40c5223c8d9971f576b979644
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:47:46 2017 +0200

    fix

commit 6506a834dbee2fd7b6df3b3f3709d0b27344356f
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:41:45 2017 +0200

    allow gui test to fail

commit 56c5fc131f61259e6fb67b60f7fff955d2e8d2da
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 20:26:18 2017 +0200

    add python3-tk to docker images

commit 4d1b5aac1d028867339819599708a08f2098bbd6
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:22:18 2017 -0700

    windows fix

commit 92b5f8a95491ba3508143d7f1b94359edc0655ce
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:08:08 2017 -0700

    fix for windows

commit 3f7bf51434ef3b637b3563930ddb61d04af645cb
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 19:28:13 2017 +0200

    fixes, test for gui

commit ef1d0164a50fadf374e3b1e43a745b5f69a16ad6
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 19:06:55 2017 +0200

    fixes

commit 67645bb896012149c23c851b03287199c21fa129
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 17:24:58 2017 +0200

    netgen config

commit b587b77a282768719cffc366c56d82a1746e0be0
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 16:53:47 2017 +0200

    remove comments

commit 2b34cc78818afa1cf21484bd0976413a91db0851
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 05:03:00 2017 -0700

    fix windows

commit 9e98efa54065624e264eaf1acf74b44ef022a68d
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 13:42:11 2017 +0200

    fixes

commit 394b470a07d73431079f80caa36c7c7042077f40
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 12:24:40 2017 +0200

    fix rpath issue

commit 6787eae384a8592f90598258ccd8207cd499d9fc
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 11:37:05 2017 +0200

    some more fixes with install dir

commit fcf22659c60300e8d39d12e14b21c58a062e739c
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 01:34:06 2017 -0700

    some fixes

commit ede1f0c462978bb70d3b4e2251cb555a592e82e3
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 29 10:16:34 2017 +0200

    fixes

commit b6a1259876a77f54e419a44f1b44d03d5bb49b82
Merge: c79f9a3 6627b0b
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Wed May 24 09:35:50 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit c79f9a3421d4d2937c31dab4a601ce09d52b0e54
Merge: 99c3550 030ad1d
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Mon May 22 17:52:24 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit 99c35500850e08fdc847013bb384169b1483acb4
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 19 14:37:28 2017 +0200

    fix rpath

commit 8215e9748d9ee225266bc941da1ca252aebd27de
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Thu May 18 13:29:41 2017 +0200

    remove INSTALL_DIR, rename var to NETGEN_INSTALL_DIR_INCLUDE, install libngpy to python package folder

commit 23d028c4cf7572de9e2e277cda8f6b07b6b1d9f9
Merge: 57027c8 f72a247
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Thu May 18 12:03:59 2017 +0200

    Merge remote-tracking branch 'origin/master' into cmake_cleanup

commit 57027c8c706ff755bdf26887884bbdeca129fe8f
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 12 17:32:05 2017 +0200

    New CMake option: USE_INTERNAL_TCL (ON by default)

    This option uses the tcl code compiled in onetcl.cpp instead of separate
    tcl files by default. When set at configure time, no tcl files will be
    installed anymore.

commit 27ce5b7edd66d64e2453f5045f5ac08c313f7608
Author: Matthias Hochsteger <matthias.hochsteger@tuwien.ac.at>
Date:   Fri May 12 17:16:52 2017 +0200

    WIP: Cleanup of CMake files

      - Fix RPATH on Linux (TODO: other platforms)
      - New variables to specify install behaviour:
          NG_INSTALL_DIR_BIN
          NG_INSTALL_DIR_LIB
          NG_INSTALL_DIR_CMAKE
          NG_INSTALL_DIR_INCLUDE
2017-05-29 21:41:27 +02:00
..
adfront2.cpp Array::Append does not return size anymore ( will be changed to last ) 2016-12-11 18:22:07 +01:00
adfront2.hpp more use of PointIndex 2016-12-11 12:12:05 +01:00
adfront3.cpp Array::Append does not return size anymore ( will be changed to last ) 2016-12-11 18:22:07 +01:00
adfront3.hpp more use of PointIndex 2016-12-11 18:02:16 +01:00
basegeom.cpp firststep and laststep as meshingparameters to be exported to python 2016-12-05 13:50:21 +01:00
basegeom.hpp firststep and laststep as meshingparameters to be exported to python 2016-12-05 13:50:21 +01:00
bcfunctions.cpp OpenCascade for Windows 2016-04-04 10:18:38 +02:00
bcfunctions.hpp OpenCascade for Windows 2016-04-04 10:18:38 +02:00
bisect.cpp default constructable/movable tet for bisection-refinement 2017-04-18 08:43:23 +02:00
bisect.hpp started task-manager in netgen (topology) 2016-08-18 00:49:47 +02:00
boundarylayer.cpp consistent vertex->elements (1D/2D/3D) tables 2016-03-22 07:28:11 +01:00
boundarylayer.hpp everything in one big dll on Windows 2015-10-19 10:08:30 +02:00
classifyhpel.hpp reduced memory requirement for the setup of topology faces 2009-10-27 18:14:45 +00:00
clusters.cpp more parallel 2017-04-06 21:41:26 +02:00
clusters.hpp parallel clusters 2016-11-20 19:55:17 +01:00
CMakeLists.txt Cleanup CMake build system 2017-05-29 21:41:27 +02:00
curvedelems.cpp Fix (or work around?) strange bug on Windows 2017-02-16 09:12:45 +01:00
curvedelems.hpp simd-mapping also for 2D 2016-07-11 18:27:44 +02:00
delaunay2d.cpp 2d Delaunay, array-iterators 2014-12-02 13:23:36 +00:00
delaunay.cpp more use of PointIndex 2016-12-11 12:12:05 +01:00
findip2.hpp ARRAY -> Array 2009-01-25 12:35:25 +00:00
findip.hpp extrusion fixes, reduce warnings 2009-04-19 21:15:26 +00:00
geomsearch.cpp improved usage of PointIndex 2013-04-02 20:29:53 +00:00
geomsearch.hpp improved usage of PointIndex 2013-04-02 20:29:53 +00:00
global.cpp GUI support from Python 2017-05-08 16:42:49 +02:00
global.hpp Apply patches for OpenCasCade 7 by Lorenz Lechner 2017-01-31 19:21:25 +01:00
hexarls.cpp fixes for hex-filling 2016-04-20 08:11:59 +02:00
hpref_hex.hpp autotools 2009-01-12 23:40:13 +00:00
hpref_prism.hpp autotools 2009-01-12 23:40:13 +00:00
hpref_pyramid.hpp autotools 2009-01-12 23:40:13 +00:00
hpref_quad.hpp autotools 2009-01-12 23:40:13 +00:00
hpref_segm.hpp autotools 2009-01-12 23:40:13 +00:00
hpref_tet.hpp autotools 2009-01-12 23:40:13 +00:00
hpref_trig.hpp autotools 2009-01-12 23:40:13 +00:00
hprefinement.cpp eliminate warnings 2014-08-19 19:58:36 +00:00
hprefinement.hpp everything in one big dll on Windows 2015-10-19 10:08:30 +02:00
improve2.cpp 2d Delaunay, array-iterators 2014-12-02 13:23:36 +00:00
improve2.hpp eliminate warnings 2014-08-19 19:58:36 +00:00
improve2gen.cpp improved usage of PointIndex 2013-04-02 20:29:53 +00:00
improve3.cpp default constructors assignment operators, cheaper Array-Resize 2017-04-11 21:06:30 +02:00
improve3.hpp remove missing 2014-08-19 11:01:15 +00:00
localh.cpp 2d Delaunay, array-iterators 2014-12-02 13:23:36 +00:00
localh.hpp 2d Delaunay, array-iterators 2014-12-02 13:23:36 +00:00
meshclass.cpp default material name 2017-05-13 10:24:12 +02:00
meshclass.hpp default material name 2017-05-13 10:24:12 +02:00
meshfunc2d.cpp 2d Delaunay, array-iterators 2014-12-02 13:23:36 +00:00
meshfunc.cpp Squashed commit of the following: 2017-02-23 16:41:27 +01:00
meshfunc.hpp geometry restructuring 2011-01-10 20:18:01 +00:00
meshing2.cpp improved usage of PointIndex 2013-04-02 20:29:53 +00:00
meshing2.hpp non-global variable mparam 2011-07-25 11:33:19 +00:00
meshing3.cpp make Element default constructable/movable 2017-04-13 10:40:47 +02:00
meshing3.hpp more use of PointIndex 2016-12-11 18:02:16 +01:00
meshing.hpp __assume for switch (element_type) 2016-01-07 13:37:57 +01:00
meshtool.cpp closed modules 2014-08-30 00:15:59 +00:00
meshtool.hpp closed modules 2014-08-30 00:15:59 +00:00
meshtype.cpp make Element default constructable/movable 2017-04-13 10:40:47 +02:00
meshtype.hpp make Element default constructable/movable 2017-04-13 10:40:47 +02:00
msghandler.cpp meshing from python in 2d 2015-08-08 13:02:54 +02:00
msghandler.hpp dll_headers for geometry dll (only 2D yet) 2011-03-03 21:42:20 +00:00
netrule2.cpp fix bug found by Evan VanderZee 2016-01-30 21:57:40 +01:00
netrule3.cpp on the way to thread-save meshing 2011-07-25 08:40:23 +00:00
parallelmesh.cpp adapt parallelmesh.cpp to commit 90d4c940 (topology is a member of Mesh (rather than pointer)...) 2017-03-07 10:43:38 +01:00
paralleltop.cpp optimization of parallel topology 2016-03-07 22:25:53 +01:00
paralleltop.hpp mpi distant-procs 2014-12-02 21:50:38 +00:00
parser2.cpp default constructors assignment operators, cheaper Array-Resize 2017-04-11 21:06:30 +02:00
parser3.cpp default constructors assignment operators, cheaper Array-Resize 2017-04-11 21:06:30 +02:00
prism2rls_2.cpp autotools 2009-01-12 23:40:13 +00:00
prism2rls.cpp autotools 2009-01-12 23:40:13 +00:00
pyramid2rls.cpp autotools 2009-01-12 23:40:13 +00:00
pyramidrls.cpp autotools 2009-01-12 23:40:13 +00:00
python_mesh.cpp Cleanup CMake build system 2017-05-29 21:41:27 +02:00
quadrls.cpp autotools 2009-01-12 23:40:13 +00:00
refine.cpp make Element default constructable/movable 2017-04-13 10:40:47 +02:00
ruler2.cpp Array::Append does not return size anymore ( will be changed to last ) 2016-12-11 18:22:07 +01:00
ruler2.hpp curved elements access functions 2010-07-20 20:04:16 +00:00
ruler3.cpp fix 0/1 base 2016-12-12 23:01:21 +01:00
ruler3.hpp ARRAY -> Array 2009-01-25 12:35:25 +00:00
secondorder.cpp make Element default constructable/movable 2017-04-13 10:40:47 +02:00
smoothing2.5.cpp remove some warnings 2014-08-15 15:19:10 +00:00
smoothing2.cpp 2d Delaunay, array-iterators 2014-12-02 13:23:36 +00:00
smoothing3.cpp default constructors assignment operators, cheaper Array-Resize 2017-04-11 21:06:30 +02:00
specials.cpp improved usage of PointIndex 2013-04-02 20:29:53 +00:00
specials.hpp everything in one big dll on Windows 2015-10-19 10:08:30 +02:00
tetrarls.cpp autotools 2009-01-12 23:40:13 +00:00
topology.cpp make Topology a member of Mesh (rather then pointer) to reduce number of pointer dereferencing steps. This required move operators for Array and Table. 2017-02-25 19:48:37 +01:00
topology.hpp make Topology a member of Mesh (rather then pointer) to reduce number of pointer dereferencing steps. This required move operators for Array and Table. 2017-02-25 19:48:37 +01:00
triarls.cpp fix meshing rule 2015-11-19 12:30:37 +01:00
validate.cpp non-global variable mparam 2011-07-25 11:33:19 +00:00
validate.hpp meshing headers 2011-03-02 20:50:39 +00:00