[cygport - the Cygwin packaging tool] branch master, updated. 0.34.0-159-gf3d3356

Jon TURNEY jturney@sourceware.org
Sat Jan 8 16:52:21 GMT 2022




https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=f3d335651ee1b3efcc239b77eb7d94558fc16dbb

commit f3d335651ee1b3efcc239b77eb7d94558fc16dbb
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Sat Jan 8 16:10:02 2022 +0000

    Bump version to 0.34.1

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=250b80d0f206a1d508858687b7b1c20fe9a5eb79

commit 250b80d0f206a1d508858687b7b1c20fe9a5eb79
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Sun May 9 15:51:06 2021 +0100

    Raise an error if we package files in /usr/local
    
    If we end up with files in /usr/local/ in a package, this tends to
    suggest the prefix hasn't been applied somewhere, so raise an error.

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=dc2317888958b7b93f92a9865bed159d39ee8c5b

commit dc2317888958b7b93f92a9865bed159d39ee8c5b
Author: Marco Atzeri <marco.atzeri@gmail.com>
Date:   Fri Dec 31 18:39:59 2021 +0000

    python-wheel: Update for python 3.9
    
    Change "default" from 3.6 to 3.9
    
    Additional changes:
      Remove 3.5 from all
      Change future to 3.10

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=4b60f0ba7e9d9554cc6ee0441e494afbf9a7f3e4

commit 4b60f0ba7e9d9554cc6ee0441e494afbf9a7f3e4
Author: Brian Inglis <Brian.Inglis@SystematicSw.ab.ca>
Date:   Fri Dec 31 18:23:42 2021 +0000

    Document patch names which shouldn't appear in PATCH_URI
    
    See [1] for an example of the confusion this documentation omission can
    cause.
    
    https://cygwin.com/pipermail/cygwin-apps/2021-November/041670.html

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=9ac6f40c06fbe0358edab8338ca47acc3b76c8ac

commit 9ac6f40c06fbe0358edab8338ca47acc3b76c8ac
Author: Christian Franke <christian.franke@t-online.de>
Date:   Thu Sep 2 18:52:39 2021 +0200

    Add -Werror=return-type to CXXFLAGS/OBJCXXFLAGS.
    
    Ignoring -Wreturn-type for C++ programs may lead to crashes.
    
    G++ >= 8.0 assumes that control never reaches the end of a
    non-void function.
    
    See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96181

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=f0fc5951b892ba1a9c69db623bee3b9bb634d4d6

commit f0fc5951b892ba1a9c69db623bee3b9bb634d4d6
Author: Achim Gratz <Stromeko@Stromeko.DE>
Date:   Sun Dec 5 09:57:10 2021 +0100

    autotools.cygclass: recognize WANT_AUTOCONF=2.7 / autoconf2.7 and make autoconf2.7 the default

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=62f43d09cb07748b477e6c09a532da68a7e53aeb

commit 62f43d09cb07748b477e6c09a532da68a7e53aeb
Author: Achim Gratz <Stromeko@Stromeko.DE>
Date:   Mon Jan 4 19:31:11 2021 +0100

    lib/pkg_pkg.cygpart: stop generating packages for obsoletions

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=1fbffd25721584a09055bd9708cb8a3c0e2e7b7b

