The result of the function filter_lib_list(... debug optimized) (cmake/plugins.cmake) will differ depending on order of libraries:
AB yields: hdf5::hdf5-shared;/mylibs/debug/libxml2.lib
BA yields: /mylibs/debug/libxml2.lib
Context
This behavior was discovered while trying to restore a broken MSVS UDA build. With CMake 3.23, HDF5_LIBRARIES seems to contain hdf5::hdf5-shared rather than a list of libraries accompanied by the library type. Since hdf5::hdf5-shared was listed at the end, it was not included among the dependencies and the build failed.
Problem
Consider the following libraries:
hdf5::hdf5-shared
debug;/mylibs/debug/libxml2.lib;optimized;/mylibs/libxml2.lib
The result of the function
filter_lib_list(... debug optimized)
(cmake/plugins.cmake
) will differ depending on order of libraries:hdf5::hdf5-shared;/mylibs/debug/libxml2.lib
/mylibs/debug/libxml2.lib
Context
This behavior was discovered while trying to restore a broken MSVS UDA build. With CMake 3.23,
HDF5_LIBRARIES
seems to containhdf5::hdf5-shared
rather than a list of libraries accompanied by the library type. Sincehdf5::hdf5-shared
was listed at the end, it was not included among the dependencies and the build failed.