HDF5 exposed in public interface but libraries marked as private in CMakeLists.txt
Issue #911
resolved
HDF5 is exposed publicly in dolfin/io/HDF5Interface.h
, but the HDF5 libraries are marked a PRIVATE
in dolfin/CMakeLists.txt
. This can causes link failures.
Should HDF5 be exposed or hidden in the public interface? @chris_richardson @michalhabera
Comments (5)
-
reporter -
reporter - changed milestone to 2017.2
-
I think it should not be exposed. It's exposition is called
HDF5Interface.h
. We should forward-declare hdf5 classes and methods and #include in source file or we should apply "pimpl" idiom.HDF5 is also exposed in
XDMFFile.h
. -
This could be simply solved if methods are un-inlined and put to
HDF5Interface.cpp
. Any ideas how important is inline optimization here, @garth-wells ? Is not explicit inlining prohibited by some compiler setting? -
reporter - changed status to resolved
Made public in
dolfin/CMakeLists.txt
. - Log in to comment
@chris_richardson @michalhabera ?