Re: Up for adoption: ctags and expat

2024-06-06 Thread Brian Inglis via Cygwin-apps

On 2024-06-05 12:48, Jon Turney via Cygwin-apps wrote:

On 12/08/2016 20:41, Corinna Vinschen wrote:

On Aug 12 11:57, Warren Young wrote:
On Aug 12, 2016, at 7:57 AM, Corinna Vinschen 

Cool!  If you want to take over ctags and test universal ctags for
Cygwin, feel free if Warren agrees.

I'm interested in doing ITA on ctags as gvim-X user to get onto u-ctags!


Frank,
It looks like we never got a universal-ctags package, so I'm not sure what the 
status of exuberant-ctags maintainer-ship is...


Frank was a contributor to u-ctags ~2015 but seemed mainly for Windows and 
Notepad++ plug in development.


--
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 à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry



[ITA] ctags

2024-06-06 Thread Brian Inglis via Cygwin-apps

On 2024-06-06 02:32, Brian Inglis via Cygwin-apps wrote:

On 2024-06-05 12:48, Jon Turney via Cygwin-apps wrote:

On 12/08/2016 20:41, Corinna Vinschen wrote:

On Aug 12 11:57, Warren Young wrote:

On Aug 12, 2016, at 7:57 AM, Corinna Vinschen

Cool!  If you want to take over ctags and test universal ctags for
Cygwin, feel free if Warren agrees.

I'm interested in doing ITA on ctags as gvim-X user to get onto u-ctags!


Frank,
It looks like we never got a universal-ctags package, so I'm not sure what the 
status of exuberant-ctags maintainer-ship is...


Frank was a contributor to u-ctags ~2015 but seemed mainly for Windows and 
Notepad++ plug in development.


I would like to adopt ctags and update it to successor universal-ctags.

Successful package build with a couple of failed tests with known causes:

https://cygwin.com/cgi-bin2/jobs.cgi?srcpkg=ctags

log at:

https://github.com/cygwin/scallywag/actions/runs/9399504588

cygport attached and at:

https://cygwin.com/cgit/cygwin-packages/ctags/tree/ctags.cygport?h=playground

--
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 à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry#|/usr/bin/cygport
# ctags.cygport - ctags Cygwin package build control script definitions
# converted by rpmspec2cygport.sh 1.1 2024-06-06 07:47:49+

NAME=ctags
VERSION=6.1.0
RELEASE=1

CATEGORY="Text Devel"
SUMMARY="Programming language source indexing and cross-reference tool"
DESCRIPTION="Generates an index (tag) file of language objects found in
source files.
The index makes it easy for text editors or other utilities to locate
the indexed items.
Ctags can also generate a cross reference file which lists information
about the various objects found in a set of language files in human
readable form.
Exuberant Ctags improves on ctags because it can find all types of
language tags, including macro definitions, enumerated values (values
inside enum{...}), function and method definitions, enum/struct/union
tags, external function prototypes, typedef names and variable
declarations.
Exuberant Ctags is far less likely to be fooled by code containing
preprocessor conditional constructs than ctags.
Exuberant ctags supports output of Emacs style TAGS files and can be
used to print out a list of selected objects found in source files.
Install ctags if you are going to use your system for C programming."

PROJECT=universal-$NAME
HOMEPAGE=https://github.com/$PROJECT/$NAME
HOMEPAGE=https://$NAME.io/
SRC_DIR=$PROJECT-$VERSION
SRC_URI=https://github.com/$PROJECT/$NAME/releases/download/v$VERSION/$PROJECT-$VERSION.tar.gz
DEBIAN=https://sources.debian.org/data/main/${NAME:0:1}/$NAME/$VERSION-$RELEASE/debian/patches
FEDORA=https://src.fedoraproject.org/rpms/$NAME/raw/master/f
OPENSUSE=https://raw.githubusercontent.com/bmwiedemann/openSUSE/master/packages/${NAME:0:1}/$NAME
PATCH_URI=

DEPEND="libiconv-devel libjansson-devel libpcre2-devel"
DEPEND+=" libxml2-devel libyaml-devel"  # libseccomp-devel(Linux)
DEPEND+=" autoconf automake gcc-core make pkg-config python39-docutils"
BUILD_REQUIRES="$DEPEND"
unset DEPEND

CYGCONF_ARGS=--enable-etags
#--enable-coverage-gcov enable 'gcov' coverage testing tool [no]
#--enable-cross-guesses={conservative|risky}specify policy for 
cross-compilation guesses
#--enable-custom-config=FILEenable custom config file for site-wide 
defaults
#--enable-debugging enable debugging features
#--enable-dependency-tracking   do not reject slow dependency extractors
#   --disable-dependency-tracking   speeds up one-time build
#--enable-etags enable the installation of links for 
etags
#   --disable-extended-format   disable extension flags; use original 
ctags file format only
#   --disable-external-sort use internal sort algorithm instead of 
sort program
#   --disable-iconv disable multibyte character encoding 
support
#   --disable-json  disable json support
#   --disable-largefile omit support for large files
#--enable-macro-patternsuse patterns as default method to locate
#   macros instead of line numbers
#   --disable-option-checking   ignore unrecognized --enable/--with 
options
#   --disable-pcre2 disable pcre2 support
#   --disable-readcmd   do not include readtags command during 
install
#   --disable-seccomp   disable seccomp support
#--enable-silent-rules  less verbose build output (undo: "make 
V=1")
#   --disable-silent-rules  verbose build output (undo: "make V=0")
#--enable-sta

