Re: [cmake-developers] cmake --help-policy CMP0057 MAIN_DEPENDENCY

2015-05-11 Thread Nils Gladitz

On 05/12/2015 07:23 AM, James Bigler wrote:

OK, thanks.

I still think that if there is a difference in behavior for Makefile
generators between MAIN_DEPENDENCY and DEPENDENCY there is a bug in
CMake.  Perhaps there needs to be bug filed for that.  Here's the
documentation:

In makefile terms this creates a new target in the following form::

  OUTPUT: MAIN_DEPENDENCY DEPENDS
  COMMAND

For a makefile, there shouldn't be a difference between the dependency
coming in on MAIN_DEPENDENCY or DEPENDENCY.  CMake is doing something
else with that property.


I would prefer that too but the add_custom_command() implementation 
which handles MAIN_DEPENDENCY and DEPENDENCY and attaches commands to 
source files is common to all generators.


Treating MAIN_DEPENDENCY and DEPENDENCY the same for Makefiles in this 
case would break existing projects (when using the Makefile generators) 
when they list the source file named by MAIN_DEPENDENCY but not the 
source file named by OUTPUT since then the custom command would not get 
emitted at all.




2. I'm curious why this causes a problem.  It seems to me that dummy.cpp
should be present by the time the add_custom_command is even run,


Yes, it is.


so why would it care whether it was created by CMake or anything else?


That isn't the issue.

The test case failure depends on the presence of the custom command but 
the custom command is not involved in creation of dummy.cpp; it only 
uses it as input.


Due to MAIN_DEPENDENCY the custom command is attached to dummy.cpp.

I think the issue is due to cmake trying to attach the command used to 
compile dummy.cpp itself as a custom command as well. [1]


Nils

[1] 
http://www.cmake.org/gitweb?p=cmake.git;a=blob;f=Source/cmLocalGenerator.cxx;h=88c88cd133a753fc319a785e116fdb8e6d5fd94a;hb=HEAD#l580

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [cmake-developers] cmake --help-policy CMP0057 MAIN_DEPENDENCY

2015-05-11 Thread James Bigler
OK, thanks.

I still think that if there is a difference in behavior for Makefile
generators between MAIN_DEPENDENCY and DEPENDENCY there is a bug in CMake.
Perhaps there needs to be bug filed for that.  Here's the documentation:

In makefile terms this creates a new target in the following form::

 OUTPUT: MAIN_DEPENDENCY DEPENDS
 COMMAND

For a makefile, there shouldn't be a difference between the dependency
coming in on MAIN_DEPENDENCY or DEPENDENCY.  CMake is doing something else
with that property.

2. I'm curious why this causes a problem.  It seems to me that dummy.cpp
should be present by the time the add_custom_command is even run, so why
would it care whether it was created by CMake or anything else?

James


On Thu, Apr 30, 2015 at 9:42 AM, Nils Gladitz  wrote:

> On 29.04.2015 09:11, Nils Gladitz wrote:
>
>> The policy will likely have to be removed or replaced.
>>
>
> I reverted the MAIN_DEPENDENCY specific CMP0057 commits and replaced the
> policy with an unrelated one that is part of my "if-IN_LIST" topic to fill
> the gap.
>
> This leaves the original issues that prompted the creation of CMP0057 open
> for now.
>
> Two related but distinct issues are triggered by the following test cases
> with the Makefile generator:
>
> 1) The following causes the given custom command to be emitted for both
> the foo and bar target which can lead to parallel build errors:
>
>   cmake_minimum_required(VERSION 3.2)
>
>   file(WRITE test.in)
>   file(WRITE dummy.cpp "int main() {}")
>
>   add_custom_command(
>   OUTPUT test.out
>   COMMAND ${CMAKE_COMMAND} -E echo Hello World
>   MAIN_DEPENDENCY test.in
>   )
>
>   add_executable(foo dummy.cpp test.in)
>   add_executable(bar dummy.cpp test.in)
>
> 2) The following causes the compile step for the dummy.cpp source file to
> fail in presence of the custom command:
>
>   cmake_minimum_required(VERSION 3.2)
>
>   file(WRITE dummy.cpp "int main() {}")
>
>   add_custom_command(
>   OUTPUT test.out
>   COMMAND ${CMAKE_COMMAND} -E echo Hello World
>   MAIN_DEPENDENCY dummy.cpp
>   )
>
>   add_executable(foo dummy.cpp)
>
> Nils
>
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Re: [cmake-developers] [CMake 0011944]: CPackDeb: Support dependencies between components/Debian packages

