Re: [cmake-developers] Empty ERROR_VARIABLE in execute_process

2016-05-23 Thread Roman Wüger
Ok, thanks Brad.

Hello Qt Mailing list,

First i thought this is a bug in CMake but it has appeared that it seems to be 
a bug in qmllint:

Here the original question:

when I run qmllint from the command line to test an error I get:

C:\Tests>C:\Qt\5.6\msvc2015\bin\qmllint.exe test.qml
test.qml:1 : Syntax error

C:\Tests>echo %ERRORLEVEL%
-1

C:\Tests>


If I call this from a CMake script

execute_process(COMMAND C:/Qt/5.6/msvc2015/bin/qmllint.exe C:/Tests/test.qml
   RESULT_VARIABLE _resVar
   OUTPUT_VARIABLE _outVar
   ERROR_VARIABLE _errVar
 OUTPUT_STRIP_TRAILING_WHITESPACE
   ERROR_STRIP_TRAILING_WHITESPACE)

message("_resVar: ${_resVar}")
message("_outVar: ${_outVar}")
message("_errVar: ${_errVar}")

The output is:

1>  _resVar: -1
1>  _outVar:
1>  _errVar:

It seems that the error pipe isn’t read correctly, because _errVar is empty.

And hints?

Regards
Roman

> Am 23.05.2016 um 19:33 schrieb Brad King :
> 
>> On 05/23/2016 11:34 AM, Roman Wüger wrote:
>> I tried it with CMake 3.5.1 and 3.5.2 and now with the master with
>> the same result. I've attached an example which won't work.
> 
> I was able to reproduce it with that, but I also tried this:
> 
> add_custom_target(${PROJECT_NAME}-c2
>   COMMAND C:/Qt/5.6/msvc2015/bin/qmllint.exe 
> ${CMAKE_CURRENT_SOURCE_DIR}/test.qml
>   )
> 
> The output does not appear in this case either.  No execute_process
> is involved, and qmllint is invoked directly by msbuild.  This has
> something to do with qmllint changing output behavior when it is
> executed inside a VS IDE (MSBuild) build.
> 
> -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] Empty ERROR_VARIABLE in execute_process

2016-05-23 Thread Brad King
On 05/23/2016 11:34 AM, Roman Wüger wrote:
> I tried it with CMake 3.5.1 and 3.5.2 and now with the master with
> the same result. I've attached an example which won't work.

I was able to reproduce it with that, but I also tried this:

 add_custom_target(${PROJECT_NAME}-c2
   COMMAND C:/Qt/5.6/msvc2015/bin/qmllint.exe 
${CMAKE_CURRENT_SOURCE_DIR}/test.qml
   )

The output does not appear in this case either.  No execute_process
is involved, and qmllint is invoked directly by msbuild.  This has
something to do with qmllint changing output behavior when it is
executed inside a VS IDE (MSBuild) build.

-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] Empty ERROR_VARIABLE in execute_process

2016-05-23 Thread Brad King
On 05/23/2016 03:25 AM, Roman Wüger wrote:
> The output is:
>  
> 1>  _resVar: -1
> 1>  _outVar:
> 1>  _errVar:
>  
> It seems that the error pipe isn’t read correctly, because _errVar is empty.

I cannot reproduce that.  With an empty test.qml file I get:

 _resVar: -1
 _outVar:
 _errVar: test.qml:1 : Expected token `numeric literal'

using the same qmllint version:

  >c:\Qt\5.6.0\5.6\msvc2015_64\bin\qmllint.exe --version
  qmllint 1.0

and current CMake 'master'.

-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] Empty ERROR_VARIABLE in execute_process

2016-05-23 Thread Roman Wüger
Hello,
 
when I run qmllint from the command line to test an error I get:
 
C:\Tests>C:\Qt\5.6\msvc2015\bin\qmllint.exe test.qml
test.qml:1 : Syntax error
 
C:\Tests>echo %ERRORLEVEL%
-1
 
C:\Tests>
 
 
If I call this from a CMake script
 
execute_process(COMMAND C:/Qt/5.6/msvc2015/bin/qmllint.exe C:/Tests/test.qml
RESULT_VARIABLE _resVar
OUTPUT_VARIABLE _outVar
ERROR_VARIABLE _errVar
  OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_STRIP_TRAILING_WHITESPACE)
 
message("_resVar: ${_resVar}")
message("_outVar: ${_outVar}")
message("_errVar: ${_errVar}")
 
The output is:
 
1>  _resVar: -1
1>  _outVar:
1>  _errVar:
 
It seems that the error pipe isn’t read correctly, because _errVar is empty.

And hints?

Regards
Roman

-- 

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