Skip to content
  • Célestin Marot's avatar
    update hxt: · f0bcc41c
    Célestin Marot authored
    The *hxt* standalone repos that we are maintaining on a private Gitlab
    is becoming a total mess IMO. Therefore, as I'm at the end of my
    thesis and I want to distribute the *hxt* library in a "clean" manner,
    I thought I could maybe clean the *hxt* directory in *contrib*, and
    make it so that we can compile things independently. Therefore, I
    created this huge commit.
    
     - Keep a directory structure, even if it is in contrib.
       Each part of *hxt* has its own CMakeList.txt, and is compiled
       by gmsh as an OBJECT library target.
       Each target can be separately compiled.
       For example, you can go in *contrib/hxt/tetMesh* and do
       `mkdir build && cd build && cmake .. && make -j4`
     - Files that were not used by gmsh were deleted.
       Metis was actually not used.
     - tetMesh was updated to the newest version
     - hxt_octree.cpp was almost entirely surrounded by `#ifdef HAVE_P4EST`
       and it was throwing an error if it wasn't the case
       Therefore, I change that so that HAVE_P4EST was a prerequisite for
       the compilation.
     - You might notice cmake_minimum_required in *hxt* is version 3.9
       to enable target_compile_features(... c_std_99)
       I doubt that people who wants to have HXT_ENABLED AND
       have a compiler with OpenMP 4+ and C99 AND have the latest version
       of Gmsh will have problem installing a newer version of CMake.
    f0bcc41c