2015-05-11 Thread Raffi Enficiaud

Le 09/05/15 12:14, Domen Vrankar a écrit :

I forgot that the previous patch has not yet been merged to master so
no need to hurry.



Hi Domen,

Please find attached some rework on the documentation. There is no hurry :)

Best,
Raffi

>From f3cdd2e6c0d80d23da77fa9e5cc5cdce45270649 Mon Sep 17 00:00:00 2001
From: Raffi Enficiaud 
Date: Mon, 11 May 2015 15:18:05 +0200
Subject: [PATCH] CPackDEB: reworked documentation

---
 Modules/CPackDeb.cmake | 155 +
 1 file changed, 106 insertions(+), 49 deletions(-)

diff --git a/Modules/CPackDeb.cmake b/Modules/CPackDeb.cmake
index 0ccb042..a30a07e 100644
--- a/Modules/CPackDeb.cmake
+++ b/Modules/CPackDeb.cmake
@@ -28,29 +28,33 @@
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_NAME
 #
+#  The Debian package summary
+#
 #  * Mandatory : YES
-#  * Default   : CPACK_PACKAGE_NAME (lower case)
+#  * Default   : :variable:`CPACK_PACKAGE_NAME` (lower case)
 #
-#  The debian package summary
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_VERSION
 #
+#  The Debian package version
+#
 #  * Mandatory : YES
-#  * Default   : CPACK_PACKAGE_VERSION
+#  * Default   : :variable:`CPACK_PACKAGE_VERSION`
 #
-#  The debian package version
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_ARCHITECTURE
 #
+#  The Debian package architecture
+#
 #  * Mandatory : YES
-#  * Default   : Output of dpkg --print-architecture (or i386 if dpkg is not 
found)
+#  * Default   : Output of :code:`dpkg --print-architecture` (or :code:`i386`
+#if :code:`dpkg` is not found)
 #
-#  The debian package architecture
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_DEPENDS
 #   CPACK_DEBIAN__PACKAGE_DEPENDS
 #
-#  May be used to set deb dependencies.
+#  Sets the Debian dependencies of this package.
 #
 #  * Mandatory : NO
 #  * Default   :
@@ -64,7 +68,7 @@
 #If :variable:`CPACK_DEBIAN_PACKAGE_SHLIBDEPS` or
 #more specifically :variable:`CPACK_DEBIAN__PACKAGE_SHLIBDEPS`
 #is set for this component, the discovered dependencies will be appended
-#to :variable:`CPACK_DEBIAN__PACKAGE_DEPENDS` intead of
+#to :variable:`CPACK_DEBIAN__PACKAGE_DEPENDS` instead of
 #:variable:`CPACK_DEBIAN_PACKAGE_DEPENDS`. If
 #:variable:`CPACK_DEBIAN__PACKAGE_DEPENDS` is an empty string,
 #only the automatically discovered dependencies will be set for this
@@ -76,21 +80,25 @@
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_MAINTAINER
 #
+#  The Debian package maintainer
+#
 #  * Mandatory : YES
-#  * Default   : CPACK_PACKAGE_CONTACT
+#  * Default   : :code:`CPACK_PACKAGE_CONTACT`
 #
-#  The debian package maintainer
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_DESCRIPTION
 #   CPACK_COMPONENT__DESCRIPTION
 #
-#  The debian package description
+#  The Debian package description
 #
 #  * Mandatory : YES
 #  * Default   :
 #
