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.

--
Take care. Thanks, Brian Inglis              Calgary, Alberta, Canada

La perfection est atteinte                   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher  but when there is no more to cut
                                -- Antoine de Saint-Exupéry

Reply via email to