lafiona opened a new pull request #12424: URL: https://github.com/apache/arrow/pull/12424
## Overview The MATLAB Interface to Arrow contains a [MEX](https://mathworks.com/help/matlab/call-mex-files-1.html?s_tid=CRUX_lftnav) function named `mexfcn` to delegate MATLAB calls to C++ functions that implement the functionality. When the interface is installed, the name of the MEX function, `mexfcn`, is on the global [MATLAB Search Path](https://mathworks.com/help/matlab/matlab_env/what-is-the-matlab-search-path.html). Because the previous name only captured that it is related to MEX functionality, it may cause conflicts with functions outside of the MATLAB Interface to Arrow. ## Implementation The following changes were made to address the potential naming conflict: - Rename the MEX function to `call`. - The name of the MEX file will be: `call.<mex-extension>` - Install the MEX function to the MATLAB package folder hierarchy: `+arrow/+cpp` within the installation directory. - Within MATLAB, the function is accessed by the following function signature: `arrow.cpp.call('<cpp-function-name>', <cpp-function-argument-1>, ..., <cpp-function-argument-N>)`. - Install all dependencies of the MEX function to the same package folder hierarchy. - Updated MATLAB tests to use the new function name. ## Testing - The change was qualified locally on Windows 10 (Ninja and Visual Studio), macOS 11.5 (Ninja and Xcode) for the following configurations: - Build both Arrow and GTest. - Use `ARROW_HOME` and `GTEST_ROOT`. - Additionally, the GitHub Actions CI passed for the change on Linux and macOS. ## Notes Thank you for working on this pull request with me, @kevingurney! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
