-
-
Notifications
You must be signed in to change notification settings - Fork 8.7k
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
Rewrite setup.py. #5271
Rewrite setup.py. #5271
Conversation
@trivialfis Yes, refactor of setup.py was long overdue. Can you make a list of goals you’d like to achieve with this refactor? Also brief summary of what’s going on inside setup.py would be nice. |
For goals
For what's inside
|
5f33bd2
to
c588f28
Compare
@hcho3 How do I log into Jenkins and find the |
I tried to use setuptools with sphinx build, but some packages uses |
Never mind. Found the root cause. |
@RAMitchell @hcho3 Ready for review. I will resolve the conflicts along with review comments. |
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.
LGTM, please test your doc changes locally.
|
||
- A recent C++ compiler supporting C++11 (g++-5.0 or higher) | ||
- CMake 3.3 or higher (3.12 for building with CUDA) | ||
- CMake 3.12 or higher. |
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.
Is cmake 3.12 strictly necessary?
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.
Since #5146, yes. It was done to support compiling XGBoost with OpenMP on Mac OSX.
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.
@hcho3 changed it to 3.12 for Apple Clang in CMakeLists.txt
* Remove setup_pip.py * Remove soft links. * Define customized commands. * Remove shell script. * Remove makefile script. * Update the doc for building from source.
Since when it takes 1 and a half hour for appveyor to finish the tests .. ? ;-( |
This is a rewritten setup.py for a more user (and maintainer) friendly experience of managing Python packages.
Currently marked as WIP as I haven't test it on other platforms.Remove setup_pip.py
Remove soft links.
Remove shell script.
Remove makefile script.
Define customized commands.
Update documents.