commit 1fbffd25721584a09055bd9708cb8a3c0e2e7b7b
Author: Yasuhiro KIMURA <yasu@utahime.org>
Date:   Thu Jun 4 13:22:42 2020 +0900

    mirrors: update mirror_debian
    
    According to Debian worldwide mirror sites page
    (https://www.debian.org/mirror/list), current reccomended Debian mirror
    archive URL with GeoMirror capability is "http://deb.debian.org".
    So update mirror_debian to use it.
    
    And URL of mirror list is chagned to HTTPS. So update it too.

https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/cygport.git;h=dffe9b3bdde28b7f482bf59842fc75d3a4b8a170

commit dffe9b3bdde28b7f482bf59842fc75d3a4b8a170
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Fri Dec 31 14:52:43 2021 +0000

    Updates to tests for package updates
    
    * Temporarily set python3.8 as python3 with alternatives, so presence of
    python39 doesn't confuse things
    * R-nanotime 0.3.2 has been archived
    * Update the lua-lfs cygport to a version which uses LUA_INCLUDEDIR and
    LUA_LIBS correctly, since Lua 5.3/5.4 are now parallel installable.
    * Update generated documentation files list for libnotify
    * Drop workaround for incorrect shbang in mercurial, now fixed


Diff:
---
 .github/workflows/cygwin.yml                       | 13 ++--
 NEWS                                               |  6 ++
 cygclass/autotools.cygclass                        | 21 ++++--
 cygclass/python-wheel.cygclass                     | 18 ++---
 cygport.spec                                       |  2 +-
 data/mirrors                                       |  4 +-
 data/sample.cygport                                |  2 +-
 lib/compilers.cygpart                              |  4 +-
 lib/pkg_pkg.cygpart                                | 47 +------------
 lib/src_fetch.cygpart                              |  8 +++
 meson.build                                        |  2 +-
 testsuite/autotools/gnome/libnotify.list           |  3 +-
 testsuite/download/R/R-nanotime.cygport            |  2 +-
 testsuite/download/svn/python-clang.cygport        |  3 +-
 testsuite/download/svn/python-clang.list           | 40 +++++------
 .../obsoleted-by-single-2.3.4-1.hint               |  8 ---
 testsuite/lua/all/1.6.2-cygwin.patch               | 39 ----------
 testsuite/lua/all/1.8.0-Makefile.patch             | 11 +++
 testsuite/lua/all/1.8.0-lfs_c.patch                | 19 +++++
 testsuite/lua/all/lua-lfs.cygport                  | 82 +++++++++++++++++-----
 testsuite/lua/all/lua-lfs.list                     |  6 +-
 21 files changed, 175 insertions(+), 165 deletions(-)

diff --git a/.github/workflows/cygwin.yml b/.github/workflows/cygwin.yml
index ead6069..211fd0d 100644
--- a/.github/workflows/cygwin.yml
+++ b/.github/workflows/cygwin.yml
@@ -67,6 +67,7 @@ jobs:
         libgirepository1.0-devel,^
         libglibmm2.4-devel,^
         libicu-devel,^
+        liblua-devel,^
         liblzma-devel,^
         libnotify-devel,^
         libpango1.0-devel,^
@@ -76,7 +77,6 @@ jobs:
         libxfce4ui1-devel,^
         libxfconf0-devel,^
         lndir,^
-        lua-devel,^
         make,^
         mate-common,^
         mercurial,^
@@ -99,12 +99,12 @@ jobs:
         python27-pip,^
         python27-setuptools,^
         python27-wheel,^
-        python37-pip,^
-        python37-setuptools,^
-        python37-wheel,^
         python38-pip,^
         python38-setuptools,^
         python38-wheel,^
+        python39-pip,^
+        python39-setuptools,^
+        python39-wheel,^
         robodoc,^
         ruby,^
         subversion,^
@@ -114,9 +114,10 @@ jobs:
       shell: cmd
     - name: Set PATH
       run: echo "PATH=C:\cygwin64\bin;C:\cygwin64\lib\lapack;%SYSTEMROOT%\system32" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
-    - name: Fix mercurial
+    - name: Use python3.8
       run: |
-        bash -c 'sed -i s#/usr/bin/python\$#/usr/bin/python3# /usr/bin/hg'
+        bash -c '/usr/sbin/alternatives --set python /usr/bin/python3.8 ; /usr/sbin/alternatives --set python3 /usr/bin/python3.8'
+        bash -c 'sed -i s#/usr/bin/python\$#/usr/bin/python3.9# /usr/bin/pip3.9'
     - name: Build
       run: |
         bash -c 'meson _build && ninja -C _build'
diff --git a/NEWS b/NEWS
index 69e1a46..b5a8358 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,9 @@
+0.34.1:
+	* Update many URLs in HOMEPAGE, mirrors and comments.  Use https
+	  where appropriate
+	* Stop generating empty packages for obsoletions.
+	* Recongize WANT_AUTOCONF=2.7, and make autoconf2.7 the default.
+
 0.34.0:
 	* New BUILD_REQUIRES variable used in separate -src.hint files.
 	* New PROVIDES and CONFLICTS variables for setting in .hint files.
diff --git a/cygclass/autotools.cygclass b/cygclass/autotools.cygclass
index 712f437..cce9be0 100644
--- a/cygclass/autotools.cygclass
+++ b/cygclass/autotools.cygclass
@@ -368,8 +368,8 @@ cygautoreconf() {
 #****v* cygautoreconf/WANT_AUTOCONF
 #  DESCRIPTION
 #  This variable controls the version of autoconf to be used.  Valid settings
-#  are "2.1" (for the 2.13 version) and "2.5" (the default, for the 2.5x/2.6x
-#  series).
+#  are "2.1" (for the 2.13 version), "2.5" (for the 2.5x/2.6x series) and "2.7"
+#  (the default, for the 2.7x series).
 #****
 
 #****v* cygautoreconf/WANT_AUTOMAKE
@@ -391,12 +391,21 @@ cygautoreconf() {
 			warning "libtool is incompatible with autoconf-2.13";
 		fi
 		;;
-	2.5|'')
-		WANT_AUTOCONF=2.5
-
-		case $(autoconf --version 2> /dev/null | head -n 1) in
+	2.5|2.7|'')
+		case "${WANT_AUTOCONF}" in
+		2.5)
+			WANT_AUTOCONF=2.5
+			case $(autoconf --version 2> /dev/null | head -n 1) in
 			autoconf*2.[56]?) ;;
 			*)	error "autoconf2.5 is required to build this package" ;;
