[cmake-developers] Introduction and volunteering for the Matlab package

Brad King brad.king at kitware.com
Fri Apr 11 09:35:59 EDT 2014


On 04/09/2014 05:09 PM, Raffi Enficiaud wrote:
> After Brad’s feedbacks, I did the following:
> - fix + clean the documentation
> - remove any unwanted message, added a variable in order to print diagnostic
> - cleaned variable/function names
> - changed macros to function
> - added components: mex compiler, eng/mx libraries, matlab program
> - proper version testing
> - making use of FindPackageHandleStandardArgs for the version + components + variables

Thanks.  I'll take another look through the module when I get a chance.
You should be able to make further progress with the comments below.

> I avoided using the new syntax of cmake 3.x because I am still using 2.8.12
> and I also would like ppl to get this new package and run it on older versions.

If it is going to be added upstream it needs to have the appropriate
documentation syntax.  You can still use comment blocks starting in
'#' on every line as most modules currently do and it will work with
2.8.12.

> The current solution I am seeing now is to do a test on a cmake
> script that does the job of launching the command and flushing
> the log file onto the console.

Many of our tests use "cmake -P" to run a cmake script that performs
the test inside.  You can use -Dvar=${val} before the -P option to
pass options to the script, such as $<TARGET_FILE_DIR:my_mex_target>.

> - Is it ok if we create log files of leave them onto the disk?

Yes, but they should be inside the CMake build tree so there are
no side effects left when the tree is removed.

> two modes for querying the registry: x86 and x64 modes.
> This is not very clear to me what I should do on that:

The find_library command expands registry values with the view
that matches the target architecture.  The find_program command
looks at the matching architecture first and then the other one:

 http://cmake.org/gitweb?p=cmake.git;a=blob;f=Source/cmFindCommon.cxx;hb=v3.0.0-rc3#l347

This is how most of the modules deal with the difference.  I'm
not familiar enough with matlab to say what should be done here.

Thanks,
-Brad




More information about the cmake-developers mailing list