[patch] libdl - linking with the correct library

Not all Unix platforms have a libdl. FreeBSD, for example, has the
libdl symbols as part of libc. CMake provides ${CMAKE_DL_LIBS} which
contains the library to link with, which should be preferred over
linking explicitly with libdl. With this patch applied (against
1.10.1), it's possible to build on FreeBSD and other Unix systems
without libdl.

Incidentally, this should really be using

   "target_link_libraries(${target} PRIVATE ${CMAKE_DL_LIBS})"

because it's not part of the exported link interface, and is only used
as an implementation detail of a single source file. However, this
would require making all your uses of target_link_libraries use
PUBLIC>PRIVATE>INTERFACE, which is a bigger change. However, it's
something you could consider doing as a followup step.

By the way, is there a public git/svn/other repo for tracking
development rather than producing diffs against the last release?

Regards,
Roger

Patch follows:

diff -urN hdf5-1.10.1.orig/src/CMakeLists.txt hdf5-1.10.1/src/CMakeLists.txt
--- hdf5-1.10.1.orig/src/CMakeLists.txt 2017-04-13 18:26:11.000000000 +0100
+++ hdf5-1.10.1/src/CMakeLists.txt 2017-12-04 16:39:11.428808794 +0000
@@ -880,7 +880,7 @@
  TARGET_C_PROPERTIES (${HDF5_LIB_TARGET} STATIC " " " ")
  target_link_libraries (${HDF5_LIB_TARGET} ${LINK_LIBS})
  if (NOT WIN32)
- target_link_libraries (${HDF5_LIB_TARGET} dl)
+ target_link_libraries (${HDF5_LIB_TARGET} ${CMAKE_DL_LIBS})
  endif ()
  if (H5_HAVE_PARALLEL AND MPI_C_FOUND)
    target_link_libraries (${HDF5_LIB_TARGET} ${MPI_C_LIBRARIES})
@@ -924,7 +924,7 @@
    TARGET_C_PROPERTIES (${HDF5_LIBSH_TARGET} SHARED " " " ")
    target_link_libraries (${HDF5_LIBSH_TARGET} ${LINK_SHARED_LIBS})
    if (NOT WIN32)
- target_link_libraries (${HDF5_LIBSH_TARGET} dl)
+ target_link_libraries (${HDF5_LIBSH_TARGET} ${CMAKE_DL_LIBS})
    endif ()
    if (H5_HAVE_PARALLEL AND MPI_C_FOUND)
      target_link_libraries (${HDF5_LIBSH_TARGET} ${MPI_C_LIBRARIES})

···

--
Dr Roger Leigh -- Open Microscopy Environment
Wellcome Trust Centre for Gene Regulation and Expression,
College of Life Sciences, University of Dundee, Dow Street,
Dundee DD1 5EH Scotland UK Tel: (01382) 386364

The University of Dundee is a registered Scottish Charity, No: SC015096

Thank you for your contribution, we are always looking for ways to improve the CMake code.
I have just recently updated the target_link_libraries calls to use the interface keywords and have now added this suggestion to that change.

Thank you for sharing!
Allen

···

On Monday, December 4, 2017 11:06:07 AM CST Roger Leigh wrote:

Not all Unix platforms have a libdl. FreeBSD, for example, has the
libdl symbols as part of libc. CMake provides ${CMAKE_DL_LIBS} which
contains the library to link with, which should be preferred over
linking explicitly with libdl. With this patch applied (against
1.10.1), it's possible to build on FreeBSD and other Unix systems
without libdl.

Incidentally, this should really be using

   "target_link_libraries(${target} PRIVATE ${CMAKE_DL_LIBS})"

because it's not part of the exported link interface, and is only used
as an implementation detail of a single source file. However, this
would require making all your uses of target_link_libraries use
PUBLIC>PRIVATE>INTERFACE, which is a bigger change. However, it's
something you could consider doing as a followup step.

By the way, is there a public git/svn/other repo for tracking
development rather than producing diffs against the last release?

Regards,
Roger

Patch follows:

diff -urN hdf5-1.10.1.orig/src/CMakeLists.txt hdf5-1.10.1/src/CMakeLists.txt
--- hdf5-1.10.1.orig/src/CMakeLists.txt 2017-04-13 18:26:11.000000000 +0100
+++ hdf5-1.10.1/src/CMakeLists.txt 2017-12-04 16:39:11.428808794 +0000
@@ -880,7 +880,7 @@
  TARGET_C_PROPERTIES (${HDF5_LIB_TARGET} STATIC " " " ")
  target_link_libraries (${HDF5_LIB_TARGET} ${LINK_LIBS})
  if (NOT WIN32)
- target_link_libraries (${HDF5_LIB_TARGET} dl)
+ target_link_libraries (${HDF5_LIB_TARGET} ${CMAKE_DL_LIBS})
  endif ()
  if (H5_HAVE_PARALLEL AND MPI_C_FOUND)
    target_link_libraries (${HDF5_LIB_TARGET} ${MPI_C_LIBRARIES})
@@ -924,7 +924,7 @@
    TARGET_C_PROPERTIES (${HDF5_LIBSH_TARGET} SHARED " " " ")
    target_link_libraries (${HDF5_LIBSH_TARGET} ${LINK_SHARED_LIBS})
    if (NOT WIN32)
- target_link_libraries (${HDF5_LIBSH_TARGET} dl)
+ target_link_libraries (${HDF5_LIBSH_TARGET} ${CMAKE_DL_LIBS})
    endif ()
    if (H5_HAVE_PARALLEL AND MPI_C_FOUND)
      target_link_libraries (${HDF5_LIBSH_TARGET} ${MPI_C_LIBRARIES})

