Relaying all command line arguments from SuperBuild to ExternalProject_Add

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Relaying all command line arguments from SuperBuild to ExternalProject_Add

Saad Khattak
I have the following setup:
Superbuild
   - ExternalProject_Add(a...)
   - ExternalProject_Add(b...)
   - ExternalProject_Add(c...) 
   - ExternalProject_Add(d...)

The SuperBuild is built from command line with some options e.g. -DMY_OPTION=TRUE. I would like all these options to be passed to each of the ExternalProject_Add CMAKE_ARGS.

I tried to capture the arguments using the solution posted here: https://stackoverflow.com/a/10218582/368599

The arguments are captured properly (i.e. I printed them out to make sure they are correct) but relaying them to ExternalProject_Add appears to be problematic. I tried the following ways to forward the arguments (as outlined in the stackoverflow solution):

ExternalProject_Add(...
  CMAKE_ARGS ${CMAKE_ARGS}
  )

ExternalProject_Add(...
  CMAKE_ARGS "${CMAKE_ARGS}" # quotes
  )

ExternalProject_Add(...
  CMAKE_ARGS "${MY_CMAKE_ARGS}" # changed the variable name in case it conflicts
  )  

None of that seems to work. CMake appears to ignore the commands forwarded.

Is there something I am missing?

Thanks,
Saad


--

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:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Relaying all command line arguments from SuperBuild to ExternalProject_Add

J Decker

