#28908 closed enhancement (fixed)

spkg-configure for cbc

Reported by: mkoeppe Owned by:
Priority: major Milestone: sage-9.1
Component: packages: optional Keywords:
Cc: dimpase Merged in:
Authors: Matthias Koeppe Reviewers: Dima Pasechnik
Report Upstream: N/A Work issues:
Branch: 2b07cf5 (Commits, GitHub, GitLab) Commit: 2b07cf5ba64c9557c6e6f3f008168886da7e69ad
Dependencies: #28175, #27870 Stopgaps:

Status badges

Description (last modified by mkoeppe)

We add spkg-configure for the optional package cbc.

Because OptionalExtension does not know about packages found by spkg-configure (see #25828), this is only useful on top of #28175.

Change History (9)

comment:1 Changed 22 months ago by mkoeppe

  • Authors set to Matthias Koeppe
  • Dependencies set to #28175
  • Description modified (diff)
  • Milestone changed from sage-9.0 to sage-9.1

comment:2 Changed 22 months ago by mkoeppe

  • Branch set to u/mkoeppe/28908_spkg_configure_cbc

comment:3 follow-up: Changed 22 months ago by dimpase

  • Commit set to 0e5b5b1d1d557f736baf788f1453b0e83b2b6888

Sage's cbc lists quite a few dependencies (readline zlib bzip2 $(BLAS)) , but none are checked by spkg-configure, whereas they are really there, as may be seen on Debian by running

ldd /usr/lib/x86_64-linux-gnu/libCbc.so.3

It seems that cbc.pc file is lacking in this sense (along with its dependencies, it seems they don't bother with anything that is external to , they really should list them - should it be reported to upstream?

Anyhow, we should write these deps out, as it's done in e.g. gsl's ticket #28879

SAGE_SPKG_CONFIGURE([cbc], [
  SAGE_SPKG_DEPCHECK([atlas openblas zlib bzip2], [
    dnl  checking with pkg-config
    PKG_CHECK_MODULES([CBC], [cbc >= 2.9.4], [], [sage_spkg_install_cbc=yes])
  ])
])

Perhaps we should update the copy of cbc.pc, to include all these deps (more precisely, all but altlas) in the Requires: field.


New commits:

86c7da7Add packages sage_numerical_backends_*
437fec5Fixup dependencies
846ca9aReplace CoinBackend, CPLEXBackend, GurobiBackend by their versions imported from sage_numerical_backends_*
3c557b4build/pkgs/sage_numerical_backends_*/spkg-install: Adjust error message
84c83f2src/doc/en/thematic_tutorials/linear_programming.rst: Update COIN/CPLEX/Gurobi install instructions
4828766MixedIntegerLinearProgram: Update docstrings for class and __init__, refer to thematic tutorial, and reduce copy-paste
189d60bget_solver: Reduce copy-paste in docstring
357e966src/doc/en/thematic_tutorials/linear_programming.rst: Update license info, URL for cbc
0e5b5b1build/pkgs/cbc/spkg-configure.m4: New
Last edited 22 months ago by dimpase (previous) (diff)

comment:4 in reply to: ↑ 3 Changed 22 months ago by mkoeppe

  • Dependencies changed from #28175 to #28175, #27870

Replying to dimpase:

Sage's cbc lists quite a few dependencies (readline zlib bzip2 $(BLAS)) , but none are checked by spkg-configure ... It seems that cbc.pc file is lacking in this sense (along with its dependencies, it seems they don't bother with anything that is external to , they really should list them - should it be reported to upstream?

I'm sure they'd like to know, please go ahead.

Anyhow, we should write these deps out, as it's done in e.g. gsl's ticket #28879

SAGE_SPKG_CONFIGURE([cbc], [
  SAGE_SPKG_DEPCHECK([atlas openblas readline zlib bzip2], [
    dnl  checking with pkg-config
    PKG_CHECK_MODULES([CBC], [cbc >= 2.9.4], [], [sage_spkg_install_cbc=yes])
  ])
])

Thanks, I'll wait with that until #27870 to be merged.

comment:5 Changed 22 months ago by dimpase

I guess their rationale for dependencies in *.pc files is that they don't assume that blas lapack zlib bzip2 (I scratched readline out, it's actually not a dependence) have *.pc files. Which is fair enough.

I've listed this ticket in #27330.

By the way, to move #27870 forward please review its dependence, #28883

comment:6 Changed 22 months ago by git

  • Commit changed from 0e5b5b1d1d557f736baf788f1453b0e83b2b6888 to 2b07cf5ba64c9557c6e6f3f008168886da7e69ad

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

cb85af7build/pkgs/cbc/spkg-configure.m4: New
2b07cf5build/pkgs/cbc/spkg-configure.m4: Add SAGE_SPKG_DEPCHECK

comment:7 Changed 22 months ago by mkoeppe

  • Status changed from new to needs_review

comment:8 Changed 22 months ago by dimpase

  • Reviewers set to Dima Pasechnik
  • Status changed from needs_review to positive_review

looks good to me

comment:9 Changed 21 months ago by vbraun

  • Branch changed from u/mkoeppe/28908_spkg_configure_cbc to 2b07cf5ba64c9557c6e6f3f008168886da7e69ad
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.