-
Notifications
You must be signed in to change notification settings - Fork 310
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
Update cugraph python build #2378
Update cugraph python build #2378
Conversation
…tension build and setup, rely on skbuild setup instead
…ad of building it
…stalled because of version conflict
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please double-check the RPATH updates to make sure that you have enough ..
everywhere. I think I got them all, but I may have missed one or two.
@@ -94,46 +62,16 @@ def run(self): | |||
os.system('rm -rf *.egg-info') | |||
os.system('find . -name "*.cpp" -type f -delete') | |||
os.system('find . -name "*.cpython*.so" -type f -delete') | |||
os.system('rm -rf _skbuild') | |||
|
|||
|
|||
cmdclass = dict() | |||
cmdclass.update(versioneer.get_cmdclass()) | |||
cmdclass["build_ext"] = build_ext | |||
cmdclass["clean"] = CleanCommand |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same questions as for cugraph's setup.py. You don't need to set build_ext
, I'm not 100% sure you need the custom CleanCommand
, and you should be able to use versioneer.cmdclass
directly without the update
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not 100% sure you need the custom CleanCommand
I think it is useful because whenever I run setup.py clean
, it doesn't for instance remove _skbuild
so I added it to the list.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Got it, sure that's fine then.
rerun tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! Thanks @jnke2016!
@@ -94,46 +62,16 @@ def run(self): | |||
os.system('rm -rf *.egg-info') | |||
os.system('find . -name "*.cpp" -type f -delete') | |||
os.system('find . -name "*.cpython*.so" -type f -delete') | |||
os.system('rm -rf _skbuild') | |||
|
|||
|
|||
cmdclass = dict() | |||
cmdclass.update(versioneer.get_cmdclass()) | |||
cmdclass["build_ext"] = build_ext | |||
cmdclass["clean"] = CleanCommand |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Got it, sure that's fine then.
@@ -245,3 +245,23 @@ def get_repo_cmake_info(names, file_path): | |||
def _get_repo_path(): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's fine then. I see the same logic in cuML, and cudf has some of the same functions directly in setup.py. I have previously wondered if in addition to the CMake code in rapids-cmake there might not also be a use case for a small standalone Python module (not even a package) of setup.py helpers that could be shared across RAPIDS libs. This is definitely making me reconsider that possibility, but it's out of scope for now. I'm good to leave this as is for the moment.
@gpucibot merge |
This PR updates cugraph python build to use scikit-build instead of setuptools.
Scikit-build leverages cmake to build the python extension
closes #2333