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

build: Remove manual CGAL install #315

Draft
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

matthewfeickert
Copy link
Member

@matthewfeickert matthewfeickert commented Sep 13, 2024

Addresses (and maybe resolves, will need to check) Issue #193.

  • build: Remove manual CGAL install

    • Remove the manual download of CGAL from setup.py.
    • Remove --with-cgaldir autogen.sh flag as CGAL should be installed in a location by the package managers or user that it is findable.
  • build: Add manual CGAL install for Linux cibuildwheel

    • The cibuildwheel Linux container is CentOS 7 based, but CGAL is not packaged for CentOS with yum — only for apt-get, Homebrew, and conda-forge. For Linux cibuildwheel builds this then requires that the CGAL headers (CGAL is header only) need to be manually downloaded from GitHub and then copied into /usr/include/.
  • docs: Add libcgal-dev install to README

    • Add libcgal-dev to the required packages to install for Linux based development.
  • ci: Add cgal install to CI

    • Use package managers to install libcgal-dev (Linux) and cgal (macOS) in CI jobs.

@matthewfeickert
Copy link
Member Author

matthewfeickert commented Sep 13, 2024

This is ready for review. On my fork I also manually started a wheels build to verify that everything passed across all wheels. (Linux aarch64 jobs take a long time due to emulation — c.f. scikit-hep/boost-histogram#958, which is related but not the main time sink.)

image

* Remove the manual download of CGAL from setup.py.
* Remove '--with-cgaldir' autogen.sh flag as CGAL should be installed
  in a location by the package managers or user that it is findable.
* The cibuildwheel Linux container is CentOS 7 based, but CGAL is
  not packaged for CentOS with yum --- only for apt-get, Homebrew,
  and conda-forge. For Linux cibuildwheel builds this then requires
  that the CGAL headers (CGLA is header only) need to be manually
  downloaded from GitHub and then copied into /usr/include/.
* Add libcgal-dev to the required packages to install for Linux based
  development.
* Use package managers to install libcgal-dev (Linux) and cgal (macOS)
  in CI jobs.
…-cgal-header-only'


From `./configure --help`:

```
  --enable-cgal           enables link with the CGAL library default=no
  --enable-cgal-header-only   enable build with header-only install of CGAL, e.g. as for CGALv5; in that case do not use --enable-cgal default=no
```
@matthewfeickert matthewfeickert marked this pull request as draft September 17, 2024 08:38
@matthewfeickert
Copy link
Member Author

matthewfeickert commented Sep 17, 2024

Putting into draft state until PR #319 is merged or closed.

…--enable-cgal-header-only'"

This reverts commit 363f100.
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.

1 participant