(platfrom defines is a variable suitable for like ADD_DEFINITIONS( ${PLATFORM_DEFINES} ) 


  string( REPLACE ";" " " PLATFORM_DEFINES_ARG "${PLATFORM_DEFINES}" )
  ExternalProject_Add( target
    ....
CMAKE_ARGS -DPLATFORM_DEFINES=${PLATFORM_DEFINES_ARG}
    ......
 )


and in the target cmakelists to use the argument


STRING( REPLACE " " ";" PLATFORM_DEFINES ${PLATFORM_DEFINES} )

add_definitions( ${PLATFORM_DEFINES} )



On Wed, Jan 31, 2018 at 9:36 AM, Saad Khattak <[hidden email]> wrote:
I have the following setup:
Superbuild
   - ExternalProject_Add(a...)
   - ExternalProject_Add(b...)
   - ExternalProject_Add(c...) 
   - ExternalProject_Add(d...)

The SuperBuild is built from command line with some options e.g. -DMY_OPTION=TRUE. I would like all these options to be passed to each of the ExternalProject_Add CMAKE_ARGS.

I tried to capture the arguments using the solution posted here: https://stackoverflow.com/a/10218582/368599

The arguments are captured properly (i.e. I printed them out to make sure they are correct) but relaying them to ExternalProject_Add appears to be problematic. I tried the following ways to forward the arguments (as outlined in the stackoverflow solution):

ExternalProject_Add(...
  CMAKE_ARGS ${CMAKE_ARGS}
  )

ExternalProject_Add(...
  CMAKE_ARGS "${CMAKE_ARGS}" # quotes
  )

ExternalProject_Add(...
  CMAKE_ARGS "${MY_CMAKE_ARGS}" # changed the variable name in case it conflicts
  )  

None of that seems to work. CMake appears to ignore the commands forwarded.

Is there something I am missing?

Thanks,
Saad


--

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:
https://cmake.org/mailman/listinfo/cmake



--

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:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Relaying all command line arguments from SuperBuild to ExternalProject_Add

Saad Khattak
Thanks J. I could use that to add preprocessor definitions. 

However, my question was how I could forward 'all' the command line options that the user uses to generate the SuperBuild project. Suppose I somehow managed to capture all the command line arguments which can include variables specific to CMake and/or projects (i.e. nothing to do with preprocessor definitions) in a variable called CL_CMAKE_ARGS. 

If I do message(${CL_CMAKE_ARGS}) I get:

 -DMY_OPTION_ONE=ON -DMY_OPTION_TWO=OFF -DSOME_VAR_1="Foo"

Now, when I try something like this:

ExternalProject_Add(target
...
CMAKE_ARGS ${CL_CMAKE_ARGS}
...
)

One would expect CL_CMAKE_ARGS to be expanded and the arguments passed to the ExternalProject_Add function, but that is not the case. I also tried:

ExternalProject_Add(target
...
CMAKE_ARGS "${CL_CMAKE_ARGS}"
...
)

Neither works. It seems like a bug in CMake but I wanted to confirm that I am not missing something.

On Wed, Jan 31, 2018 at 3:27 PM J Decker <[hidden email]> wrote:

(platfrom defines is a variable suitable for like ADD_DEFINITIONS( ${PLATFORM_DEFINES} ) 


  string( REPLACE ";" " " PLATFORM_DEFINES_ARG "${PLATFORM_DEFINES}" )
  ExternalProject_Add( target
    ....
CMAKE_ARGS -DPLATFORM_DEFINES=${PLATFORM_DEFINES_ARG}
    ......
 )


and in the target cmakelists to use the argument


STRING( REPLACE " " ";" PLATFORM_DEFINES ${PLATFORM_DEFINES} )

add_definitions( ${PLATFORM_DEFINES} )



On Wed, Jan 31, 2018 at 9:36 AM, Saad Khattak <[hidden email]> wrote:
I have the following setup:
Superbuild
   - ExternalProject_Add(a...)
   - ExternalProject_Add(b...)
   - ExternalProject_Add(c...) 
   - ExternalProject_Add(d...)

The SuperBuild is built from command line with some options e.g. -DMY_OPTION=TRUE. I would like all these options to be passed to each of the ExternalProject_Add CMAKE_ARGS.

I tried to capture the arguments using the solution posted here: https://stackoverflow.com/a/10218582/368599

The arguments are captured properly (i.e. I printed them out to make sure they are correct) but relaying them to ExternalProject_Add appears to be problematic. I tried the following ways to forward the arguments (as outlined in the stackoverflow solution):

ExternalProject_Add(...
  CMAKE_ARGS ${CMAKE_ARGS}
  )

ExternalProject_Add(...
  CMAKE_ARGS "${CMAKE_ARGS}" # quotes
  )

ExternalProject_Add(...
  CMAKE_ARGS "${MY_CMAKE_ARGS}" # changed the variable name in case it conflicts
  )  

None of that seems to work. CMake appears to ignore the commands forwarded.

Is there something I am missing?

Thanks,
Saad


--

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:
https://cmake.org/mailman/listinfo/cmake



--

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:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Relaying all command line arguments from SuperBuild to ExternalProject_Add

Don Hinton
Hi Saad:

On Wed, Jan 31, 2018 at 6:47 PM, Saad Khattak <[hidden email]> wrote:
Thanks J. I could use that to add preprocessor definitions. 

However, my question was how I could forward 'all' the command line options that the user uses to generate the SuperBuild project. Suppose I somehow managed to capture all the command line arguments which can include variables specific to CMake and/or projects (i.e. nothing to do with preprocessor definitions) in a variable called CL_CMAKE_ARGS. 

The example you are using is close, but not quite correct.  

You need to harvest the comandline arguments before calling `project()`, just note that it won't work if CMakeCache.txt already exists.

Some CMAKE variables will still have HELPSTRINGS, even if passed via the command line, and users can also set a random or blank HELPSTRING if they use a cache file.  To overcome these issues, just harvest all cache variables and exclude the invariant ones, e.g., CMAKE_COMMAND, etc., e.g.:

$ cat ../CMakeLists.txt
cmake_minimum_required(VERSION 3.5)

message(STATUS "*** All CACHE_VARIABLES ***")
get_cmake_property(vars CACHE_VARIABLES)
foreach(var ${vars})
  get_property(currentHelpString CACHE "${var}" PROPERTY HELPSTRING)
        message("${var} = [${${var}}]  --  ${currentHelpString}")
endforeach()

project(xxx)
message(STATUS "project() called.")

message(STATUS "*** Only CACHE_VARIABLES with HELPSTRING empty or matching \"No help,...\" ***")
get_cmake_property(vars CACHE_VARIABLES)
foreach(var ${vars})
  get_property(currentHelpString CACHE "${var}" PROPERTY HELPSTRING)
        if("${currentHelpString}" MATCHES "No help, variable specified on the command line." OR "${currentHelpString}" STREQUAL "")
                message("${var} = [${${var}}]  --  ${currentHelpString}")
        endif()
endforeach()

$ rm -rf * && cmake -DFOO=1 -DCMAKE_BUILD_TYPE=Release -GNinja ..
-- *** All CACHE_VARIABLES ***
CMAKE_BUILD_TYPE = [Release]  --  No help, variable specified on the command line.
CMAKE_COMMAND = [/opt/local/bin/cmake]  --  Path to CMake executable.
CMAKE_CPACK_COMMAND = [/opt/local/bin/cpack]  --  Path to cpack program executable.
CMAKE_CTEST_COMMAND = [/opt/local/bin/ctest]  --  Path to ctest program executable.
CMAKE_EXTRA_GENERATOR = []  --  Name of external makefile project generator.
CMAKE_GENERATOR = [Ninja]  --  Name of generator.
CMAKE_GENERATOR_PLATFORM = []  --  Name of generator platform.
CMAKE_GENERATOR_TOOLSET = []  --  Name of generator toolset.
CMAKE_HOME_DIRECTORY = [/Users/dhinton/cmake_test]  --  Source directory with the top level CMakeLists.txt file for this project
CMAKE_ROOT = [/opt/local/share/cmake-3.10]  --  Path to CMake installation.
FOO = [1]  --  No help, variable specified on the command line.
-- The C compiler identification is AppleClang 9.0.0.9000039
-- The CXX compiler identification is AppleClang 9.0.0.9000039
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- project() called.
-- *** Only CACHE_VARIABLES with HELPSTRING empty or matching "No help,..." ***
FOO = [1]  --  No help, variable specified on the command line.
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/dhinton/cmake_test/build

hth...
don


If I do message(${CL_CMAKE_ARGS}) I get:

 -DMY_OPTION_ONE=ON -DMY_OPTION_TWO=OFF -DSOME_VAR_1="Foo"

Now, when I try something like this:

ExternalProject_Add(target
...
CMAKE_ARGS ${CL_CMAKE_ARGS}
...
)

One would expect CL_CMAKE_ARGS to be expanded and the arguments passed to the ExternalProject_Add function, but that is not the case. I also tried:

ExternalProject_Add(target
...
CMAKE_ARGS "${CL_CMAKE_ARGS}"
...
)

Neither works. It seems like a bug in CMake but I wanted to confirm that I am not missing something.

On Wed, Jan 31, 2018 at 3:27 PM J Decker <[hidden email]> wrote:

(platfrom defines is a variable suitable for like ADD_DEFINITIONS( ${PLATFORM_DEFINES} ) 


  string( REPLACE ";" " " PLATFORM_DEFINES_ARG "${PLATFORM_DEFINES}" )
  ExternalProject_Add( target
    ....
CMAKE_ARGS -DPLATFORM_DEFINES=${PLATFORM_DEFINES_ARG}
    ......
 )


and in the target cmakelists to use the argument


STRING( REPLACE " " ";" PLATFORM_DEFINES ${PLATFORM_DEFINES} )

add_definitions( ${PLATFORM_DEFINES} )



On Wed, Jan 31, 2018 at 9:36 AM, Saad Khattak <[hidden email]> wrote:
I have the following setup:
Superbuild
   - ExternalProject_Add(a...)
   - ExternalProject_Add(b...)
   - ExternalProject_Add(c...) 
   - ExternalProject_Add(d...)

The SuperBuild is built from command line with some options e.g. -DMY_OPTION=TRUE. I would like all these options to be passed to each of the ExternalProject_Add CMAKE_ARGS.

I tried to capture the arguments using the solution posted here: https://stackoverflow.com/a/10218582/368599

The arguments are captured properly (i.e. I printed them out to make sure they are correct) but relaying them to ExternalProject_Add appears to be problematic. I tried the following ways to forward the arguments (as outlined in the stackoverflow solution):

ExternalProject_Add(...
  CMAKE_ARGS ${CMAKE_ARGS}
  )

ExternalProject_Add(...
  CMAKE_ARGS "${CMAKE_ARGS}" # quotes
  )

ExternalProject_Add(...
  CMAKE_ARGS "${MY_CMAKE_ARGS}" # changed the variable name in case it conflicts
  )  

None of that seems to work. CMake appears to ignore the commands forwarded.

Is there something I am missing?

Thanks,
Saad


--

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:
https://cmake.org/mailman/listinfo/cmake



--

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:
https://cmake.org/mailman/listinfo/cmake



--

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:
https://cmake.org/mailman/listinfo/cmake
Reply | Threaded
Open this post in threaded view
|

Re: Relaying all command line arguments from SuperBuild to ExternalProject_Add

Saad Khattak
Thank you Don, that was it. Querying and storing the args before a call to 'project' and your loop and your conditional were the key.

On Wed, Jan 31, 2018 at 10:14 PM Don Hinton <[hidden email]> wrote:
Hi Saad:

On Wed, Jan 31, 2018 at 6:47 PM, Saad Khattak <[hidden email]> wrote:
Thanks J. I could use that to add preprocessor definitions. 

However, my question was how I could forward 'all' the command line options that the user uses to generate the SuperBuild project. Suppose I somehow managed to capture all the command line arguments which can include variables specific to CMake and/or projects (i.e. nothing to do with preprocessor definitions) in a variable called CL_CMAKE_ARGS. 

The example you are using is close, but not quite correct.  

You need to harvest the comandline arguments before calling `project()`, just note that it won't work if CMakeCache.txt already exists.

Some CMAKE variables will still have HELPSTRINGS, even if passed via the command line, and users can also set a random or blank HELPSTRING if they use a cache file.  To overcome these issues, just harvest all cache variables and exclude the invariant ones, e.g., CMAKE_COMMAND, etc., e.g.:

$ cat ../CMakeLists.txt
cmake_minimum_required(VERSION 3.5)

message(STATUS "*** All CACHE_VARIABLES ***")
get_cmake_property(vars CACHE_VARIABLES)
foreach(var ${vars})
  get_property(currentHelpString CACHE "${var}" PROPERTY HELPSTRING)
        message("${var} = [${${var}}]  --  ${currentHelpString}")
endforeach()

project(xxx)
message(STATUS "project() called.")

message(STATUS "*** Only CACHE_VARIABLES with HELPSTRING empty or matching \"No help,...\" ***")
get_cmake_property(vars CACHE_VARIABLES)
foreach(var ${vars})
  get_property(currentHelpString CACHE "${var}" PROPERTY HELPSTRING)
        if("${currentHelpString}" MATCHES "No help, variable specified on the command line." OR "${currentHelpString}" STREQUAL "")
                message("${var} = [${${var}}]  --  ${currentHelpString}")
        endif()
endforeach()

$ rm -rf * && cmake -DFOO=1 -DCMAKE_BUILD_TYPE=Release -GNinja ..
-- *** All CACHE_VARIABLES ***
CMAKE_BUILD_TYPE = [Release]  --  No help, variable specified on the command line.
CMAKE_COMMAND = [/opt/local/bin/cmake]  --  Path to CMake executable.
CMAKE_CPACK_COMMAND = [/opt/local/bin/cpack]  --  Path to cpack program executable.
CMAKE_CTEST_COMMAND = [/opt/local/bin/ctest]  --  Path to ctest program executable.
CMAKE_EXTRA_GENERATOR = []  --  Name of external makefile project generator.
CMAKE_GENERATOR = [Ninja]  --  Name of generator.
CMAKE_GENERATOR_PLATFORM = []  --  Name of generator platform.
CMAKE_GENERATOR_TOOLSET = []  --  Name of generator toolset.
CMAKE_HOME_DIRECTORY = [/Users/dhinton/cmake_test]  --  Source directory with the top level CMakeLists.txt file for this project
CMAKE_ROOT = [/opt/local/share/cmake-3.10]  --  Path to CMake installation.
FOO = [1]  --  No help, variable specified on the command line.
-- The C compiler identification is AppleClang 9.0.0.9000039
-- The CXX compiler identification is AppleClang 9.0.0.9000039
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- project() called.
-- *** Only CACHE_VARIABLES with HELPSTRING empty or matching "No help,..." ***
FOO = [1]  --  No help, variable specified on the command line.
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/dhinton/cmake_test/build

hth...
don


If I do message(${CL_CMAKE_ARGS}) I get:

 -DMY_OPTION_ONE=ON -DMY_OPTION_TWO=OFF -DSOME_VAR_1="Foo"

Now, when I try something like this:

ExternalProject_Add(target
...
CMAKE_ARGS ${CL_CMAKE_ARGS}
...
)

One would expect CL_CMAKE_ARGS to be expanded and the arguments passed to the ExternalProject_Add function, but that is not the case. I also tried:

ExternalProject_Add(target
...
CMAKE_ARGS "${CL_CMAKE_ARGS}"
...
)

Neither works. It seems like a bug in CMake but I wanted to confirm that I am not missing something.

On Wed, Jan 31, 2018 at 3:27 PM J Decker <[hidden email]> wrote:

(platfrom defines is a variable suitable for like ADD_DEFINITIONS( ${PLATFORM_DEFINES} ) 


  string( REPLACE ";" " " PLATFORM_DEFINES_ARG "${PLATFORM_DEFINES}" )
  ExternalProject_Add( target
    ....
CMAKE_ARGS -DPLATFORM_DEFINES=${PLATFORM_DEFINES_ARG}
    ......
 )


and in the target cmakelists to use the argument


STRING( REPLACE " " ";" PLATFORM_DEFINES ${PLATFORM_DEFINES} )

add_definitions( ${PLATFORM_DEFINES} )



On Wed, Jan 31, 2018 at 9:36 AM, Saad Khattak <[hidden email]> wrote:
I have the following setup:
Superbuild
   - ExternalProject_Add(a...)
   - ExternalProject_Add(b...)
   - ExternalProject_Add(c...) 
   - ExternalProject_Add(d...)

The SuperBuild is built from command line with some options e.g. -DMY_OPTION=TRUE. I would like all these options to be passed to each of the ExternalProject_Add CMAKE_ARGS.

I tried to capture the arguments using the solution posted here: https://stackoverflow.com/a/10218582/368599

The arguments are captured properly (i.e. I printed them out to make sure they are correct) but relaying them to ExternalProject_Add appears to be problematic. I tried the following ways to forward the arguments (as outlined in the stackoverflow solution):

ExternalProject_Add(...
  CMAKE_ARGS ${CMAKE_ARGS}
  )

ExternalProject_Add(...
  CMAKE_ARGS "${CMAKE_ARGS}" # quotes
  )

ExternalProject_Add(...
  CMAKE_ARGS "${MY_CMAKE_ARGS}" # changed the variable name in case it conflicts
  )  

None of that seems to work. CMake appears to ignore the commands forwarded.

Is there something I am missing?

Thanks,
Saad


--

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:
https://cmake.org/mailman/listinfo/cmake



--

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:
https://cmake.org/mailman/listinfo/cmake


--

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:
https://cmake.org/mailman/listinfo/cmake