On Tue, Jul 06, 2021 at 10:03:09AM -0500, Richard Shaw wrote:
> On Mon, Jul 5, 2021 at 4:50 PM Miro Hrončok <[email protected]> wrote:
>
> > On 05. 07. 21 15:14, Richard Shaw wrote:
> > > 0ad failed:
> > >
> > > Traceback (most recent call last):
> > > File
> > >
> > "/builddir/build/BUILD/0ad-0.0.24b-alpha/libraries/source/spidermonkey/mozjs-78.6.0/build-debug/../js/src/../../configure.py",
> >
> > > line 25, in <module>
> > > from mozbuild.configure import (
> > > File
> > >
> > "/builddir/build/BUILD/0ad-0.0.24b-alpha/libraries/source/spidermonkey/mozjs-78.6.0/python/mozbuild/mozbuild/configure/__init__.py",
> >
> > > line 33, in <module>
> > > from mozbuild.util import (
> > > File
> > >
> > "/builddir/build/BUILD/0ad-0.0.24b-alpha/libraries/source/spidermonkey/mozjs-78.6.0/python/mozbuild/mozbuild/util.py",
> >
> > > line 760, in <module>
> > > class HierarchicalStringList(object):
> > > File
> > >
> > "/builddir/build/BUILD/0ad-0.0.24b-alpha/libraries/source/spidermonkey/mozjs-78.6.0/python/mozbuild/mozbuild/util.py",
> >
> > > line 785, in HierarchicalStringList
> > > class StringListAdaptor(collections.Sequence):
> > > AttributeError: module 'collections' has no attribute 'Sequence'
> > > ERROR: SpiderMonkey build failed
> > >
> > > https://kojipkgs.fedoraproject.org//work/tasks/4873/71344873/build.log
> > > <https://kojipkgs.fedoraproject.org//work/tasks/4873/71344873/build.log>
> > >
> > > Doesn't look fmt related.
> >
> > This is Python 3.10 related.
> >
> > https://docs.python.org/3.10/whatsnew/3.10.html#removed
> >
> > "Remove deprecated aliases to Collections Abstract Base Classes from the
> > collections module."
> >
> > E.g. use collections.abc.Sequence instead of collections.Sequence.
> > collections.Sequence was deprecated from Python 3.7.
> >
>
> Well the fix looks simple enough but it's the bundled spidermonkey that
> needs to be patched and it's gziped inside of the 0ad archive with a
> separate patching mechanism. BLEH.
I started looking into this yesterday… The attached patch moves past
the import errors, and cuts the warning noise to a manageable level.
Maybe it'll be useful as a start for someone. The build still fails with:
AttributeError: module 'sysconfig' has no attribute '_get_default_scheme'. Did
you mean: 'get_default_scheme'?
Zbyszek
diff --git 0ad-python310.patch 0ad-python310.patch
index ea3fa36c5f..978ac2d17c 100644
--- 0ad-python310.patch
+++ 0ad-python310.patch
@@ -1,10 +1,11 @@
--- libraries/source/spidermonkey/build.sh~ 2021-02-06 01:28:31.000000000 +0100
+++ libraries/source/spidermonkey/build.sh 2021-07-05 19:28:48.642045840 +0200
-@@ -100,6 +100,8 @@
+@@ -100,6 +100,9 @@
fi
tar xjf "${FOLDER}.tar.bz2"
+ sed -r -i 's/collections.Sequence/collections.abc.Sequence/' ${FOLDER}/python/mozbuild/mozbuild/util.py
++ sed -r -i 's/from collections import Iterable, OrderedDict/from collections.abc import Iterable\nfrom collections import OrderedDict/' ${FOLDER}/python/mozbuild/mozbuild/backend/configenvironment.py
+
# Clean up header files that may be left over by earlier versions of SpiderMonkey
rm -rf include-unix-debug
diff --git 0ad.spec 0ad.spec
index 6cdf30d25e..319f272494 100644
--- 0ad.spec
+++ 0ad.spec
@@ -140,6 +140,8 @@ Patch2: %{name}-valgrind.patch
Patch3: %{name}-ppc64.patch
Patch5: %{name}-rust.patch
+Patch6: %{name}-python310.patch
+
%description
0 A.D. (pronounced "zero ey-dee") is a free, open-source, cross-platform
real-time strategy (RTS) game of ancient warfare. In short, it is a
@@ -165,6 +167,7 @@ hobbyist game developers, since 2001.
%if %{without system_mozjs78}
%patch5 -p0
%endif
+%patch6 -p0
%if %{with system_nvtt}
rm -fr libraries/source/nvtt
@@ -179,6 +182,8 @@ rm -fr libraries/source/valgrind
%define _lto_cflags %{nil}
%set_build_flags
+CXXFLAGS="$CXXFLAGS -Wno-class-memaccess -Wno-deprecated-copy -Wno-maybe-unitialized -Wno-unused-but-set-variable -Wno-implicit-fallthrough"
+
build/workspaces/update-workspaces.sh \
--bindir=%{_bindir} \
--datadir=%{_datadir}/%{name} \
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam on the list, report it:
https://pagure.io/fedora-infrastructure