-#- :variable:`CPACK_DEBIAN_PACKAGE_DESCRIPTION` if set or
-#- :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY`
+#- :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` for non-component based
+#  installation
+#- :variable:`CPACK_DEBIAN_PACKAGE_DESCRIPTION` for component-based
+#  installation
+#
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_SECTION
 #
@@ -99,33 +107,40 @@
 #
 # .. variable:: CPACK_DEBIAN_COMPRESSION_TYPE
 #
+#  The compression used for creating the Debian package.
+#  Possible values are: lzma, xz, bzip2 and gzip.
+#
 #  * Mandatory : YES
 #  * Default   : 'gzip'
 #
-# Possible values are: lzma, xz, bzip2 and gzip.
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_PRIORITY
 #
+#  The Debian package priority
+#
 #  * Mandatory : YES
 #  * Default   : 'optional'
 #
-#  The debian package priority
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_HOMEPAGE
 #
-#  * Mandatory : NO
-#  * Default   : -
-#
 #  The URL of the web site for this package, preferably (when applicable) the
 #  site from which the original source can be obtained and any additional
 #  upstream documentation or information may be found.
-#  The content of this field is a simple URL without any surrounding
-#  characters such as <>.
+#
+#  * Mandatory : NO
+#  * Default   : -
+#
+#  .. note::
+#
+#The content of this field is a simple URL without any surrounding
+#characters such as <>.
+#
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_SHLIBDEPS
 #   CPACK_DEBIAN__PACKAGE_SHLIBDEPS
 #
-#  May be set to ON in order to use dpkg-shlibdeps to generate
+#  May be set to ON in order to use :code:`dpkg-shlibdeps` to generate
 #  better package dependency list.
 #
 #  * Mandatory : NO
@@ -141,92 +156,132 @@
 #may fail to find your own shared libs.
 #See http://www.cmake.org/Wiki/CMake_RPATH_handling.
 #
-# .. variable:: CPACK_DEBIAN_PACKAGE_DEBUG
 #
-#  * Mandatory : NO
-#  * Default   : -
+# .. variable:: CPACK_DEBIAN_PACKAGE_DEBUG
 #
 #  May be set when invoking cpack in order to trace debug information
 #  during CPackDeb run.
 #
+#  * Mandatory : NO
+#  * Default   : -
+#
 # .. variable:: CPACK_DEBIAN_PACKAGE_PREDEPENDS
 #
+#  Sets the `Pre-Depends`

Re: [cmake-developers] [PATCH v3] FindHDF5.cmake HDF5_VERSION Support

2015-05-11 Thread Huebl, Axel
This commit adds VERSION support for HDF5 from
the same sources as it adds the HDF5_IS_PARALLEL
flag.

Previously posted on
  https://github.com/Kitware/CMake/pull/153

and improved with feedback from

 - Brad King
 - Rolf Eike Beer
---
 Modules/FindHDF5.cmake | 19 ---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/Modules/FindHDF5.cmake b/Modules/FindHDF5.cmake
index 0d58e13..2a92f5c 100644
--- a/Modules/FindHDF5.cmake
+++ b/Modules/FindHDF5.cmake
@@ -51,6 +51,7 @@
 #   bindings.
 #   HDF5_LIBRARIES - Required libraries for all requested bindings
 #   HDF5_FOUND - true if HDF5 was found on the system
+#   HDF5_VERSION - HDF5 version in format Major.Minor.Release
 #   HDF5_LIBRARY_DIRS - the full set of library directories
 #   HDF5_IS_PARALLEL - Whether or not HDF5 was found with parallel IO
support
 #   HDF5_C_COMPILER_EXECUTABLE - the path to the HDF5 C wrapper compiler
@@ -60,6 +61,7 @@

 #=
 # Copyright 2009 Kitware, Inc.
+#   2015 Axel Huebl, Helmholtz-Zentrum Dresden - Rossendorf
 #
 # Distributed under the OSI-approved BSD License (the "License");
 # see accompanying file Copyright.txt for details.
@@ -335,6 +337,7 @@ if( NOT HDF5_FOUND )
 # If the HDF5 include directory was found, open H5pubconf.h to
determine if
 # HDF5 was compiled with parallel IO support
 set( HDF5_IS_PARALLEL FALSE )