--
Dr Roger Leigh -- Open Microscopy Environment
Wellcome Trust Centre for Gene Regulation and Expression,
College of Life Sciences, University of Dundee, Dow Street,
Dundee DD1 5EH Scotland UK Tel: (01382) 386364

The University of Dundee is a registered Scottish Charity, No: SC015096

_______________________________________________
Hdf-forum is for HDF software users discussion.
Hdf-forum@lists.hdfgroup.org
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5

Unfortunately, my testing is showing that hdf5 is still broken due to
the command line length limits being too short
(https://ci.openmicroscopy.org/view/Files/job/OME-FILES-CPP-DEV-merge-win-superbuild/VSARCH=x64,VSCONFIG=Release,VSVERSION=14,label=maxquant-ome/823/consoleText):

[1500/2985] Generating th5s.h5
FAILED: cmd.exe /C "cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-help1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-help1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd3.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd3.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd4.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd4.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd5.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd5.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-dset1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-dset1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-dset2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-dset2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-dset-nomax.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-dset-nomax.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-dset-none.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-dset-none.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-file.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-file.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-poll.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-poll.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-poll0.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-poll0.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-width.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-width.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-esc.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-esc.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-esc-f1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-esc-f3.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-esc-ff2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-f1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-f1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-f2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-f2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-ff3.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-ff3.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-label.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-label.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-two.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-two.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-two-f1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-two-f3.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-two-ff2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-early.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-early.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-late.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-late.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-one.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-one.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-one-d.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-one-d.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-one-simple.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-one-simple.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-two.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-two.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-two-d.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-two-d.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-two-width.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-two-width.ddl"

I reported this to you, with a demonstration of how fix it, last year
(8th August 2016, "Compile and test failures with hdf5-1.10.0-patch1").

This is on Windows, VS2015 x64, with the Ninja generator.

I can make a full patch for this, but it would need to be against the
current state of your codebase. Is that available anywhere?

Regards,
Roger

The University of Dundee is a registered Scottish Charity, No: SC015096

···

On 04/12/2017 18:52, Allen Byrne wrote:

Thank you for your contribution, we are always looking for ways to improve the CMake code.
I have just recently updated the target_link_libraries calls to use the interface keywords and have now added this suggestion to that change.

Copying changes have been incorporated into our development code. There has not been a new release of 1.10.
1.8.20 has just been released, which should have most of the CMake changes that are in our development repo.

Allen

···

On Monday, December 4, 2017 3:01:06 PM CST Roger Leigh wrote:

On 04/12/2017 18:52, Allen Byrne wrote:
> Thank you for your contribution, we are always looking for ways to improve the CMake code.
> I have just recently updated the target_link_libraries calls to use the interface keywords and have now added this suggestion to that change.

Unfortunately, my testing is showing that hdf5 is still broken due to
the command line length limits being too short
(https://ci.openmicroscopy.org/view/Files/job/OME-FILES-CPP-DEV-merge-win-superbuild/VSARCH=x64,VSCONFIG=Release,VSVERSION=14,label=maxquant-ome/823/consoleText):

[1500/2985] Generating th5s.h5
FAILED: cmd.exe /C "cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-help1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-help1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd3.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd3.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd4.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd4.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-cmpd5.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-cmpd5.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-dset1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-dset1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-dset2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-dset2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-dset-nomax.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-dset-nomax.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-dset-none.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-dset-none.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-file.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-file.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-poll.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-poll.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-poll0.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-poll0.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-err-width.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-err-width.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-esc.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-esc.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-esc-f1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-esc-f1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-esc-f3.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-esc-f3.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-esc-ff2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-esc-ff2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-f1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-f1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-f2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-f2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-ff3.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-ff3.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-label.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-label.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-two.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-two.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-two-f1.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-two-f1.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-two-f3.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-two-f3.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-cmpd-two-ff2.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-cmpd-two-ff2.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-early.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-early.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-late.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-late.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-one.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-one.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-one-d.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-one-d.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-one-simple.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-one-simple.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-two.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-two.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-two-d.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-two-d.ddl
&& cd /D
D:\build\OME-FILES-CPP-DEV-merge-win-superbuild\af9fc46c\build\hdf5-build\hl\tools\h5watch
&& "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-source/hl/tools/testfiles/w-ext-two-width.ddl
D:/build/OME-FILES-CPP-DEV-merge-win-superbuild/af9fc46c/build/hdf5-build/hl/tools/h5watch/testfiles/w-ext-two-width.ddl"

I reported this to you, with a demonstration of how fix it, last year
(8th August 2016, "Compile and test failures with hdf5-1.10.0-patch1").

This is on Windows, VS2015 x64, with the Ninja generator.

I can make a full patch for this, but it would need to be against the
current state of your codebase. Is that available anywhere?

Regards,
Roger

The University of Dundee is a registered Scottish Charity, No: SC015096

Thanks, this is working fine for me testing with the current development
branch.

I also opened this PR against CMake
(https://gitlab.kitware.com/cmake/cmake/merge_requests/1604) to fix the
problem properly for the longer term. This allows post-build actions of
arbitrary complexity, fixing the Ninja generator limitation in CMake.

Regards,
Roger

The University of Dundee is a registered Scottish Charity, No: SC015096

···

On 04/12/17 22:25, Allen Byrne wrote:

Copying changes have been incorporated into our development code. There has not been a new release of 1.10.
1.8.20 has just been released, which should have most of the CMake changes that are in our development repo.