Re: [ITA] ctags

2024-06-06 Thread Brian Inglis via Cygwin-apps

On 2024-06-06 12:31, Brian Inglis via Cygwin-apps wrote:

On 2024-06-06 02:32, Brian Inglis via Cygwin-apps wrote:

On 2024-06-05 12:48, Jon Turney via Cygwin-apps wrote:

On 12/08/2016 20:41, Corinna Vinschen wrote:

On Aug 12 11:57, Warren Young wrote:

On Aug 12, 2016, at 7:57 AM, Corinna Vinschen

Cool!  If you want to take over ctags and test universal ctags for
Cygwin, feel free if Warren agrees.

I'm interested in doing ITA on ctags as gvim-X user to get onto u-ctags!


Frank,
It looks like we never got a universal-ctags package, so I'm not sure what 
the status of exuberant-ctags maintainer-ship is...


Frank was a contributor to u-ctags ~2015 but seemed mainly for Windows and 
Notepad++ plug in development.


I would like to adopt ctags and update it to successor universal-ctags.

Successful package build with a couple of failed tests with known causes:

 https://cygwin.com/cgi-bin2/jobs.cgi?srcpkg=ctags

log at:

 https://github.com/cygwin/scallywag/actions/runs/9399504588

cygport attached and at:

https://cygwin.com/cgit/cygwin-packages/ctags/tree/ctags.cygport?h=playground


Packaged universal-ctags 6.1 performance was:

Timetagspackage
 6s  8MBctags source tree including multi-language test examples
12s 22MBnewlib-cygwin source tree

--
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 à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry


[ITP] python-license-expression and cygport PoC patch

2024-06-06 Thread Brian Inglis via Cygwin-apps
I found github/nexB/license-expression Python package to do SPDX licence checks 
developed by the same team doing SPDX-toolkit for SPDX, using the same current 
data, by and working with Fedora folks et al.


Successful attempt to package Python license-expression (without tests):

https://cygwin.com/cgi-bin2/jobs.cgi?id=8210

log at:

https://github.com/cygwin/scallywag/actions/runs/9293093201

cygport attached and at:

https://cygwin.com/cgit/cygwin-packages/playground/commit/?id=3626386b10c967f780547d1703ad23bd50f6331a

The package installs and runs using PoC attached in spdx-license-expression.py 
script hooked into /usr/share/cygport/lib/pkg_pkg.cygpart license hint addition 
patch attached.


I also ran a test of the Python script and module against all package source 
cygport files declaring licences which I maintain or ever looked at, including a 
git/cygwin-packages/*.cygport download from 2023-02, showing the results in the 
attached log.
I also attempted to trap the exceptions in the script, but that does not seem to 
work in any documented obvious manner, but I do not know enough Python to 
address this fully.


If someone else who knows python cared to adopt and improve this in a more 
normal manner, and incorporate this more smoothly into cygport, we could all 
appreciate that.

Alternatively, some candid comments and frank feedback might allow me to do so! 
;^>

--
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 à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry#|/usr/bin/cygport
# python-license-expression.cygport - Python license-expression Cygwin package 
build control script definitions

inherit python-wheel

NAME=python-license-expression
VERSION=30.3.0
RELEASE=1

BASE=${NAME#python-}

CATEGORY=Python
SUMMARY="Python license expression utility library"
DESCRIPTION="Python utility library to parse, compare, simplify and normalize
license expressions (such as SPDX license expressions)."

ARCH=noarch

LICENSE=Apache-2.0
LICENSE_SPDX="SPDX-License-Identifier: $LICENSE"
# SPDX-License-Identifier: Apache-2.0
LICENSE_URI="NOTICE apache-2.0.LICENSE"

DOCS="
license-expression.ABOUT
AUTHORS.rst CHANGELOG.rst CODE_OF_CONDUCT.rst README.rst
$LICENSE_URI
"

#!/usr/bin/python
"""spdx-license-expression.py - validate SPDX licence expression

Usage: spdx-license-expression.py 

Author: Brian Inglis 
"""

from license_expression import get_spdx_licensing
import sys

def main(args):
if len(args) != 1:
print("usage: " + sys.argv[0] + " ",
  file=sys.stderr)
return 1

licensing = get_spdx_licensing()
expression = args[0]
errs = licensing.validate(expression).errors
#ExpressionInfo(
#   original_expression='... and MIT and GPL-2.0+',
#   normalized_expression=None,
#   errors=['Unknown license key(s): ...'],
#   invalid_symbols=['...']
#)
for e in errs:
print(e, file=sys.stderr)
if len(errs) >= 1:
return 2

if __name__ == "__main__":
sys.exit(main(sys.argv[1:]))

--- origsrc/lib/pkg_pkg.cygpart.orig2023-03-08 06:07:57.0 -0700
+++ src/lib/pkg_pkg.cygpart 2024-05-29 14:18:46.534998000 -0600
@@ -625,6 +641,7 @@ _EOF
fi
if [ -n "${LICENSE}" ]
then
+   spdx-license-expression.py "${LICENSE}" || true
cat >> ${distdir}/${PN}/${PN}-${PVR}-src.hint 
<<-_EOF
 license: ${LICENSE}
 _EOF
$ for licp in $(grep -l '^LICENSE=.\+$' */*.cygport)
  do
