Accepting request 975796 from devel:openSUSE:Factory:rpmlint
OBS-URL: https://build.opensuse.org/request/show/975796 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/rpmlint-mini?expand=0&rev=113
This commit is contained in:
commit
2f4ce0b347
@ -1,3 +1,22 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon May 9 09:42:24 UTC 2022 - Ben Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
- Use python310 flavor explicitly, irrespective of the primary
|
||||||
|
python3 flavor du jour.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat May 7 23:29:36 UTC 2022 - Ben Greiner <code@bnavigator.de>
|
||||||
|
|
||||||
|
- Migration of primary Python interpreter to 3.10
|
||||||
|
* update stdlib.txt: encoding, importlib, lib-dynload,
|
||||||
|
dataclasses, ast
|
||||||
|
* Remove deprecated stdlib distutils from the venv
|
||||||
|
(not used by rpmlint)
|
||||||
|
* Do not install+delete pip in the venv
|
||||||
|
- Update URL
|
||||||
|
- Explicit BuildRequires: python-rpm-macros -- sitelib macros
|
||||||
|
are used.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sat Mar 5 10:52:37 UTC 2022 - Martin Liška <mliska@suse.cz>
|
Sat Mar 5 10:52:37 UTC 2022 - Martin Liška <mliska@suse.cz>
|
||||||
|
|
||||||
|
@ -16,24 +16,40 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
# This works regardless of the primary python3 flavor. The stdlib.txt and
|
||||||
|
# install section depend on the python 3.10 layout.
|
||||||
|
%define python_flavor python310
|
||||||
|
%define my_python %{expand:%{__%{python_flavor}}}
|
||||||
|
|
||||||
Name: rpmlint-mini
|
Name: rpmlint-mini
|
||||||
Version: %(rpm -q rpmlint --qf '%%{VERSION}')
|
Version: %(rpm -q rpmlint --qf '%%{VERSION}')
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: RPM file correctness checker
|
Summary: RPM file correctness checker
|
||||||
License: GPL-2.0-or-later
|
License: GPL-2.0-or-later
|
||||||
URL: http://rpmlint.zarb.org/
|
URL: https://github.com/rpm-software-management/rpmlint
|
||||||
Source0: desktop-file-utils-0.24.tar.xz
|
Source0: desktop-file-utils-0.24.tar.xz
|
||||||
Source1: stdlib.txt
|
Source1: stdlib.txt
|
||||||
Source2: rpmlint.wrapper
|
Source2: rpmlint.wrapper
|
||||||
Source3: rpmlint-mini.rpmlintrc
|
Source3: rpmlint-mini.rpmlintrc
|
||||||
# need to fetch the file from there
|
# need to fetch the file from there
|
||||||
BuildRequires: checkbashisms
|
BuildRequires: checkbashisms
|
||||||
|
# the main package rpmlint's python3 runtime requirements do not necessarily match our target flavor
|
||||||
|
BuildRequires: %{python_flavor}-base
|
||||||
|
BuildRequires: %{python_flavor}-magic
|
||||||
|
BuildRequires: %{python_flavor}-pybeam
|
||||||
|
BuildRequires: %{python_flavor}-pyenchant
|
||||||
|
BuildRequires: %{python_flavor}-pyxdg
|
||||||
|
BuildRequires: %{python_flavor}-rpm
|
||||||
|
BuildRequires: %{python_flavor}-toml
|
||||||
|
BuildRequires: %{python_flavor}-xml
|
||||||
|
BuildRequires: %{python_flavor}-zstandard
|
||||||
BuildRequires: dash
|
BuildRequires: dash
|
||||||
BuildRequires: glib2-devel
|
BuildRequires: glib2-devel
|
||||||
BuildRequires: glib2-devel-static
|
BuildRequires: glib2-devel-static
|
||||||
BuildRequires: libedit-devel
|
BuildRequires: libedit-devel
|
||||||
BuildRequires: libtool
|
BuildRequires: libtool
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
|
BuildRequires: python-rpm-macros
|
||||||
BuildRequires: rpmlint >= 2
|
BuildRequires: rpmlint >= 2
|
||||||
#!BuildIgnore: rpmlint-mini
|
#!BuildIgnore: rpmlint-mini
|
||||||
Requires: cpio
|
Requires: cpio
|
||||||
@ -54,15 +70,18 @@ make %{?_smp_mflags} desktop-file-validate V=1 DESKTOP_FILE_UTILS_LIBS="%{_libdi
|
|||||||
popd
|
popd
|
||||||
|
|
||||||
%install
|
%install
|
||||||
# Check that rpmlint works at all
|
# Check that rpmlint works at all, with the primary flavor
|
||||||
set +e
|
set +e
|
||||||
%{_bindir}/rpmlint -i rpmlint
|
%{_bindir}/rpmlint -i rpmlint
|
||||||
test $? -gt 0 -a $? -lt 60 && exit 1
|
test $? -gt 0 -a $? -lt 60 && exit 1
|
||||||
set -e
|
set -e
|
||||||
|
# Check that we have all required python modules in the target flavor
|
||||||
|
for p in $(rpm -q --requires rpmlint | grep '^python3-'); do
|
||||||
|
rpm -q --whatprovides ${p/python3-/%{python_flavor}-}
|
||||||
|
done
|
||||||
# Build a virtual env
|
# Build a virtual env
|
||||||
python3 -m venv %{buildroot}/opt/testing
|
%my_python -m venv %{buildroot}/opt/testing --without-pip --copies
|
||||||
# We don't need pip, or activation
|
# We don't need activation
|
||||||
%{buildroot}/opt/testing/bin/pip uninstall -y pip
|
|
||||||
rm %{buildroot}/opt/testing/bin/activate*
|
rm %{buildroot}/opt/testing/bin/activate*
|
||||||
# We need these available
|
# We need these available
|
||||||
cp -a src/desktop-file-validate %{buildroot}/opt/testing/bin
|
cp -a src/desktop-file-validate %{buildroot}/opt/testing/bin
|
||||||
@ -74,22 +93,21 @@ cp -a %{_sysconfdir}/xdg/rpmlint %{buildroot}/opt/testing/share
|
|||||||
# Override configs are selectively taken from rpmlint-strict
|
# Override configs are selectively taken from rpmlint-strict
|
||||||
rm -f %{buildroot}/opt/testing/share/rpmlint/*.override.toml
|
rm -f %{buildroot}/opt/testing/share/rpmlint/*.override.toml
|
||||||
# Python standard library, rpmlint dependencies, and the interpreter
|
# Python standard library, rpmlint dependencies, and the interpreter
|
||||||
pushd %{_libdir}/python%{py3_ver}
|
pushd %{_libdir}/python%{python_version}
|
||||||
for file in $(cat %{SOURCE1}); do
|
for file in $(cat %{SOURCE1}); do
|
||||||
exp=$(ls -1 $file)
|
exp=$(ls -1 $file)
|
||||||
install -D -m 644 $exp %{buildroot}/opt/testing/lib/python%{py3_ver}/$exp
|
install -D -m 644 $exp %{buildroot}/opt/testing/lib/python%{python_version}/$exp
|
||||||
done
|
done
|
||||||
popd
|
popd
|
||||||
cp -a %{python_sitearch}/{rpm,zstandard}* %{buildroot}/opt/testing/lib/python%{py3_ver}/site-packages
|
cp -a %{python_sitearch}/{rpm,zstandard}* %{buildroot}/opt/testing/lib/python%{python_version}/site-packages
|
||||||
cp -a %{python_sitelib} %{buildroot}/opt/testing/lib/python%{py3_ver}
|
cp -a %{python_sitelib} %{buildroot}/opt/testing/lib/python%{python_version}
|
||||||
cp -a %{_libdir}/libpython%{py3_ver}*.so.* %{buildroot}/opt/testing/lib
|
cp -a %{python3_sitelib}/rpmlint* %{buildroot}/opt/testing/lib/python%{python_version}
|
||||||
|
cp -a %{_libdir}/libpython%{python_version}*.so.* %{buildroot}/opt/testing/lib
|
||||||
cp -a %{_libdir}/libexpat*.so.* %{buildroot}/opt/testing/lib
|
cp -a %{_libdir}/libexpat*.so.* %{buildroot}/opt/testing/lib
|
||||||
cp -a %{_libdir}/libmpdec*.so.* %{buildroot}/opt/testing/lib || echo "Skipping libmpdec.so"
|
cp -a %{_libdir}/libmpdec*.so.* %{buildroot}/opt/testing/lib || echo "Skipping libmpdec.so"
|
||||||
cp -a %{_bindir}/python3 %{buildroot}/opt/testing/bin
|
pushd %{buildroot}/opt/testing/lib/python%{python_version}/
|
||||||
cp -a %{_bindir}/python%{py3_ver} %{buildroot}/opt/testing/bin
|
|
||||||
pushd %{buildroot}/opt/testing/lib/python%{py3_ver}/
|
|
||||||
for f in $(find -name \*.py | sort) ; do
|
for f in $(find -name \*.py | sort) ; do
|
||||||
PYTHONOPTIMIZE=1 python3 -O -m compileall -b $f
|
PYTHONOPTIMIZE=1 %{my_python} -O -m compileall -b $f
|
||||||
rm $f
|
rm $f
|
||||||
done
|
done
|
||||||
popd
|
popd
|
||||||
@ -104,6 +122,15 @@ install -m 755 -D %{SOURCE2} %{buildroot}/opt/testing/bin/rpmlint
|
|||||||
# We don't want to provide any libraries, or Python modules we ship
|
# We don't want to provide any libraries, or Python modules we ship
|
||||||
%define __provides_exclude ^(lib|python)
|
%define __provides_exclude ^(lib|python)
|
||||||
|
|
||||||
|
%check
|
||||||
|
# check rpmlint-mini with the custom flavor
|
||||||
|
sed -e 's|/opt|%{buildroot}/opt|' -e 's|exec|%my_python|' %{buildroot}/opt/testing/bin/rpmlint > myrpmlint
|
||||||
|
chmod +x myrpmlint
|
||||||
|
set +e
|
||||||
|
./myrpmlint -i rpmlint
|
||||||
|
test $? -gt 0 -a $? -lt 60 && exit 1
|
||||||
|
set -e
|
||||||
|
|
||||||
%files
|
%files
|
||||||
/opt/testing
|
/opt/testing
|
||||||
%license COPYING
|
%license COPYING
|
||||||
|
69
stdlib.txt
69
stdlib.txt
@ -9,6 +9,7 @@ _sysconfigdata*.py
|
|||||||
_weakrefset.py
|
_weakrefset.py
|
||||||
abc.py
|
abc.py
|
||||||
argparse.py
|
argparse.py
|
||||||
|
ast.py
|
||||||
base64.py
|
base64.py
|
||||||
bisect.py
|
bisect.py
|
||||||
bz2.py
|
bz2.py
|
||||||
@ -27,60 +28,10 @@ copy.py
|
|||||||
copyreg.py
|
copyreg.py
|
||||||
csv.py
|
csv.py
|
||||||
cProfile.py
|
cProfile.py
|
||||||
|
dataclasses.py
|
||||||
datetime.py
|
datetime.py
|
||||||
decimal.py
|
decimal.py
|
||||||
dis.py
|
dis.py
|
||||||
distutils/archive_util.py
|
|
||||||
distutils/bcppcompiler.py
|
|
||||||
distutils/ccompiler.py
|
|
||||||
distutils/cmd.py
|
|
||||||
distutils/config.py
|
|
||||||
distutils/core.py
|
|
||||||
distutils/cygwinccompiler.py
|
|
||||||
distutils/debug.py
|
|
||||||
distutils/dep_util.py
|
|
||||||
distutils/dir_util.py
|
|
||||||
distutils/dist.py
|
|
||||||
distutils/errors.py
|
|
||||||
distutils/extension.py
|
|
||||||
distutils/fancy_getopt.py
|
|
||||||
distutils/filelist.py
|
|
||||||
distutils/file_util.py
|
|
||||||
distutils/__init__.py
|
|
||||||
distutils/log.py
|
|
||||||
distutils/msvc9compiler.py
|
|
||||||
distutils/_msvccompiler.py
|
|
||||||
distutils/msvccompiler.py
|
|
||||||
distutils/spawn.py
|
|
||||||
distutils/sysconfig.py
|
|
||||||
distutils/text_file.py
|
|
||||||
distutils/unixccompiler.py
|
|
||||||
distutils/util.py
|
|
||||||
distutils/versionpredicate.py
|
|
||||||
distutils/version.py
|
|
||||||
distutils/command/bdist_dumb.py
|
|
||||||
distutils/command/bdist_msi.py
|
|
||||||
distutils/command/bdist.py
|
|
||||||
distutils/command/bdist_rpm.py
|
|
||||||
distutils/command/bdist_wininst.py
|
|
||||||
distutils/command/build_clib.py
|
|
||||||
distutils/command/build_ext.py
|
|
||||||
distutils/command/build.py
|
|
||||||
distutils/command/build_py.py
|
|
||||||
distutils/command/build_scripts.py
|
|
||||||
distutils/command/check.py
|
|
||||||
distutils/command/clean.py
|
|
||||||
distutils/command/config.py
|
|
||||||
distutils/command/__init__.py
|
|
||||||
distutils/command/install_data.py
|
|
||||||
distutils/command/install_egg_info.py
|
|
||||||
distutils/command/install_headers.py
|
|
||||||
distutils/command/install_lib.py
|
|
||||||
distutils/command/install.py
|
|
||||||
distutils/command/install_scripts.py
|
|
||||||
distutils/command/register.py
|
|
||||||
distutils/command/sdist.py
|
|
||||||
distutils/command/upload.py
|
|
||||||
email/base64mime.py
|
email/base64mime.py
|
||||||
email/charset.py
|
email/charset.py
|
||||||
email/contentmanager.py
|
email/contentmanager.py
|
||||||
@ -198,7 +149,6 @@ encodings/koi8_u.py
|
|||||||
encodings/kz1048.py
|
encodings/kz1048.py
|
||||||
encodings/latin_1.py
|
encodings/latin_1.py
|
||||||
encodings/mac_arabic.py
|
encodings/mac_arabic.py
|
||||||
encodings/mac_centeuro.py
|
|
||||||
encodings/mac_croatian.py
|
encodings/mac_croatian.py
|
||||||
encodings/mac_cyrillic.py
|
encodings/mac_cyrillic.py
|
||||||
encodings/mac_farsi.py
|
encodings/mac_farsi.py
|
||||||
@ -241,12 +191,22 @@ gettext.py
|
|||||||
gzip.py
|
gzip.py
|
||||||
hashlib.py
|
hashlib.py
|
||||||
heapq.py
|
heapq.py
|
||||||
|
importlib/_abc.py
|
||||||
importlib/abc.py
|
importlib/abc.py
|
||||||
|
importlib/_adapters.py
|
||||||
importlib/_bootstrap_external.py
|
importlib/_bootstrap_external.py
|
||||||
importlib/_bootstrap.py
|
importlib/_bootstrap.py
|
||||||
|
importlib/_common.py
|
||||||
importlib/__init__.py
|
importlib/__init__.py
|
||||||
importlib/machinery.py
|
importlib/machinery.py
|
||||||
importlib/metadata.py
|
importlib/metadata/_adapters.py
|
||||||
|
importlib/metadata/_collections.py
|
||||||
|
importlib/metadata/_functools.py
|
||||||
|
importlib/metadata/__init__.py
|
||||||
|
importlib/metadata/_itertools.py
|
||||||
|
importlib/metadata/_meta.py
|
||||||
|
importlib/metadata/_text.py
|
||||||
|
importlib/readers.py
|
||||||
importlib/resources.py
|
importlib/resources.py
|
||||||
importlib/util.py
|
importlib/util.py
|
||||||
inspect.py
|
inspect.py
|
||||||
@ -287,7 +247,6 @@ lib-dynload/_multibytecodec.cpython*.so
|
|||||||
lib-dynload/_multiprocessing.cpython*.so
|
lib-dynload/_multiprocessing.cpython*.so
|
||||||
lib-dynload/_opcode.cpython*.so
|
lib-dynload/_opcode.cpython*.so
|
||||||
lib-dynload/ossaudiodev.cpython*.so
|
lib-dynload/ossaudiodev.cpython*.so
|
||||||
lib-dynload/parser.cpython*.so
|
|
||||||
lib-dynload/_pickle.cpython*.so
|
lib-dynload/_pickle.cpython*.so
|
||||||
lib-dynload/_posixshmem.cpython*.so
|
lib-dynload/_posixshmem.cpython*.so
|
||||||
lib-dynload/_posixsubprocess.cpython*.so
|
lib-dynload/_posixsubprocess.cpython*.so
|
||||||
@ -309,9 +268,11 @@ lib-dynload/syslog.cpython*.so
|
|||||||
lib-dynload/termios.cpython*.so
|
lib-dynload/termios.cpython*.so
|
||||||
lib-dynload/unicodedata.cpython*.so
|
lib-dynload/unicodedata.cpython*.so
|
||||||
lib-dynload/_uuid.cpython*.so
|
lib-dynload/_uuid.cpython*.so
|
||||||
|
lib-dynload/xxlimited_35.cpython*.so
|
||||||
lib-dynload/_xxsubinterpreters.cpython*.so
|
lib-dynload/_xxsubinterpreters.cpython*.so
|
||||||
lib-dynload/_xxtestfuzz.cpython*.so
|
lib-dynload/_xxtestfuzz.cpython*.so
|
||||||
lib-dynload/zlib.cpython*.so
|
lib-dynload/zlib.cpython*.so
|
||||||
|
lib-dynload/_zoneinfo.cpython*.so
|
||||||
linecache.py
|
linecache.py
|
||||||
locale.py
|
locale.py
|
||||||
logging/config.py
|
logging/config.py
|
||||||
|
Loading…
Reference in New Issue
Block a user