+			esac
+			;;
+		2.7|'')
+			WANT_AUTOCONF=2.7
+			case $(autoconf --version 2> /dev/null | head -n 1) in
+			autoconf*2.[7]?) ;;
+			*)	error "autoconf2.7 is required to build this package" ;;
+			esac
 		esac
 
 		if __config_equals with_libtool 1
diff --git a/cygclass/python-wheel.cygclass b/cygclass/python-wheel.cygclass
index 63f7f54..90b0faa 100644
--- a/cygclass/python-wheel.cygclass
+++ b/cygclass/python-wheel.cygclass
@@ -61,11 +61,11 @@ inherit python.org
 #  DESCRIPTION
 #  A colon-seperated list of version(s) for which this module should be built.
 #  Some aliases are also accepted:
-#  * all: all supported 3.y versions (currently: 3.5 through 3.8)
-#  * future: the default and upcoming 3.y versions (currently: 3.7, 3.8)
-#  * default: the default 3.y version(s) (currently: 3.7, 3.8)
+#  * all: all supported 3.y versions (currently: 3.6 through 3.9)
+#  * future: the default and upcoming 3.y versions (currently: 3.9, 3.10)
+#  * default: the default 3.y version(s) (currently: 3.8, 3.9)
 #  * 2: the default 2.x version (permanently 2.7)
-#  * 3: the default 3.x version (currently: 3.8)
+#  * 3: the default 3.x version (currently: 3.9)
 #  This variable must be defined before inheriting python-wheel.cygclass.
 #  If undefined, "default" is assumed.
 #  NOTES
@@ -93,11 +93,11 @@ _tmp_wheel_v=
 for ver in ${PYTHON_WHEEL_VERSIONS//:/ }
 do
 	case "${ver}" in
-	all)		_tmp_wheel_v+=3.5:3.6:3.7:3.8: ;;
-	future)		_tmp_wheel_v+=3.7:3.8: ;;
-	default)	_tmp_wheel_v+=3.7:3.8: ;;
+	all)		_tmp_wheel_v+=3.6:3.7:3.8:3.9: ;;
+	future)		_tmp_wheel_v+=3.9:3.10: ;;
+	default)	_tmp_wheel_v+=3.8:3.9: ;;
 	2)		_tmp_wheel_v+=2.7: ;;
-	3)		_tmp_wheel_v+=3.8: ;;
+	3)		_tmp_wheel_v+=3.9: ;;
 	*)		_tmp_wheel_v+=$ver: ;;
 	esac
 done
@@ -195,7 +195,7 @@ python_wheel_install() {
 		# ENSUREPIP_OPTIONS=install: pipX, pipX.Y, easy_install-X.Y
 
 		case ${ver} in
-		2.7|3.8) export ENSUREPIP_OPTIONS="install" ;;
+		2.7|3.9) export ENSUREPIP_OPTIONS="install" ;;
 		*) export ENSUREPIP_OPTIONS="altinstall" ;;
 		esac
 		pip${ver} install -I dist/${whl} --root ${D} --prefix /usr --no-compile --no-deps --no-warn-script-location || error "pip${ver} install failed"
diff --git a/cygport.spec b/cygport.spec
index c69a15a..f350e15 100644
--- a/cygport.spec
+++ b/cygport.spec
@@ -1,7 +1,7 @@
 %define debug_package %{nil}
 
 Name:           cygport
-Version:        0.34.0
+Version:        0.34.1
 Release:        1%{?dist}
 Summary:        Cygwin package building tool
 
diff --git a/data/mirrors b/data/mirrors
index 3e96a19..14051c7 100644
--- a/data/mirrors
+++ b/data/mirrors
@@ -115,12 +115,12 @@ mirror_ctan+=" http://mirror.ctan.org/"
 #  SYNOPSIS
 #  SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV}.orig.tar.gz"
 #  DEFAULT MIRROR
-#  https://ftp.debian.org/debian
+#  https://deb.debian.org/debian
 #  MIRROR LIST
 #  https://www.debian.org/mirror/list
 #****
 # grep '^  <td><a href' list  | sed -e 's#.*"\(.*\)/".*#\t\1#g'
-mirror_debian+=" http://ftp.debian.org/debian"
+mirror_debian+=" http://deb.debian.org/debian"
 
 
 #****d* Mirrors/mirror_gcc
diff --git a/data/sample.cygport b/data/sample.cygport
index 60cf29a..653d855 100644
--- a/data/sample.cygport
+++ b/data/sample.cygport
@@ -1,7 +1,7 @@
 inherit meson
 
 NAME="cygport"
-VERSION=0.34.0
+VERSION=0.34.1
 RELEASE=1
 CATEGORY="Devel"
 SUMMARY="Cygwin source packaging tool"
