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

ci: Fix build of linux wheel requiring cmake<3.14 #116

Merged

Conversation

jcfr
Copy link
Contributor

@jcfr jcfr commented May 27, 2019

Since starting with CMake 3.14, only manylinux2010 compatible wheels are
available, requiring any version of cmake ends building cmake from source
when installed from a manylinux1 system.

See scikit-build/cmake-python-distributions#76

Since starting with CMake 3.14, only manylinux2010 compatible wheels are
available, requiring any version of cmake ends building cmake from source
when installed from a manylinux1 system.

See scikit-build/cmake-python-distributions#76
@jcfr
Copy link
Contributor Author

jcfr commented May 27, 2019

Duplicate of #115

@jokva
Copy link

jokva commented May 27, 2019

Thank you. This is a good fix while we consider building manylinux2010 images instead.

@jokva jokva merged commit c05ad48 into equinor:master May 27, 2019
@jokva jokva mentioned this pull request May 27, 2019
@jcfr jcfr deleted the download-cmake-less-3.14-to-support-manylinux1 branch May 27, 2019 15:54
@jcfr
Copy link
Contributor Author

jcfr commented May 27, 2019

while we consider building manylinux2010 images instead.

An path forward could be to simplify the CI configuration and remove the dependency on multibuild. Similar to what was done with https://github.com/amueller/word_cloud
Let me know what you think or if you have questions.

In the mean time, I reported the following issues:

@jokva
Copy link

jokva commented May 27, 2019

Does that mean that scikit-addons will provide a manylinux-compatible build environment on travis, circle or similar?

@jcfr
Copy link
Contributor Author

jcfr commented May 27, 2019

Short answer: yes, scikit-ci-addons along with the manylinux dockcross images will simplify the overall CI pipeline.

Long answer:

In the case of word_cloud, the CI services are used like this:

  • appveyor: windows wheels
  • circleci: manylinux wheels
  • travis: macos wheels

scikit-ci-addons provides few convenience scripts to help configure environment, in the context of dlisio, it could be helpful to:

  • install python on travis using install-pyenv-py.
  • (if desired) automatically upload the wheels associated with master as GitHub release associated with a tag called latest. This can be done using publish-github-release-py

All of that said, instead of appveyor (for windows wheels) and travis (for macos wheels), I suggest to improve further on what I setup for word_cloud and do the following:

  • Azure-Pipelines for macos and windows wheel
  • CircleCI for manylinux wheels as the docker integration of circleci is very nice.

At that time, Azure-Pipelines wasn't available.

the manylinux environment

scikit-ci-addons will provide a manylinux-compatible build environment on travis, circle

scikit-ci-addons is not related to manylinux, the official manylinux environment is available in the official docker image, that said I instead suggest to use the dockcross image dockcross/manylinux2010-x64 that already include ninja, cmake and scikit-build. Along with python 3.8 to test ahead of the upcoming stable release.

@jokva
Copy link

jokva commented May 27, 2019

Alright, excellent, then we'll surely make plans to migrate.

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

Successfully merging this pull request may close these issues.

2 participants