On Sat, 19 Apr 2025, Jeremy Drake via Cygwin-apps wrote:

> On Sat, 19 Apr 2025, Brian Inglis via Cygwin-apps wrote:
>
> > That kind of thing would have to happen in the local Cygport or Scallywag CI
> > Windows environment, as the calm infrastructure is Fedora.
> >
> > Could we use gendef and nm/objdump to compare Cygwin definitions and uses, 
> > or
> > is there some loader function to display unresolved symbols, or the Cygwin 
> > ABI
> > required?
>
> You might be interested in my
> https://github.com/jeremyd2019/package-grokker action.  MSYS2 uses it to
> detect when rebuilds due to ABI breakage are required.  A good amount of
> it walks dependency trees from the pacman package databases, but the bits
> using pefile to match up PE imports and exports would be relevant to
> Cygwin also.  If it were taught Cygwin's package metadata, it could
> probably do the same for Cygwin.  PRs welcome ;)
>
>   package-grokker:
>     runs-on: ubuntu-latest
>     needs: build
>
>     steps:
>       - uses: actions/download-artifact@v4
>         id: artifacts
>         continue-on-error: true
>         with:
>           name: MSYS-packages
>           path: artifacts
>       - name: Grok packages
>         uses: jeremyd2019/package-grokker/grok-artifacts@main
>         if: steps.artifacts.outcome == 'success'
>         with:
>           repo: msys
>           path: artifacts

I ran this against msys2, comparing the 'old' package
msys2-runtime-3.6.1-3 to the 'new' package msys2-runtime-3.5.7-4, and got
the answer that diffutils and perl use exports from the 'old' package not
in the 'new' package.  (openssh was detected and rebuilt earlier).

https://github.com/jeremyd2019/package-grokker/actions/runs/14561163991/job/40844635216

Reply via email to