[
https://issues.apache.org/jira/browse/ARROW-13185?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Fiona La reassigned ARROW-13185:
--------------------------------
Assignee: Fiona La (was: Sarah Gilmore)
Description:
Since modifying the source directory via the build process is generally
considered non-optimal, we may want to explore alternative approaches. Our
preferred approach is to create a single MEX gateway function which delegates
to specific C++ functions. This singular MEX function will always be placed in
the build tree and added to the MATLAB path.
Advantages to this approach:
* Better organization
** All MEX functions are registered in one location
** Reduce the complexity of managing and linking many MEX files and ensuring
that they are added to the MATLAB path
** Reduce cognitive load for adding a new function
* Avoid polluting the source tree with build artifacts
* Reduce build times, building a single MEX function is faster than building
potentially hundreds
* Reduce binary bloat caused by creating a separate MEX file for every MEX
function
* Enable flexibility in terms of where C++ implementation files live
was:Since modifying the source directory via the build process is generally
considered non-optimal, we may want to explore alternative approaches. For
example, during the build process, we could create a derived source tree (a
copy of the original source tree) within the build area and place our build
artifacts within the derived source tree. Then, we could add the derived source
tree to the MATLAB search path. That's just one option, but there are others we
could explore.
Summary: [MATLAB] Create a single MEX gateway function which delegates
to specific C++ functions (was: [MATLAB] Consider alternatives to placing the
MEX binaries within the source tree)
> [MATLAB] Create a single MEX gateway function which delegates to specific C++
> functions
> ---------------------------------------------------------------------------------------
>
> Key: ARROW-13185
> URL: https://issues.apache.org/jira/browse/ARROW-13185
> Project: Apache Arrow
> Issue Type: Task
> Components: MATLAB
> Reporter: Sarah Gilmore
> Assignee: Fiona La
> Priority: Minor
>
> Since modifying the source directory via the build process is generally
> considered non-optimal, we may want to explore alternative approaches. Our
> preferred approach is to create a single MEX gateway function which delegates
> to specific C++ functions. This singular MEX function will always be placed
> in the build tree and added to the MATLAB path.
> Advantages to this approach:
> * Better organization
> ** All MEX functions are registered in one location
> ** Reduce the complexity of managing and linking many MEX files and ensuring
> that they are added to the MATLAB path
> ** Reduce cognitive load for adding a new function
> * Avoid polluting the source tree with build artifacts
> * Reduce build times, building a single MEX function is faster than building
> potentially hundreds
> * Reduce binary bloat caused by creating a separate MEX file for every MEX
> function
> * Enable flexibility in terms of where C++ implementation files live
>
>
--
This message was sent by Atlassian Jira
(v8.20.1#820001)