Re: what license is this?

2023-08-28 Thread Brian Inglis via Cygwin-apps

On 2023-08-28 13:53, ASSI via Cygwin-apps wrote:

Andrew Schulman via Cygwin-apps writes:

https://github.com/jqlang/jq/blob/master/COPYING


SPDX-License-Identifier: MIT AND CC-BY-3.0 AND dtoa AND ICU

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

Their included jq.spec says:

License: BSD

but that is contradicted by the contents of COPYING, none of which matches BSD 
0-4 +/- variants but starts with basic MIT, and the rest states CC-BY-3.0, dtoa, 
and ICU, which SPDX have assigned as named.



OpenSUSE
License:CC-BY-3.0 AND MIT

Fedora
License:MIT and ASL 2.0 and CC-BY and GPLv3

  ^^^ ?  ...^ what?/where?

Fedora has old stedolan v1.6, but even that included the IBM ICU decNumber 
package, not the alternative GCC sources which were under GPL.


--
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


Re: what license is this?

2023-08-28 Thread Andrew Schulman via Cygwin-apps
> Hi, Andrew et al.,
> 
> > https://github.com/jqlang/jq/blob/master/COPYING
> 
> Debian uses the following in its /usr/share/doc/jq/copyright file:
> 
>   License: MIT
>   License: CC-BY-3.0
>   License: Expat
>   License: GPL-2.0+
> 
> That might help...

Thank you, and Achim!

And sorry for being so grumpy about it. The whole license thing is just a joy
suck. Thanks for your help.

Andrew



Re: what license is this?

2023-08-28 Thread ASSI via Cygwin-apps
Andrew Schulman via Cygwin-apps writes:
> https://github.com/jqlang/jq/blob/master/COPYING

OpenSUSE
License:CC-BY-3.0 AND MIT

Fedora
License:MIT and ASL 2.0 and CC-BY and GPLv3


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Factory and User Sound Singles for Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#WaldorfSounds


Re: what license is this?

2023-08-28 Thread John Zaitseff via Cygwin-apps
Hi, Andrew et al.,

> https://github.com/jqlang/jq/blob/master/COPYING

Debian uses the following in its /usr/share/doc/jq/copyright file:

  License: MIT
  License: CC-BY-3.0
  License: Expat
  License: GPL-2.0+

That might help...

Yours truly,

John Zaitseff

-- 
John Zaitseff   ╭───╮   Email: j.zaits...@zap.org.au
The ZAP Group   │ Z │   GnuPG: 0x0D254111C4EE569B
Australia Inc.  ╰───╯   https://www.zap.org.au/~john/


what license is this?

2023-08-28 Thread Andrew Schulman via Cygwin-apps
https://github.com/jqlang/jq/blob/master/COPYING

Most parts of this are "as is, do what you want but preserve this notice." That
has the spirit of the Beerware license[1], but it's not exactly that. I'm sure
there must be another license on the SPDX list[2] that fits better, but I can't
tell which one without reading them all, which would make me want to kill
myself.

The rest seems to be covered by CC-BY-3.0 AND ICU.

I wish people wouldn't get so creative with their licenses.

Thanks,
Andrew

[1] https://spdx.org/licenses/Beerware.html
[2] https://spdx.org/licenses/



Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust

2023-08-28 Thread ASSI via Cygwin-apps
小さい猫 via Cygwin-apps writes:
>> - [ ] dtc (?)
>
> Ah sorry... that device tree compiler cygport repo in the github org
> is not related to LLVM stuffs. just i happened to need it for building
> something else and it's adapted from the old cygwinports-extras[1].

OK, I thought so already, but I wasn't sure.  Thanks for the
confirmation.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptation for Waldorf rackAttack V1.04R1:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada


Re: [PATCH cygport] Add initial support for SOURCE_DATE_EPOCH

2023-08-28 Thread ASSI via Cygwin-apps
Christian Franke via Cygwin-apps writes:
> If the build-path changes, more files differ (cygcheck.exe, ldd.exe,
> cygserver.exe) because __FILE__ is used and expands to an absolute
> path name.

This could be fixed by adding -fmacro-prefix and/or -ffile-prefix arguments.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptation for Waldorf microQ V2.22R2:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada


Re: [PATCH cygport] Add initial support for SOURCE_DATE_EPOCH

2023-08-28 Thread Christian Franke via Cygwin-apps

Christian Franke wrote:

A small step towards reproducible packaging...

Currently only tested with upcoming smartmontools package - contains 
only exe, man, doc files (no dll, lib, ...). Multiple cygport runs 
produce binary identical distribution tarballs if SOURCE_DATE_EPOCH 
(from the past) is specified in the cygport file.




A slightly enhanced patch is attached. For .gz files, 'gzip -n' is now 
used as suggested.



Result from a test with the cygwin-3.4.8-1 source package:

These two lines were added to cygwin.cygport:

 VERSION="3.4.8"
 RELEASE="1"
+export SOURCE_DATE_EPOCH=$(date -d '2023-08-18 UTC' +%s)
+export TZ=UTC

(TZ=UTC is a workaround for a minor bug in SOURCE_DATE_EPOCH handling of 
gropdf)


