Re: cygport build/package issues
Thomas Wolff via Cygwin-apps <[email protected]>
| Newsgroups | gmane.os.cygwin.applications |
|---|---|
| Message-ID | <[email protected]> |
Am 18.09.2025 um 05:32 schrieb Brian Inglis via Cygwin-apps:
> On 2025-09-16 15:42, Thomas Wolff via Cygwin-apps wrote:
>> questions for a new package:
>> * Is there a way to specify a git clone for download rather than a
>> download URI?
>
> See:
>
> https://cygwin.github.io/cygport/git_cygclass.html
>
> for example:
>
> GIT_URI=https://github.com/$NAME/$NAME
> GIT_BRANCH=$NAME
> GIT_TAG=v$VERSION
> GIT_REV=
>
> inherit git
>
>> * I have a build script (which also downloads actual sources).
>> Is there a cygwin function to invoke it or do I have to put it into
>> src_compile and abuse the compile step for it?
> Please avoid that as enough abuse of cygport functions is normally
> required to handle non-standard package processing. ;^>
>
> See:
>
> https://cygwin.github.io/cygport/toc_index.html
>
> Convert the build script to cygport functions; see:
>
> https://cygwin.github.io/cygport/compilers_cygpart.html
>
> https://cygwin.github.io/cygport/src_install_cygpart.html
>
> https://cygwin.github.io/cygport/src_postinst_cygpart.html
>
> https://cygwin.github.io/cygport/pkg_pkg_cygpart.html
>
> https://cygwin.github.io/cygport/cygport_testsuite_functions.html
>
> Standard top level functions:
>
> src_compile() {
> cd ${S}
> cygautoreconf
> cd ${B}
> cygconf
> cygmake
> }
>
> src_install() {
> cd ${B}
> cyginstall
> }
>
> src_test() {
> cd ${B}
> cygtest
> }
>
> Some higher level functions:
>
> cygautoreconf
> cygcmake
> cygconf
> cyginstall
> cygmake
> cygmeson
> cygninja
> cygqmake3
> cygqmake4
> cygqmake5
> cygtest
>
> others:
>
> https://cygwin.github.io/cygport/cygport_general_functions.html
>
> and there are plenty of classes with overloads, if those apply:
>
> https://cygwin.github.io/cygport/cygport_cygclasses.html
>
> https://cygwin.github.io/cygport/cygport_overloads.html
>
> For any commands which do not map to appropriate cygport functions, or
> are not done automatically, you can put those into a Makefile and
> invoke it with cygmake.
>
>> * Is there a way to specify files (like the build script in this case)
>> to be included in the source package?
> SRC_URI+=" https://..."
> SRC_URI+=" filename"
>
> The intent is for all packages to be built using cygport to support CI
> and any policies and approaches desired, and automate a *LOT* of any
> grunt work commonly required!
>
> The desire is to eventually have validated deployments only via
> cygport, scallywag, and calm, or successors.
>
> Post the build script, or a link to the package definition, spec,
> ebuild, etc. on other distros or sites, for advice, suggestions, and
> help porting it to cygport.
>
Thanks for the SRC_URI+= hint. The GIT_URI, GIT_TAG hint did not work,
nothing was downloaded. Also it's a huge repository and I'd prefer
shallow clone (--depth 1) and sparse checkout.
I've uploaded a source package of my proposed package to
http://towo.net/cygwin/emojis-noto-v2.048-1-src.tar.xz for consideration.
Thomas