diff --git a/lib/compilers.cygpart b/lib/compilers.cygpart
index b775489..129e115 100644
--- a/lib/compilers.cygpart
+++ b/lib/compilers.cygpart
@@ -56,9 +56,9 @@ declare -x CXX="g++";
 #  Flags passed to CXX when compiling C++ code.  Individual packages may append
 #  or override this value if they will not build correctly without it.
 #  DEFAULT VALUE
-#  CFLAGS
+#  CFLAGS -Werror=return-type
 #****
-declare -x CXXFLAGS=${CFLAGS};
+declare -x CXXFLAGS="${CFLAGS} -Werror=return-type";
 
 #****d* Compiling/F77
 #  DESCRIPTION
diff --git a/lib/pkg_pkg.cygpart b/lib/pkg_pkg.cygpart
index 91e8768..586f1fe 100644
--- a/lib/pkg_pkg.cygpart
+++ b/lib/pkg_pkg.cygpart
@@ -243,7 +243,7 @@ __pkg_pkgcheck() {
 	sort < ${tmp1} > "${tmp1}.sorted";
 	mv -f "${tmp1}.sorted" ${tmp1};
 
-	if grep "\.stackdump$" ${tmp1} > ${T}/pkgcheck.lst
+	if grep -E "^usr/local|\.stackdump$" ${tmp1} > ${T}/pkgcheck.lst
 	then
 		warning "Packages contain unexpected files:";
 		cat ${T}/pkgcheck.lst;
@@ -818,32 +818,6 @@ _EOF
 			warning "${pkg_hint[${n}]%.hint}.hint is missing";
 		fi
 
-		for obspkg in ${!pkg_obsoletes_var}
-		do
-			if [ ${obspkg} = ${PN} ]
-			then
-				obssubdir= ;
-			else
-				obssubdir=${obspkg};
-			fi
-
-			mkdir -p ${distdir}/${PN}/${obssubdir};
-			tar -Jcf ${distdir}/${PN}/${obssubdir}/${obspkg}-${PVR}.tar.xz --files-from /dev/null
-
-			__step "${pkg_name[${n}]} OBSOLETES: ${obspkg}"
-
-			cat > ${distdir}/${PN}/${obssubdir}/${obspkg}-${PVR}.hint <<-_EOF
-category: _obsolete
-requires: ${pkg_name[${n}]}
-sdesc: "Obsoleted by ${pkg_name[${n}]}"
-ldesc: "The ${obspkg} package is obsolete.  Selecting this package for
-installation will cause the ${pkg_name[${n}]} package, which replaces this
-one, to be installed instead."
-${obssubdir:+external-source: ${PN}}
-${pkg_tag}
-_EOF
-		done
-
 		n+=1;
 	done
 
@@ -876,25 +850,6 @@ obsoletes: ${!dbg_obsoletes_var}
 _EOF
 			fi
 		fi
-
-		for obspkg in ${!dbg_obsoletes_var}
-		do
-			mkdir -p ${distdir}/${PN}/${obspkg};
-			tar -Jcf ${distdir}/${PN}/${obspkg}/${obspkg}-${PVR}.tar.xz --files-from /dev/null
-
-			__step "${PN}-debuginfo OBSOLETES: ${obspkg}"
-
-			cat > ${distdir}/${PN}/${obspkg}/${obspkg}-${PVR}.hint <<-_EOF
-category: _obsolete
-requires: ${PN}-debuginfo
-sdesc: "Obsoleted by ${PN}-debuginfo"
-ldesc: "The ${obspkg} package is obsolete.  Selecting this package for
-installation will cause the ${PN}-debuginfo package, which replaces this
-one, to be installed instead."
-external-source: ${PN}
-${pkg_tag}
-_EOF
-		done
 	fi
 
 	# source package hint
diff --git a/lib/src_fetch.cygpart b/lib/src_fetch.cygpart
index 203f199..1688171 100644
--- a/lib/src_fetch.cygpart
+++ b/lib/src_fetch.cygpart
@@ -58,7 +58,15 @@
 #  Individual source patches maintained locally may also be used by adding
 #  their basenames to PATCH_URI.  This provides an easy way to carry
 #  Cygwin-specific patches forward between releases.
+#
 #  NOTE
+#
+#  For historical reasons, patches with basenames of ${PVR}.{cygwin,src}.patch
+#  should not be listed in PATCH_URI, as they are treated specially and are
+#  automatically applied, if present.
+#
+#  NOTE
+#
 #  See SRC_URI for details about URI handling in cygport.
 #****
 
diff --git a/meson.build b/meson.build
index 8527c96..53c9331 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
 project('cygport',
-        version: '0.34.0')
+        version: '0.34.1')
 
 bindir = join_paths(get_option('prefix'), get_option('bindir'))
 datadir = join_paths(get_option('prefix'), get_option('datadir'))
diff --git a/testsuite/autotools/gnome/libnotify.list b/testsuite/autotools/gnome/libnotify.list
index 3d7065c..29f9b55 100644
--- a/testsuite/autotools/gnome/libnotify.list
+++ b/testsuite/autotools/gnome/libnotify.list
@@ -12,8 +12,6 @@
 /usr/share/doc/libnotify/ChangeLog
 /usr/share/doc/libnotify/NEWS
 /usr/share/gir-1.0/Notify-0.7.gir
-/usr/share/gtk-doc/html/libnotify/NotifyNotification.html
-/usr/share/gtk-doc/html/libnotify/annotation-glossary.html
 /usr/share/gtk-doc/html/libnotify/api-index-deprecated.html
 /usr/share/gtk-doc/html/libnotify/api-index-full.html
 /usr/share/gtk-doc/html/libnotify/ch01.html
@@ -21,6 +19,7 @@
 /usr/share/gtk-doc/html/libnotify/index.html
 /usr/share/gtk-doc/html/libnotify/left-insensitive.png
 /usr/share/gtk-doc/html/libnotify/left.png
+/usr/share/gtk-doc/html/libnotify/libnotify-notification.html
 /usr/share/gtk-doc/html/libnotify/libnotify-notify.html
 /usr/share/gtk-doc/html/libnotify/libnotify.devhelp2
 /usr/share/gtk-doc/html/libnotify/right-insensitive.png
diff --git a/testsuite/download/R/R-nanotime.cygport b/testsuite/download/R/R-nanotime.cygport
index f744188..701110b 100644
--- a/testsuite/download/R/R-nanotime.cygport
+++ b/testsuite/download/R/R-nanotime.cygport
@@ -9,5 +9,5 @@ DESCRIPTION="Full 64-bit resolution date and time support with resolution up
 to nanosecond granularity is provided, with easy transition to and from the
 standard 'POSIXct' type."
 HOMEPAGE="http://cran.r-project.org/web/packages/nanotime/"
-SRC_URI="mirror://cran/src/contrib/nanotime_${VERSION/_/-}.tar.gz"
+SRC_URI="mirror://cran/src/contrib/00Archive/nanotime/nanotime_${VERSION/_/-}.tar.gz"
 SRC_DIR="nanotime"
diff --git a/testsuite/download/svn/python-clang.cygport b/testsuite/download/svn/python-clang.cygport
index 28df512..aef80a0 100644
--- a/testsuite/download/svn/python-clang.cygport
+++ b/testsuite/download/svn/python-clang.cygport
@@ -19,9 +19,8 @@ PATCH_URI="3.7.1-cygwin-ctypes.patch"
 ARCH=noarch
 
 python27_clang_REQUIRES="libclang${VERSION%%.*}" # ctypes
-python36_clang_REQUIRES="libclang${VERSION%%.*}" # ctypes
-python37_clang_REQUIRES="libclang${VERSION%%.*}" # ctypes
 python38_clang_REQUIRES="libclang${VERSION%%.*}" # ctypes
+python39_clang_REQUIRES="libclang${VERSION%%.*}" # ctypes
 
 CYGPORT_USE_UNSTABLE_API=1
 src_patch_hook() {
diff --git a/testsuite/download/svn/python-clang.list b/testsuite/download/svn/python-clang.list
index 30680a1..a3b4962 100644
--- a/testsuite/download/svn/python-clang.list
+++ b/testsuite/download/svn/python-clang.list
@@ -14,25 +14,6 @@
 /usr/lib/python2.7/site-packages/clang/enumerations.py
 /usr/lib/python2.7/site-packages/clang/enumerations.pyc
 /usr/lib/python2.7/site-packages/clang/enumerations.pyo
-/usr/lib/python3.7/site-packages/clang-9.0.1.dist-info/INSTALLER
-/usr/lib/python3.7/site-packages/clang-9.0.1.dist-info/METADATA
-/usr/lib/python3.7/site-packages/clang-9.0.1.dist-info/RECORD
-/usr/lib/python3.7/site-packages/clang-9.0.1.dist-info/REQUESTED
-/usr/lib/python3.7/site-packages/clang-9.0.1.dist-info/WHEEL
-/usr/lib/python3.7/site-packages/clang-9.0.1.dist-info/direct_url.json
-/usr/lib/python3.7/site-packages/clang-9.0.1.dist-info/top_level.txt
-/usr/lib/python3.7/site-packages/clang/__init__.py
-/usr/lib/python3.7/site-packages/clang/__pycache__/__init__.cpython-37.opt-1.pyc
-/usr/lib/python3.7/site-packages/clang/__pycache__/__init__.cpython-37.opt-2.pyc
-/usr/lib/python3.7/site-packages/clang/__pycache__/__init__.cpython-37.pyc
-/usr/lib/python3.7/site-packages/clang/__pycache__/cindex.cpython-37.opt-1.pyc
-/usr/lib/python3.7/site-packages/clang/__pycache__/cindex.cpython-37.opt-2.pyc
-/usr/lib/python3.7/site-packages/clang/__pycache__/cindex.cpython-37.pyc
-/usr/lib/python3.7/site-packages/clang/__pycache__/enumerations.cpython-37.opt-1.pyc
-/usr/lib/python3.7/site-packages/clang/__pycache__/enumerations.cpython-37.opt-2.pyc
-/usr/lib/python3.7/site-packages/clang/__pycache__/enumerations.cpython-37.pyc
-/usr/lib/python3.7/site-packages/clang/cindex.py
-/usr/lib/python3.7/site-packages/clang/enumerations.py
 /usr/lib/python3.8/site-packages/clang-9.0.1.dist-info/INSTALLER
 /usr/lib/python3.8/site-packages/clang-9.0.1.dist-info/METADATA
 /usr/lib/python3.8/site-packages/clang-9.0.1.dist-info/RECORD
@@ -52,6 +33,25 @@
 /usr/lib/python3.8/site-packages/clang/__pycache__/enumerations.cpython-38.pyc
 /usr/lib/python3.8/site-packages/clang/cindex.py
 /usr/lib/python3.8/site-packages/clang/enumerations.py
+/usr/lib/python3.9/site-packages/clang-9.0.1.dist-info/INSTALLER
+/usr/lib/python3.9/site-packages/clang-9.0.1.dist-info/METADATA
+/usr/lib/python3.9/site-packages/clang-9.0.1.dist-info/RECORD
+/usr/lib/python3.9/site-packages/clang-9.0.1.dist-info/REQUESTED
+/usr/lib/python3.9/site-packages/clang-9.0.1.dist-info/WHEEL
+/usr/lib/python3.9/site-packages/clang-9.0.1.dist-info/direct_url.json
+/usr/lib/python3.9/site-packages/clang-9.0.1.dist-info/top_level.txt
+/usr/lib/python3.9/site-packages/clang/__init__.py
+/usr/lib/python3.9/site-packages/clang/__pycache__/__init__.cpython-39.opt-1.pyc
+/usr/lib/python3.9/site-packages/clang/__pycache__/__init__.cpython-39.opt-2.pyc
+/usr/lib/python3.9/site-packages/clang/__pycache__/__init__.cpython-39.pyc
+/usr/lib/python3.9/site-packages/clang/__pycache__/cindex.cpython-39.opt-1.pyc
+/usr/lib/python3.9/site-packages/clang/__pycache__/cindex.cpython-39.opt-2.pyc
+/usr/lib/python3.9/site-packages/clang/__pycache__/cindex.cpython-39.pyc
+/usr/lib/python3.9/site-packages/clang/__pycache__/enumerations.cpython-39.opt-1.pyc
+/usr/lib/python3.9/site-packages/clang/__pycache__/enumerations.cpython-39.opt-2.pyc
+/usr/lib/python3.9/site-packages/clang/__pycache__/enumerations.cpython-39.pyc
+/usr/lib/python3.9/site-packages/clang/cindex.py
+/usr/lib/python3.9/site-packages/clang/enumerations.py
 /usr/share/doc/python27-clang/README.txt
-/usr/share/doc/python37-clang/README.txt
 /usr/share/doc/python38-clang/README.txt
+/usr/share/doc/python39-clang/README.txt
diff --git a/testsuite/hints/single/hints/single-2.3.4-1.x86_64/dist/single/obsoleted-by-single/obsoleted-by-single-2.3.4-1.hint b/testsuite/hints/single/hints/single-2.3.4-1.x86_64/dist/single/obsoleted-by-single/obsoleted-by-single-2.3.4-1.hint
deleted file mode 100644
index bb7644a..0000000
--- a/testsuite/hints/single/hints/single-2.3.4-1.x86_64/dist/single/obsoleted-by-single/obsoleted-by-single-2.3.4-1.hint
+++ /dev/null
@@ -1,8 +0,0 @@
-category: _obsolete
-requires: single
-sdesc: "Obsoleted by single"
-ldesc: "The obsoleted-by-single package is obsolete.  Selecting this package for
-installation will cause the single package, which replaces this
-one, to be installed instead."
-external-source: single
-
diff --git a/testsuite/lua/all/1.6.2-cygwin.patch b/testsuite/lua/all/1.6.2-cygwin.patch
deleted file mode 100644
index 25a70af..0000000
--- a/testsuite/lua/all/1.6.2-cygwin.patch
+++ /dev/null
@@ -1,39 +0,0 @@
---- origsrc/luafilesystem-1.6.2/Makefile	2012-10-04 09:25:54.000000000 -0500
-+++ src/luafilesystem-1.6.2/Makefile	2013-11-10 15:49:27.428034500 -0600
-@@ -12,7 +12,7 @@ OBJS= src/$T.o
- lib: src/lfs.so
- 
- src/lfs.so: $(OBJS)
--	MACOSX_DEPLOYMENT_TARGET="10.3"; export MACOSX_DEPLOYMENT_TARGET; $(CC) $(CFLAGS) $(LIB_OPTION) -o src/lfs.so $(OBJS)
-+	MACOSX_DEPLOYMENT_TARGET="10.3"; export MACOSX_DEPLOYMENT_TARGET; $(CC) $(CFLAGS) $(LIB_OPTION) -o src/lfs.so $(OBJS) -llua
- 
- install:
- 	mkdir -p $(LUA_LIBDIR)
---- origsrc/luafilesystem-1.6.2/src/lfs.c	2012-10-04 09:25:54.000000000 -0500
-+++ src/luafilesystem-1.6.2/src/lfs.c	2013-11-10 15:51:04.909610100 -0600
-@@ -54,6 +54,9 @@
- #include <fcntl.h>
- #include <sys/types.h>
- #include <utime.h>
-+#ifdef __CYGWIN__
-+#include <io.h>
-+#endif
- #endif
- 
- #include <lua.h>
-@@ -114,9 +117,15 @@ typedef struct dir_data {
- #define STAT_FUNC _stati64
- #define LSTAT_FUNC STAT_FUNC
- #else
-+#ifdef __CYGWIN__
-+#define _O_TEXT	O_TEXT
-+#define _O_BINARY	O_BINARY
-+#define lfs_setmode(L,file,m)   ((void)L, _setmode(fileno(file), m))
-+#else
- #define _O_TEXT               0
- #define _O_BINARY             0
- #define lfs_setmode(L,file,m)   ((void)L, (void)file, (void)m, 0)
-+#endif
- #define STAT_STRUCT struct stat
- #define STAT_FUNC stat
- #define LSTAT_FUNC lstat
diff --git a/testsuite/lua/all/1.8.0-Makefile.patch b/testsuite/lua/all/1.8.0-Makefile.patch
new file mode 100644
index 0000000..ed57e3c
--- /dev/null
+++ b/testsuite/lua/all/1.8.0-Makefile.patch
@@ -0,0 +1,11 @@
+--- origsrc/luafilesystem-1_8_0/Makefile
++++ src/luafilesystem-1_8_0/Makefile
+@@ -12,7 +12,7 @@
+ lib: src/lfs.so
+ 
+ src/lfs.so: $(OBJS)
+-	MACOSX_DEPLOYMENT_TARGET=$(MACOSX_DEPLOYMENT_TARGET); export MACOSX_DEPLOYMENT_TARGET; $(CC) $(LIB_OPTION) -o src/lfs.so $(OBJS)
++	MACOSX_DEPLOYMENT_TARGET=$(MACOSX_DEPLOYMENT_TARGET); export MACOSX_DEPLOYMENT_TARGET; $(CC) $(LIB_OPTION) -o src/lfs.so $(OBJS) $(LIBS)
+ 
+ test: lib
+ 	LUA_CPATH=./src/?.so lua tests/test.lua
diff --git a/testsuite/lua/all/1.8.0-lfs_c.patch b/testsuite/lua/all/1.8.0-lfs_c.patch
new file mode 100644
index 0000000..288071b
--- /dev/null
+++ b/testsuite/lua/all/1.8.0-lfs_c.patch
@@ -0,0 +1,19 @@
+--- origsrc/luafilesystem-1_8_0/src/lfs.c
++++ src/luafilesystem-1_8_0/src/lfs.c
+@@ -163,9 +163,16 @@
+ 
+ #else
+ 
++#if defined __CYGWIN__
++#include <io.h>
++#define _O_TEXT               O_TEXT
++#define _O_BINARY             O_BINARY
++#define lfs_setmode(file, m)   (_setmode(fileno(file), m))
++#else
+ #define _O_TEXT               0
+ #define _O_BINARY             0
+ #define lfs_setmode(file, m)   ((void)file, (void)m, 0)
++#endif
+ #define STAT_STRUCT struct stat
+ #define STAT_FUNC stat
+ #define LSTAT_FUNC lstat
diff --git a/testsuite/lua/all/lua-lfs.cygport b/testsuite/lua/all/lua-lfs.cygport
index d1d75cf..ff2742a 100644
--- a/testsuite/lua/all/lua-lfs.cygport
+++ b/testsuite/lua/all/lua-lfs.cygport
@@ -1,33 +1,81 @@
 inherit lua
 
 NAME="lua-lfs"
-VERSION=1.6.2
-RELEASE=2
+VERSION=1.8.0
+RELEASE=1
 CATEGORY="Lua"
 SUMMARY="Lua file system library"
-DESCRIPTION="LuaFileSystem is a Lua library developed to complement the set of
-functions related to file systems offered by the standard Lua distribution."
-HOMEPAGE="http://www.keplerproject.org/luafilesystem/"
-SRC_URI="https://github.com/downloads/keplerproject/luafilesystem/luafilesystem-${VERSION}.tar.gz"
-SRC_DIR="luafilesystem-${VERSION}"
-PATCH_URI="1.6.2-cygwin.patch"
+DESCRIPTION="\
+LuaFileSystem is a Lua library developed to complement the set of
+functions related to file systems offered by the standard Lua
+distribution.
+"
+HOMEPAGE="https://keplerproject.github.io/luafilesystem/"
+
+GIT_REPO="https://github.com/keplerproject/luafilesystem"
+declare -A GIT_DATEHASH_BY_NAME=(
+  # git log --date=iso-strict --format='%cd/%H' -1
+  [1.8.0]=2020-04-22T22:16:42-03:00/v1_8_0
+)
+REV_HASH="${GIT_DATEHASH_BY_NAME[${VERSION}]#*/}"
+REV_DATE="${GIT_DATEHASH_BY_NAME[${VERSION}]%%/*}"
+REV_DATE_SHORT="${REV_DATE%%T*}"
+GIT_BASENAME="${GIT_REPO##*/}"
+SRC_URI="${GIT_REPO}/archive/${REV_HASH}/${GIT_BASENAME}-${VERSION}.tar.gz"
+SRC_DIR="${GIT_BASENAME}-${REV_HASH#v}"
+
+LUA_PKG_NAME="lfs"
+
+PATCH_URI+="
+  1.8.0-Makefile.patch
+  1.8.0-lfs_c.patch
+"
+
+BUILD_REQUIRES="\
+  lua\
+  liblua-devel\
+"
 
 src_compile() {
-	lndirs
-	cd ${B}
-	cygmake WARN="${CFLAGS}"
+  mkdir -p ${B}/${LUA_VERSION}
+  cd  ${B}/${LUA_VERSION}
+  inform "[Compile] Lua ${LUA_VERSION}: ${LUA_PKG_NAME}"
+
+  lndirs ${S} .
+  cygmake \
+    LUA_VERSION="${LUA_VERSION}" \
+    WARN="${CFLAGS}" \
+    INCS="-I${LUA_INCLUDEDIR}" \
+    LIBS="${LUA_LIBS}" \
+    ;
 }
 
 src_test() {
-	cd ${B}/src
-	ln -sf lfs.so lfs.dll
-	${LUA} -llfs ../tests/test.lua
+  cd ${B}/${LUA_VERSION}
+  inform "[Test] Lua ${LUA_VERSION}: ${LUA_PKG_NAME}"
+  lua${LUA_VERSION} -v
+
+  local TEST_ROOT="./tests"
+  local TEST_LUA_PATH="./src/?.lua"
+  local TEST_LUA_CPATH="./src/?.so"
+  local TEST_LUA_PKGS="-l${LUA_PKG_NAME}"
+
+  local f
+  find "${TEST_ROOT}" -maxdepth 1 -name "test*.lua" -print0 \
+  | while read -r -d '' f; do
+      printf "%s\n" "Testing $f"
+      LUA_PATH="${TEST_LUA_PATH}" \
+      LUA_CPATH="${TEST_LUA_CPATH}" \
+      lua${LUA_VERSION} ${TEST_LUA_PKGS} "$f"
+    done
 }
 
 src_install() {
-	cd ${B}
-	exeinto ${LUA_LIBDIR}
-	newexe src/lfs.so lfs.dll
+  cd ${B}/${LUA_VERSION}
+  inform "[Install] Lua ${LUA_VERSION}: ${LUA_PKG_NAME}"
+
+  exeinto ${LUA_LIBDIR}
+  doexe src/lfs.so
 }
 
 HTMLDOCS="doc/us/*"
diff --git a/testsuite/lua/all/lua-lfs.list b/testsuite/lua/all/lua-lfs.list
index 398fec4..82721c8 100644
--- a/testsuite/lua/all/lua-lfs.list
+++ b/testsuite/lua/all/lua-lfs.list
@@ -1,5 +1,7 @@
-/usr/lib/lua/5.3/lfs.dll
-/usr/share/doc/lua-lfs/README
+/usr/lib/lua/5.3/lfs.so
+/usr/share/doc/lua-lfs/LICENSE
+/usr/share/doc/lua-lfs/README.md
+/usr/share/doc/lua-lfs/html/doc.css
 /usr/share/doc/lua-lfs/html/examples.html
 /usr/share/doc/lua-lfs/html/index.html
 /usr/share/doc/lua-lfs/html/license.html



More information about the Cygwin-apps-cvs mailing list