pkg=${licp%/*}
cp=${licp#*/}
cd $pkg/
eval $(cygport $cp vars LICENSE)
echo $pkg $cp "$LICENSE"
spdx-license-expression.py "$LICENSE" && \
echo SPDX licence validated: "$LICENSE"
cd -
  done

a2ps a2ps.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later

asr-manpages asr-manpages.cygport Authors
Unknown license key(s): Authors

bash-completion bash-completion.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later

bash-completion bash-completion-spec.cygport GPL-2.0-or-later
SPDX licence validated: GPL-2.0-or-later

bind bind.cygport MPL-2.0 AND ISC AND MIT AND BSD-3-Clause AND BSD-2-Clause
SPDX licence validated: MPL-2.0 AND ISC AND MIT AND BSD-3-Clause AND 
BSD-2-Clause

bison bison.cygport GPL-3.0-or-later
SPDX licence validated: GPL-3.0-or-later

ca-certificates ca-certificates.cygport Mozilla Public Licence 2.0
Unknown license key(s): Mozilla Public Licence 2.0

calm calm.cygport MIT
SPDX licence validated: MIT

c-ares c-ares.cygport MIT
SPDX licence validated: MIT

coreutils coreutils.cygport GPL-3.0-or-later AND GFDL-1.3-or-later
SPDX licence validated: GPL-3.0-or-later AND GFDL-1.3-or-later

cpuid cpuid.c

Re: [ITP] python-license-expression and cygport PoC patch

2024-06-06 Thread Brian Inglis via Cygwin-apps

On 2024-06-06 13:03, Brian Inglis via Cygwin-apps wrote:
I found github/nexB/license-expression Python package to do SPDX licence checks 
developed by the same team doing SPDX-toolkit for SPDX, using the same current 
data, by and working with Fedora folks et al.


Successful attempt to package Python license-expression (without tests):

 https://cygwin.com/cgi-bin2/jobs.cgi?id=8210


https://cygwin.com/cgi-bin2/jobs.cgi?id=8210&srcpkg=playground&user=Brian+Inglis


log at:

 https://github.com/cygwin/scallywag/actions/runs/9293093201

cygport attached and at:

https://cygwin.com/cgit/cygwin-packages/playground/commit/?id=3626386b10c967f780547d1703ad23bd50f6331a

The package installs and runs using PoC attached in spdx-license-expression.py 
script hooked into /usr/share/cygport/lib/pkg_pkg.cygpart license hint addition 
patch attached.


I also ran a test of the Python script and module against all package source 
cygport files declaring licences which I maintain or ever looked at, including a 
git/cygwin-packages/*.cygport download from 2023-02, showing the results in the 
attached log.
I also attempted to trap the exceptions in the script, but that does not seem to 
work in any documented obvious manner, but I do not know enough Python to 
address this fully.


If someone else who knows python cared to adopt and improve this in a more 
normal manner, and incorporate this more smoothly into cygport, we could all 
appreciate that.

Alternatively, some candid comments and frank feedback might allow me to do so! 
;^>


--
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 à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry


[ITP] dav1d

2024-06-06 Thread Takashi Yano via Cygwin-apps
dav1d is a decoder for AV1 video codec, which is faster
as twice as libaom.

This package is available also for fedora.
https://src.fedoraproject.org/rpms/dav1d

I'am planning to release ffmpeg where dav1d is enabled
as fedora.

Thanks in advance.

-- 
Takashi Yano 
NAME=dav1d
VERSION=1.4.2
RELEASE=1
LICENSE="BSD-2-Clause AND ISC"
CATEGORY="Video"
SUMMARY="AV1 cross-platform decoder"
DESCRIPTION="dav1d is a new AV1 cross-platform Decoder, open-source, and 
focused on speed and correctness."
HOMEPAGE=https://code.videolan.org/videolan/dav1d
SRC_URI=https://code.videolan.org/videolan/dav1d/-/archive/${VERSION}/${NAME}-${VERSION}.tar.bz2

inherit meson

PKG_NAMES="dav1d libdav1d7 libdav1d-devel"
dav1d_CONTENTS="usr/bin/*.exe usr/share"
libdav1d7_CONTENTS="usr/bin/*.dll"
libdav1d_devel_CONTENTS="usr/lib usr/include"

BUILD_REQUIRES="nasm meson pkg-config libxxhash-devel"