cygport

Jon Turney jon.turney@dronecode.org.uk
Thu Sep 15 17:45:24 GMT 2022


On 10/01/2022 18:10, Achim Gratz wrote:
> 
> I've rebased the remaining patches on my to-upstream branch onto the
> current release of cygport:
> 
> https://repo.or.cz/cygport/rpm-style.git/shortlog/refs/heads/to-upstream
> 
> Note that some of these are required to correctly build and distribute
> Perl and its modules for Cygwin (which is one reason I carry these for
> several years now).

I'm not keen on reviewing patches supplied that way, but ok...

> 5bc72c1 lib/pkg_pkg: allow suppression of spurious package dependencies

As far as I recall, previous discussion of this petered out with "please 
give a concrete example where the dependency autodetection is wrong, and 
explain why it can't be fixed".

If I'm misremembering, please point that out.

The new variable this introduces needs documenting.

> f5764cf lib/pkg_info.cygport: implement automatic determination of the appropriate perl5_0xy requirement

This looks like a fix for the previous commit, mixed in with some rebase 
detritus.

> f1fdfb4 lib/src_prep.cygpart: process various checksum digests

The change to cygpatch to allow .xz and .zst compressed patches needs 
breaking out as a separate change.  That should also improve the 
documentation of PATCH_URI to mention that it handles compressed patch 
files transparently.

This needs a documentation change to mention when prep will verify 
checksums.

It seems that __chksum_verify() ignores the result of running *sum.  Why?

Ideally, a test should be added or extended to exercise this.

> 63e00e5 lib/src_prep.cygpart: determine and deal correctly with another type of checksum

This should be combined with the previous patch?

> 8a325c5 bin/cygport.in: make system-wide defaults overrideable by user defaults and provide ability to change initial MAKEOPTS via CYGPORT_MAKEOPTS

This seems to be two separate changes.

The documentation for cygport.conf should be updated to reflect that 
~/.cygport.conf overrides /etc/cygport.conf.

What it the use case for being able to override MAKEOPTS with a 
environment variable?

CYGPORT_MAKEOPTS needs documenting.

> 74935d6 bin/cygport.in, lib/help.cygpart: implement --jobs/-j N option to specify number of jobs to use

This seems to contain part of the previous change, removing the break 
when looping over config files.

Why do we need both -j and CYGPORT_MAKEOPTS?

> 7777191 allow for different package compression types and implement ZStandard decompression

The change to unpack .tar.zst or .zst sources needs to be separate.

Ideally, a test should be added or extended to exercise that.

If the intention is to set CYGPORT_TAR_EXT and CYGPORT_TAR_CMD in the 
cygport, I don't think they need the CYGPORT_ prefix.

These variables need documenting.

This seems like a weird implementation to me.  Why can't cygport set 
TAR_CMD to invoke tar with the appropriate compression option, depending 
on what TAR_EXT is set to?

> 34502d2 (stromenko/to-upstream) lib/src_install.cygpart: make_etc_defaults, create diff if files aren't matching

This seems kind of useful, but what's the reasoning behind saving a diff 
vs. just saving a backup copy of the previous file?

The documentation for make_etc_defaults should mention this behaviour.



More information about the Cygwin-apps mailing list