These distribution files are always identical:
- cygwin-3.4.8-1-src.tar.xz
- cygwin-doc-3.4.8-1.tar.xz

These individual files differ if the build-path of multiple test-builds 
is always the same:


- usr/bin/cygwin1.dll:
-- Contains a build timestamp not based on '__DATE__ __TIME__'. Could be 
easily addressed in scripts/mkvers.sh.
-- The PE Export Tables header contains a timestamp independent from the 
PE header. There is possibly no easy way to fix this without an extra 
tool (or further enhancing peflags).


- usr/lib/lib*.a:
-- Object file time timestamps differ. Could be addressed by adding 'ar' 
option 'D' (deterministic) in Makefiles and scripts/speclib.


- usr/lib/debug/usr/bin/cygwin1.dll.dbg: As expected, because 
cygwin1.dll differ.


If the build-path changes, more files differ (cygcheck.exe, ldd.exe, 
cygserver.exe) because __FILE__ is used and expands to an absolute path 
name.


--
Regards,
Christian

From 73dde4d2dabb74b7b9ee40655204f84e1d4086d6 Mon Sep 17 00:00:00 2001
From: Christian Franke 
Date: Mon, 28 Aug 2023 16:24:36 +0200
Subject: [PATCH] Add initial support for SOURCE_DATE_EPOCH

If specified, set the header timestamps of executables and
patch files to SOURCE_DATE_EPOCH.
Suppress the header timestamp of .gz files.
Instruct tar to avoid more recent modification times and
to sort all entries by name.
---
 bin/cygport.in   | 17 +++--
 lib/pkg_pkg.cygpart  | 20 ++--
 lib/src_postinst.cygpart | 22 +++---
 3 files changed, 52 insertions(+), 7 deletions(-)

diff --git a/bin/cygport.in b/bin/cygport.in
index 3f89ac67..e2fe1785 100755
--- a/bin/cygport.in
+++ b/bin/cygport.in
@@ -231,8 +231,9 @@ source ${_privlibdir}/check_funcs.cygpart
 ###
 
 # check now for all mandatory programs
-for _myprog in bzip2 cat chmod cp diff diffstat dos2unix file find gawk grep 
gzip \
-   install ln mkdir mv patch rm rsync sed sort tar xargs which xz
+for _myprog in bzip2 cat chmod cp date diff diffstat dos2unix file find gawk 
grep \
+   gzip install ln mkdir mv patch rm rsync sed sort tar touch 
which \
+   xargs xz
 do
if ! check_prog ${_myprog}
then
@@ -490,6 +491,18 @@ do
 done
 unset restrict
 
+if [ "${SOURCE_DATE_EPOCH+y}" = "y" ]
+then
+   if [ -n "$(echo "${SOURCE_DATE_EPOCH}" | sed -e 's/^$/X/' -e 
's/[0-9]//g')" ]
+   then
+   error "Malformed SOURCE_DATE_EPOCH: '${SOURCE_DATE_EPOCH}'"
+   fi
+   case $(peflags --version 2>/dev/null | sed -n '1s/^.* //p') in
+   4.6.[6-9]|4.[7-9]*|[5-9]*) ;;
+   *) error "SOURCE_DATE_EPOCH requires peflags 4.6.6 or later"
+   esac
+fi
+
 
 

 #
diff --git a/lib/pkg_pkg.cygpart b/lib/pkg_pkg.cygpart
index 2a2bb663..4e6a7cd2 100644
--- a/lib/pkg_pkg.cygpart
+++ b/lib/pkg_pkg.cygpart
@@ -42,7 +42,7 @@ TAR_COMPRESSION_EXT="${TAR_COMPRESSION_EXT:-xz}"
 #
 
 __tar() {
-   local TAR_COMPRESSION_OPT;
+   local TAR_COMPRESSION_OPT TAR_SOURCE_DATE_OPTS;
 
# We could use --auto-compress, but this also constrains the extension
# to the currently valid set. We could probe if tar supports the
@@ -65,7 +65,14 @@ __tar() {
error "tar option for 
TAR_COMPRESSION_EXT='${TAR_COMPRESSION_EXT}' unknown"
;;
esac
-   tar ${TAR_COMPRESSION_OPT} --owner=Guest:501 --group=None:513 -cvf "$@"
+
+   if [ -n "${SOURCE_DATE_EPOCH}" ]
+   then
+   # Ensure reproducible sort order and last modification times <= 
SOURCE_DATE_EPOCH
+   TAR_SOURCE_DATE_OPTS="--sort=name --mtime=@${SOURCE_DATE_EPOCH} 
--clamp-mtime"
+   fi
+
+   tar ${TAR_COMPRESSION_OPT} ${TAR_SOURCE_DATE_OPTS} --owner=Guest:501 
--group=None:513 -cvf "$@"
 }
 
 __pkg_binpkg() {
@@ -319,6 +326,7 @@ __pkg_diff() {
local difflevel;
local exclude;
local optional_patchfiles;
+   local source_date;
 
default_excludes="CYGWIN-PATCHES aclocal.m4~ aclocal.m4t autom4te.cache
config.cache config.guess config.log config.status config.sub
@@ -498,6 +506,14 @@ __pkg_diff() {
 
sed -b -e '/^diff -u/d' -i ${o