@pouillon I want to get this off our list so I am going to just merge it after you merge this PR. FWIW, there are a couple of linking errors I had to fix:
/usr/local/software/jureca/Stages/Devel-2019a/software/ifort/2019.3.199-GCC-8.3.0/compilers_and_libraries_2019.3.199/linux/bin/intel64/ifort -L/usr/local/software/jureca/Stages/Devel-2019a/software/icc/2019.3.199-GCC-8.3.0/lib/intel64 -L/usr/local/software/jureca/Stages/Devel-2019a/software/imkl/2019.3.199-iimpi-2019a/lib -L/usr/local/software/jureca/Stages/Devel-2019a/software/imkl/2019.3.199-iimpi-2019a/mkl/lib/intel64 -L/usr/local/software/jureca/Stages/Devel-2019a/software/imkl/2019.3.199-iimpi-2019a/lib -O2 -xHost -ftz -fp-speculation=safe -fp-model source CMakeFiles/esl-demo.X.dir/src/main/basis.F90.o CMakeFiles/esl-demo.X.dir/src/main/density.F90.o CMakeFiles/esl-demo.X.dir/src/main/hamiltonian.F90.o CMakeFiles/esl-demo.X.dir/src/main/main.F90.o CMakeFiles/esl-demo.X.dir/src/main/next_step.F90.o CMakeFiles/esl-demo.X.dir/src/main/scf.F90.o CMakeFiles/esl-demo.X.dir/src/main/system.F90.o -o bin/esl-demo.X -L/usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpifort.so -L/usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/release/libmpi.so -L/lib64/libdl.so -L/lib64/librt.so -L/lib64/libpthread.so -Wl,-rpath,/usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpifort.so:/usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/release/libmpi.so:/lib64/libdl.so:/lib64/librt.so:/lib64/libpthread.so: lib64/libac.a lib64/libpw.a lib64/libcommon.a -lfdf -lPSolver-1 -lfutile-1 -lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lyaml -ldl -lrt -liomp5 -lpthread -lpspiof -lpspio -lgridxc_mpi -lxc lib64/libgridxc_handlers.a -lfftw3 -lgsl -lgslcblas -lm -liomp5 -lpthread lib64/libesldmpi.a /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpifort.so /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/release/libmpi.so /lib64/libdl.so /lib64/librt.so -lpthread /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpicxx.so /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpifort.so /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/release/libmpi.so /lib64/libdl.so /lib64/librt.so -lpthread -lflookall lib64/libelsi_rci.a -lpspiof -lpspio -lgridxc_mpi -lxc -lfftw3 -lgsl -lgslcblas -lm /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpifort.so /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/release/libmpi.so /lib64/libdl.so /lib64/librt.so -lpthread /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpicxx.so /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpifort.so /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/release/libmpi.so /lib64/libdl.so /lib64/librt.so -lpthread /usr/local/software/jureca/Stages/Devel-2019a/software/impi/2019.3.199-iccifort-2019.3.199-GCC-8.3.0/intel64/lib/libmpicxx.so -lflookall -lfdict -lstdc++
(see that I manually added -lfdict -lstdc++
at the end). The linking with ELSI also wasn't working, but I didn't bother trying to fix it. That was with the ESL bundle provided via easyconfigs. I expect that with the correct pkgconfig files both linking errors would be fine.
The test suite also did not run due to a missing reference directory in the utils dir. But regardless, the test cases didn't work great for me anyway.
I think at the moment it is not worth our time trying to get this stuff sorted, so I will just merge the module as is.