Re: cygport build/package issues

Thomas Wolff via Cygwin-apps <[email protected]>
Newsgroups gmane.os.cygwin.applications
Message-ID <[email protected]>
Am 20.09.2025 um 00:37 schrieb Brian Inglis via Cygwin-apps:
> On 2025-09-19 10:24, Thomas Wolff via Cygwin-apps wrote:
>>
>>
>> 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.
>
> Cygport git cygclass defaults to --depth 1, and retries without if 
> that fails because shallow clones are not supported by the upstream, 
> after issuing a message to that effect.
>
>> 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.
>
> Did you notice the `inherit git` *AFTER* the definitions hint above?
No, thanks. However, that still does not give me sparse (partial) 
checkout. Also it seems to stall after checkout:
git checkout tags/v2.051
Updating files: 100% (20100/20100), done.
HEAD is now at 8998f5dd Merge pull request #515 from googlefonts/e17
- then nothing; waited for 5 min.

>
>     https://cygwin.github.io/cygport/git_cygclass.html#git.cygclass
>
> Also `inherit font` gives you font cygclass functions to store fonts 
> in the appropriate places for use by *ALL* Cygwin apps newer than 
> those supporting only legacy Adobe types.
I assigned this package to the Fonts category but it's not really a font...

>
>     https://cygwin.github.io/cygport/git_cygclass.html#git.cygclass
>
> Note the existing package, whose cygport would need some tweaks to get 
> up to date since 2017:
>
>     https://cygwin.com/cgit/cygwin-packages/noto-emoji-fonts
My proposed package does not replace the other one; it does not provide 
the font but the emoji graphics (.png files) as used by mintty.

>
> Release v2.048 adds the Syria flag update to Unicode 16.0: you should 
> be accessing tag v2.051 for Unicode 17 Emoji (mk1).
>
> For comparison, see the Fedora spec for latest branch build F43 
> (currently == rawhide == main):
>
> https://src.fedoraproject.org/rpms/google-noto-emoji-fonts/blob/f43/f/google-noto-emoji-fonts.spec 
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.