libMesh integration
Dear @ufz/developer,
To inform you about the progress on checking libMesh
s build system:
- It uses a complex old
Makefile
-based build system with lots of magic happening --> Visual Studio is ruled out with this - But because the code itself does not use fancy new features it should compile on MSVC
- I started to create a CMake-based build systems on my Mac --> was able to build and run the simplest example program on Mac
- Building this on Windows does not work yet because some functionality needs to be adapted as some headers are not available on Windows (e.g.
/sys/time.h
) but this seems solvable
In conclusion I think that we can implement a CMake-based build system which then also compiles on Windows but only for a specific subset of libMesh
s functionality / configurations. Because of the limited scope I think this will not be a valuable contribution to the libMesh
-project itself and therefore will live only in our fork of libMesh
.
Check this for the necessary changes to libMesh
(ignore commit 16a88a1 which only duplicates header files).
Windows build progress:
-
base -
error_estimation -
fe -
geom -
mesh -
numerics -
parallel -
partitioning -
physics -
quadrature -
reduced_basis ( XDR
?) -
solution_transfer -
solvers -
systems ( XDR
?) -
utils ( unistd.h
,sys/utsname.h
,pwd.h
)
Missing Windows equivalents:
mkstemp()