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

Jon TURNEY via Cygwin-apps-cvs <[email protected]>
Newsgroups gmane.os.cygwin.cvs.apps
Message-ID <[email protected]>


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

commit f3d335651ee1b3efcc239b77eb7d94558fc16dbb
Author: Jon Turney <[email protected]>
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 <[email protected]>
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 <[email protected]>
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-08AYpwWsK/NbR+1V6oSykrDks+cytr/[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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
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.