Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor CMake binding configuration #2581

Closed
rcurtin opened this issue Aug 24, 2020 · 1 comment · Fixed by #2608
Closed

Refactor CMake binding configuration #2581

rcurtin opened this issue Aug 24, 2020 · 1 comment · Fixed by #2608

Comments

@rcurtin
Copy link
Member

rcurtin commented Aug 24, 2020

What is the desired addition or change?

This comes out of the discussion for the R bindings: #2556 (comment)

At the end of src/mlpack/CMakeLists.txt, there is a section for each binding type. It would be cleaner if we instead created macros like post_markdown_setup() for each of the existing binding languages (Julia, Go, Python) in each binding directory's CMakeLists.txt (i.e. src/mlpack/bindings/*/CMakeLists.txt), and then simply called those macros.

What is the motivation for this feature?

A cleaner CMake configuration. :)

If applicable, describe how this feature would be implemented.

So, in an ideal world, there would be a block at the end of src/mlpack/CMakeLists.txt like this:

post_python_setup()
post_julia_setup()
post_go_setup()
post_markdown_setup()

and that would be the only code in that file related to the bindings.

Additional information?

This is a pretty simple refactoring, so it could be a nice starter task for anyone looking to get involved with mlpack. Some CMake knowledge is probably necessary, but CMake isn't too hard to learn. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant