Re: [cmake-developers] patch for module GetPrerequisites

2016-03-08 Thread Brad King
On 03/07/2016 05:41 PM, Benjamin Ballet wrote:
> We have to call :
> fixup_bundle("${CMAKE_INSTALL_PREFIX}/../test"...
> to fix an optional test folder installed near the app.

Thanks.  I've made a slightly different fix that should resolve that:

 GetPrerequisites: Fix gp_resolved_file_type on non-canonical paths
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=37e8ccee

-Brad
-- 

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 for module GetPrerequisites

2016-03-07 Thread Benjamin Ballet
We have to call :
fixup_bundle("${CMAKE_INSTALL_PREFIX}/../test"...
to fix an optional test folder installed near the app.

verify_app will later compare a path like C:/program/app/../test to
C:/program/test and state they are inequal while they point to the same
file.
That's why I have to call get_filename_component(path "${path}" REALPATH)
just to force the convertion from C:/program/app/../test to C:/program/test

Thanks, hope I clearified

2016-03-07 19:07 GMT+01:00 Brad King :

> On 03/04/2016 12:17 PM, Benjamin Ballet wrote:
> > The fail occurs during verify_app in the function gp_resolved_file_type
> > from module GetPrerequisites. This function test if two paths are equal
> > without translating them to there canonical form before.
> [snip]
> >get_filename_component(original_path "${original_lower}" PATH)
> >get_filename_component(path "${lower}" PATH)
> > +  get_filename_component(original_path "${original_path}" REALPATH)
> > +  get_filename_component(path "${path}" REALPATH)
>
> This is operating on a string(TOLOWER)-converted path already.
> On case-sensitive filesystems it does not make sense to call
> REALPATH for these.  The code is doing string manipulation of
> the paths at this point.
>
> Please explain the case you're hitting in more detail.  How
> does one end up with a non-canonical path in the first place?
>
> Thanks,
> -Brad
>
>


-- 
*Benjamin BALLET*
Ingénieur R&D

*ACTIVISU*
19, rue Klock - 92110 Clichy
*> Standard Tél* :  01 44 69 37 37
*>* www.activisu.com
-- 

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 for module GetPrerequisites

2016-03-07 Thread Brad King
On 03/04/2016 12:17 PM, Benjamin Ballet wrote:
> The fail occurs during verify_app in the function gp_resolved_file_type
> from module GetPrerequisites. This function test if two paths are equal
> without translating them to there canonical form before.
[snip]
>get_filename_component(original_path "${original_lower}" PATH)
>get_filename_component(path "${lower}" PATH)
> +  get_filename_component(original_path "${original_path}" REALPATH)
> +  get_filename_component(path "${path}" REALPATH)

This is operating on a string(TOLOWER)-converted path already.
On case-sensitive filesystems it does not make sense to call
REALPATH for these.  The code is doing string manipulation of
the paths at this point.

Please explain the case you're hitting in more detail.  How
does one end up with a non-canonical path in the first place?

Thanks,
-Brad

-- 

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


[cmake-developers] patch for module GetPrerequisites

2016-03-04 Thread Benjamin Ballet
Hello

We are using fixup_bundle on Windows and I discovered that this function
doesn't work if the path of the app is not in it's canonical form.

Of course I can canonicalize the path of the app but I would like to fix
this issue for everyone.

The fail occurs during verify_app in the function gp_resolved_file_type
from module GetPrerequisites. This function test if two paths are equal
without translating them to there canonical form before.

Here is the patch for this modification

-- 
*Benjamin BALLET*
Ingénieur R&D

*ACTIVISU*
19, rue Klock - 92110 Clichy
*> Standard Tél* :  01 44 69 37 37
*>* www.activisu.com


0001-GetPrerequisites-function-gp_resolved_file_type-shou.patch
Description: Binary data
-- 

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