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

polymake: Add system package lists for Perl prereqs #29054

Closed
mkoeppe opened this issue Jan 20, 2020 · 25 comments
Closed

polymake: Add system package lists for Perl prereqs #29054

mkoeppe opened this issue Jan 20, 2020 · 25 comments

Comments

@mkoeppe
Copy link
Member

mkoeppe commented Jan 20, 2020

We add the lists of system packages providing polymake's Perl prerequisites
so that ./configure will include them in the list of suggested packages.

At least for the distributions that provide these packages, this is more reliable than depending on users reading build/pkgs/polymake/SPKG.txt.

This is achieved by adding them in distros/ of a new script package perl_cpan_polymake_prereq (a new dependency of polymake) with an spkg-configure.m4 that checks for the prerequisites and an spkg-install that always fails.

(See also the more ambitious #27763, which will not be ready for 9.1.)

CC: @dimpase @jhpalmieri @jplab @antonio-rojas @isuruf @videlec

Component: packages: experimental

Author: Matthias Koeppe

Branch/Commit: 9de4708

Reviewer: Dima Pasechnik

Issue created by migration from https://trac.sagemath.org/ticket/29054

@mkoeppe
Copy link
Member Author

mkoeppe commented Mar 17, 2020

@jhpalmieri
Copy link
Member

comment:2

Is this ready for review? Some comments, in any case: when I use this on OS X, perl_cpan_polymake_prereq fails to build, and its log file says:

.../sage-9.1.beta7/build/bin/sage-logger: line 91: .../sage-9.1.beta7/build/pkgs/perl_cpan_polymake_prereq/spkg-install: Permission denied

A key point is that it doesn't have a line matching the regular expression ^Error, so I see this:

The following package(s) may have failed to build (not necessarily
during this run of 'make polymake'):

It is safe to delete any log files and build directories, but they
contain information that is helpful for debugging build problems.
WARNING: If you now run 'make' again, the build directory of the
same version of the package will, by default, be deleted. Set the
environment variable SAGE_KEEP_BUILT_SPKGS=yes to prevent this.

I assume you're going to make spkg-install fail with a meaningful error message?


New commits:

fa4ec71bootstrap: Put SAGE_SPKG_ENABLE(...) before SAGE_SPKG_CONFIGURE_...
12c2b2aAdd script package perl_cpan_polymake_prereq

@jhpalmieri
Copy link
Member

Commit: 12c2b2a

@mkoeppe
Copy link
Member Author

mkoeppe commented Mar 24, 2020

comment:3

Thanks for the feedback. This ticket is not ready for review.

What it is missing (the same applies to the "libnauty" business on #27952) is a way for optional packages to signal configure-time errors ONLY if they are configured to be installed.

This is trickier than it sounds because optional packages may be dependencies of other optional packages.
(See also #29363 At the end of configure, indicate which optional/experimental packages are configured to be installed)

@mkoeppe
Copy link
Member Author

mkoeppe commented Apr 12, 2020

comment:4

See also - #29498 Do not check for system packages of disabled optional packages

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

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

b1936c3bootstrap: Put SAGE_SPKG_ENABLE(...) before SAGE_SPKG_CONFIGURE_...
109b86dAdd script package perl_cpan_polymake_prereq
e6b8e80build/pkgs/perl_cpan_polymake_prereq: Rename spkg-install to spkg-install.in

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

Changed commit from 12c2b2a to e6b8e80

@dimpase
Copy link
Member

dimpase commented Apr 14, 2020

comment:6

+# known correct on Fedora 23 is a blast from the past. The names are still the same on Fedora 30.

@mkoeppe mkoeppe changed the title polymake: Make it an error at sage ./configure time if Perl prerequisites are missing polymake: Add system package lists for Perl prereqs, warn at sage ./configure time if missing Apr 14, 2020
@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

Changed commit from e6b8e80 to 41839e9

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

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

c02e263build/pkgs/perl_cpan_polymake_prereq/type: Change to optional
0958eb7build/pkgs/perl_cpan_polymake_prereq/spkg-configure.m4: Only warn when polymake is going to be installed
c19360ebuild/pkgs/perl_cpan_polymake_prereq/distros/fedora.txt: Remove outdated comment
41839e9Add #! to build/pkgs/perl_cpan_polymake_prereq/spkg-install (script package!)

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

Branch pushed to git repo; I updated commit sha1. New commits:

d4d832dbuild/pkgs/perl_cpan_polymake_prereq/spkg-install: Better error message

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

Changed commit from 41839e9 to d4d832d

@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@mkoeppe mkoeppe changed the title polymake: Add system package lists for Perl prereqs, warn at sage ./configure time if missing polymake: Add system package lists for Perl prereqs Apr 14, 2020
@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

Changed commit from d4d832d to 18f1352

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

Branch pushed to git repo; I updated commit sha1. New commits:

18f1352fixup

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

Branch pushed to git repo; I updated commit sha1. New commits:

afb8a90build/pkgs/perl_cpan_polymake_prereq/spkg-configure.m4: Remove code for issueing warnings - does not work because of m4 macro reordering
9de4708build/pkgs/polymake/SPKG.txt: Update

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 14, 2020

Changed commit from 18f1352 to 9de4708

@mkoeppe
Copy link
Member Author

mkoeppe commented Apr 14, 2020

Author: Matthias Koeppe

@dimpase
Copy link
Member

dimpase commented Apr 14, 2020

comment:16

without the description on #27763 it's a bit unclear what this is meant to do.

@mkoeppe

This comment has been minimized.

@dimpase
Copy link
Member

dimpase commented Apr 14, 2020

comment:18

lgtm

@dimpase
Copy link
Member

dimpase commented Apr 14, 2020

Reviewer: Dima Pasechnik

@mkoeppe
Copy link
Member Author

mkoeppe commented Apr 14, 2020

comment:19

Thanks!

@vbraun
Copy link
Member

vbraun commented Apr 16, 2020

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

No branches or pull requests

4 participants