+set( HDF5_VERSION "" )
 foreach( _dir IN LISTS HDF5_INCLUDE_DIRS )
 if( EXISTS "${_dir}/H5pubconf.h" )
 file( STRINGS "${_dir}/H5pubconf.h"
@@ -343,6 +346,16 @@ if( NOT HDF5_FOUND )
 if( HDF5_HAVE_PARALLEL_DEFINE )
 set( HDF5_IS_PARALLEL TRUE )
 endif()
+unset(HDF5_HAVE_PARALLEL_DEFINE)
+
+file( STRINGS "${_dir}/H5pubconf.h"
+HDF5_VERSION_DEFINE
+REGEX "^[ \t]*#[ \t]*define[ \t]+H5_VERSION[ \t]+" )
+if( "${HDF5_VERSION_DEFINE}" MATCHES
+"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+).*\"" )
+set( HDF5_VERSION "${CMAKE_MATCH_1}" )
+endif()
+unset(HDF5_VERSION_DEFINE)
 endif()
 endforeach()
 set( HDF5_IS_PARALLEL ${HDF5_IS_PARALLEL} CACHE BOOL
@@ -357,8 +370,8 @@ if( NOT HDF5_FOUND )

 endif()

-find_package_handle_standard_args( HDF5 DEFAULT_MSG
-HDF5_LIBRARIES
-HDF5_INCLUDE_DIRS
+find_package_handle_standard_args( HDF5
+REQUIRED_VARS HDF5_LIBRARIES HDF5_INCLUDE_DIRS
+VERSION_VAR   HDF5_VERSION
 )

-- 
2.1.4



smime.p7s
Description: S/MIME Cryptographic Signature
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Re: [cmake-developers] [PATCH v2] FindHDF5.cmake HDF5_VERSION Support

2015-05-11 Thread Huebl, Axel
On 11.05.2015 10:51, Rolf Eike Beer wrote:
> Am 11.05.2015 10:29, schrieb Huebl, Axel:
>> On 08.05.2015 19:07, Huebl, Axel wrote:
>>> This commit adds VERSION support for HDF5 from
>>> the same sources as it adds the HDF5_IS_PARALLEL
>>> flag.
>>>
>>> Previously posted on
>>>   https://github.com/Kitware/CMake/pull/153
>>>
>>> and improved with feedback from
>>>
>>>  - Brad King
>>>  - Rolf Eike Beer
> 
>>> @@ -343,6 +346,16 @@ if( NOT HDF5_FOUND )
>>>  if( HDF5_HAVE_PARALLEL_DEFINE )
>>>  set( HDF5_IS_PARALLEL TRUE )
>>>  endif()
>>> +unset(HDF5_HAVE_PARALLEL_DEFINE)
>>> +
>>> +file( STRINGS "${_dir}/H5pubconf.h"
>>> +HDF5_VERSION_DEFINE
>>> +REGEX "^[ \t]*#[ \t]*define[ \t]+H5_VERSION[ \t]+" )
>>> +if( "${HDF5_VERSION_DEFINE}" MATCHES
>>> +"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" )
>>> +set( HDF5_VERSION "${CMAKE_MATCH_1}" )
>>> +endif()
>>> +unset(HDF5_VERSION_DEFINE)
>>>  endif()
>>>  endforeach()
>>>  set( HDF5_IS_PARALLEL ${HDF5_IS_PARALLEL} CACHE BOOL
>>
>> I double checked some of the previous releases and pre-releases usually
>> take the format with appended "-something", e.g.
>>   1.8.10-patch1
>>
>> One could skip the "subrelease" but still avoid breaking the configure
>> by looking for a H5_VERSION of format
>>
>>#define "X.Y.Z
>>
>> (neglecting the last ").
>>
>>> -if( "${HDF5_VERSION_DEFINE}" MATCHES
>>> -"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" )
>>> +if( "${HDF5_VERSION_DEFINE}" MATCHES
>>> +"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)" )
>>
>>
>> Any comments on that?
> 
> Then I would change the regex to:
> 
> "H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+[^"]*)"
> 
> This would include whatever comes next into the visible string, but
> CMake should be able to deal with that just fine (please check, as you
> seem to have the versions available).
> 
> Eike

Eike,

good point - let's match it's a valid C-string. I would simply use

  if( "${HDF5_VERSION_DEFINE}" MATCHES
"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+).*\"" )

to match the group correctly.

(Indeed, all my posts are tested :)  )

Axel

-- 

Axel Huebl
Phone +49 351 260 3582
https://www.hzdr.de/crp
Computational Radiation Physics
Laser Particle Acceleration Division
Helmholtz-Zentrum Dresden - Rossendorf e.V.

Bautzner Landstrasse 400, 01328 Dresden
POB 510119, D-01314 Dresden
Vorstand: Prof. Dr.Dr.h.c. R. Sauerbrey
  Prof. Dr.Dr.h.c. P. Joehnk
VR 1693 beim Amtsgericht Dresden



smime.p7s
Description: S/MIME Cryptographic Signature
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Re: [cmake-developers] [PATCH v2] FindHDF5.cmake HDF5_VERSION Support

2015-05-11 Thread Rolf Eike Beer

Am 11.05.2015 10:29, schrieb Huebl, Axel:

On 08.05.2015 19:07, Huebl, Axel wrote:

This commit adds VERSION support for HDF5 from
the same sources as it adds the HDF5_IS_PARALLEL
flag.

Previously posted on
  https://github.com/Kitware/CMake/pull/153

and improved with feedback from

 - Brad King
 - Rolf Eike Beer



@@ -343,6 +346,16 @@ if( NOT HDF5_FOUND )
 if( HDF5_HAVE_PARALLEL_DEFINE )
 set( HDF5_IS_PARALLEL TRUE )
 endif()
+unset(HDF5_HAVE_PARALLEL_DEFINE)
+
+file( STRINGS "${_dir}/H5pubconf.h"
+HDF5_VERSION_DEFINE
+REGEX "^[ \t]*#[ \t]*define[ \t]+H5_VERSION[ \t]+" )
+if( "${HDF5_VERSION_DEFINE}" MATCHES
+"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" )
+set( HDF5_VERSION "${CMAKE_MATCH_1}" )
+endif()
+unset(HDF5_VERSION_DEFINE)
 endif()
 endforeach()
 set( HDF5_IS_PARALLEL ${HDF5_IS_PARALLEL} CACHE BOOL


I double checked some of the previous releases and pre-releases usually
take the format with appended "-something", e.g.
  1.8.10-patch1

One could skip the "subrelease" but still avoid breaking the configure
by looking for a H5_VERSION of format

   #define "X.Y.Z

(neglecting the last ").


-if( "${HDF5_VERSION_DEFINE}" MATCHES
-"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" )
+if( "${HDF5_VERSION_DEFINE}" MATCHES
+"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)" )



Any comments on that?


Then I would change the regex to:

"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+[^"]*)"

This would include whatever comes next into the visible string, but 
CMake should be able to deal with that just fine (please check, as you 
seem to have the versions available).


Eike
--
--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


Re: [cmake-developers] [PATCH v2] FindHDF5.cmake HDF5_VERSION Support

2015-05-11 Thread Huebl, Axel
On 08.05.2015 19:07, Huebl, Axel wrote:
> This commit adds VERSION support for HDF5 from
> the same sources as it adds the HDF5_IS_PARALLEL
> flag.
> 
> Previously posted on
>   https://github.com/Kitware/CMake/pull/153
> 
> and improved with feedback from
> 
>  - Brad King
>  - Rolf Eike Beer
> ---
>  Modules/FindHDF5.cmake | 19 ---
>  1 file changed, 16 insertions(+), 3 deletions(-)
> 
> diff --git a/Modules/FindHDF5.cmake b/Modules/FindHDF5.cmake
> index 0d58e13..5f41b0f 100644
> --- a/Modules/FindHDF5.cmake
> +++ b/Modules/FindHDF5.cmake
> @@ -51,6 +51,7 @@
>  #   bindings.
>  #   HDF5_LIBRARIES - Required libraries for all requested bindings
>  #   HDF5_FOUND - true if HDF5 was found on the system
> +#   HDF5_VERSION - HDF5 version in format Major.Minor.Release
>  #   HDF5_LIBRARY_DIRS - the full set of library directories
>  #   HDF5_IS_PARALLEL - Whether or not HDF5 was found with parallel IO
> support
>  #   HDF5_C_COMPILER_EXECUTABLE - the path to the HDF5 C wrapper compiler
> @@ -60,6 +61,7 @@
> 
>  
> #=
>  # Copyright 2009 Kitware, Inc.
> +#   2015 Axel Huebl, Helmholtz-Zentrum Dresden - Rossendorf
>  #
>  # Distributed under the OSI-approved BSD License (the "License");
>  # see accompanying file Copyright.txt for details.
> @@ -335,6 +337,7 @@ if( NOT HDF5_FOUND )
>  # If the HDF5 include directory was found, open H5pubconf.h to
> determine if
>  # HDF5 was compiled with parallel IO support
>  set( HDF5_IS_PARALLEL FALSE )
> +set( HDF5_VERSION "" )
>  foreach( _dir IN LISTS HDF5_INCLUDE_DIRS )
>  if( EXISTS "${_dir}/H5pubconf.h" )
>  file( STRINGS "${_dir}/H5pubconf.h"
> @@ -343,6 +346,16 @@ if( NOT HDF5_FOUND )
>  if( HDF5_HAVE_PARALLEL_DEFINE )
>  set( HDF5_IS_PARALLEL TRUE )
>  endif()
> +unset(HDF5_HAVE_PARALLEL_DEFINE)
> +
> +file( STRINGS "${_dir}/H5pubconf.h"
> +HDF5_VERSION_DEFINE
> +REGEX "^[ \t]*#[ \t]*define[ \t]+H5_VERSION[ \t]+" )
> +if( "${HDF5_VERSION_DEFINE}" MATCHES
> +"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" )
> +set( HDF5_VERSION "${CMAKE_MATCH_1}" )
> +endif()
> +unset(HDF5_VERSION_DEFINE)
>  endif()
>  endforeach()
>  set( HDF5_IS_PARALLEL ${HDF5_IS_PARALLEL} CACHE BOOL
> @@ -357,8 +370,8 @@ if( NOT HDF5_FOUND )
> 
>  endif()
> 
> -find_package_handle_standard_args( HDF5 DEFAULT_MSG
> -HDF5_LIBRARIES
> -HDF5_INCLUDE_DIRS
> +find_package_handle_standard_args( HDF5
> +REQUIRED_VARS HDF5_LIBRARIES HDF5_INCLUDE_DIRS
> +VERSION_VAR   HDF5_VERSION
>  )
> 

I double checked some of the previous releases and pre-releases usually
take the format with appended "-something", e.g.
  1.8.10-patch1

One could skip the "subrelease" but still avoid breaking the configure
by looking for a H5_VERSION of format

   #define "X.Y.Z

(neglecting the last ").

> -if( "${HDF5_VERSION_DEFINE}" MATCHES
> -"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)\"" )
> +if( "${HDF5_VERSION_DEFINE}" MATCHES
> +"H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+)" )


Any comments on that?


An other question:
  above the submitted patch is a "hdf5-config.cmake" section. Does it
need a specific update? (It's not touched for HDF5_IS_PARALLEL either).


Axel
-- 

Axel Huebl
Phone +49 351 260 3582
https://www.hzdr.de/crp
Computational Radiation Physics
Laser Particle Acceleration Division
Helmholtz-Zentrum Dresden - Rossendorf e.V.

Bautzner Landstrasse 400, 01328 Dresden
POB 510119, D-01314 Dresden
Vorstand: Prof. Dr.Dr.h.c. R. Sauerbrey
  Prof. Dr.Dr.h.c. P. Joehnk
VR 1693 beim Amtsgericht Dresden



smime.p7s
Description: S/MIME Cryptographic Signature
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers