Hi Eric,

On 2019-11-06, E. Madison Bray <erik.m.b...@gmail.com> wrote:
>> However, I heard rumours that in order to make a Sage optional package
>> uninstallable, one needs some new script analogous to spkg-install.
>>
>> Can someone give me a pointer on what should be done in that script and
>> what tools (sdh_*) are available for it?
>
> That's not quite accurate.  In general you do *not* need any
> additional scripts, with some exception.
> These packaging guidelines still need better documentation, but
> essentially you need to make sure the package is built for what is
> referred in GNU standards as a "DESTDIR install" [1].  This means that
> the package is built for installation to some particular prefix (e.g.
> `./configure --prefix=$SAGE_LOCAL` in autoconf terms), but can then be
> *installed* with some additional path (the "DESTDIR") prepended to the
> prefix.  This is similar to providing an alternate root (e.g. prefix
> is appended to DESTDIR instead of just "/").

Then what to do with p_group_cohomology? Its spkg-install script
installs two sub-packages. Each of them, I think, follows the above
scheme. However, Sage has no way of knowing that uninstalling
p_group_cohomology means uninstalling two sub-packages.

Perhaps one possibility is to split the current p_group_cohomology-3.3
into its two sub-packages, and make the first (which is autotoolized)
a dependency for the second (which is a bunch of cython and python
modules linked against the first sub-package.

Say:
- p_group_cohomology-3.4 shall only comprise what currently is the
  p/cython part of p_group_cohomology-3.3, and have modular_resolution
  as a dependency.
- modular_resolution-1.0 shall only comprise what currently is the
  autotoolized c-library part of p_group_cohomology-3.3

Advantage: "make p_group_cohomology" would also install the dependency,
hence, both packages get installed. And both packages can also be
un-installed, I suppose.

Disadvantage: The only purpose of modular_resolution-1.0 would be to
serve as a dependency, it is (to my knowledge at least) of no
independent use.

Best regards,
Simon

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/qpuqe5%247598%241%40blaine.gmane.org.

Reply via email to