Hi,
due to https://fedoraproject.org/wiki/Changes/Python_Extension_Flags it is no longer correct to just call `python3 setup.py build` or `python3 setup.py build_ext` in spec without setting the proper flags (for arched builds with Python extension modules at least).
That is without setting both CFLAGS **and** LDFLAGS.
I've grepped the usage and skimmed trough specs, destining the following list of packages that fail to properly set both flags.
I intend to fix the packages using my provenpackager rights during next week. I plan to push directly. There is no automated script, I'll do the changes by hand.
I will:
1) use %py3_build if possible 2) use %set_build_flags otherwise if possible 3) add the missing CFLAGS and/or LDFLAGS variables manually otherwise
If you prefer to fix your package yourself, please do (I would appreciate this). If you need more time, let me know.
If you prefer a Pull Request over a direct push, let me know.
The change in python3 package did not yet happen, no rebuild is needed and I will not bump release or add a changelog entry for this.
I will check if the package builds and I will not introduce a new FTBFS. I will not try to fix nontrivial already existing FTBFS.
Maintainers by package: Mayavi orion PyMca cicku PyPAM msuchy tmraz PyX jamatos gpaw marcindulak libvirt-python berrange veillard m2crypto mitr marisa ueno nest ankursinha nml heffer numpy cstratak jspaleta limb orion rdieter tomspur ttomecek onboard nmilosev picard alexlan cicku gbcox ohaessler py-bcrypt kevin limb pybluez limb pygrib jdekloe pylibacl kevin szpak pyproj jdekloe python-apsw cicku dfateyev maci python-basemap jspaleta limb python-fastavro ankursinha python-gensim besser82 python-gssapi rharwood simo sross python-libdiscid ohaessler python-matplotlib cstratak jgu jspaleta pcpa rathann tomspur python-mistune lupinix python-mysql jdornak mschorm python-pivy hobbes1069 zultron python-plyvel dcallagh python-pycosat orion python-pyeclib hguemar zaitcev python-pygraphviz zbyszek python-pysctp nhorman python-setproctitle hguemar stevetraylen python-sysv_ipc tsao python-uinput fabiand python-wrapt chandankumar ralph python-zmq ralph tomspur python3-postgresql hhorak pyxattr kevin szpak qhexedit2 smani rpy alexlan jamatos sagemath pcpa setools alexl caillon caolanm dwalsh johnp mbarnes mgrepl pcmoore pebenito plautrba rhughes rstrode ssp vmojzis veusz jsanders xpra jgu sagitter sergiomb zinnia liangsuilong pwu zookeeper ctubbsii greghellings mluscon skottler tstclair
Packages by maintainer: alexl setools alexlan picard rpy ankursinha nest python-fastavro berrange libvirt-python besser82 python-gensim caillon setools caolanm setools chandankumar python-wrapt cicku PyMca picard python-apsw cstratak numpy python-matplotlib ctubbsii zookeeper dcallagh python-plyvel dfateyev python-apsw dwalsh setools fabiand python-uinput gbcox picard greghellings zookeeper heffer nml hguemar python-pyeclib python-setproctitle hhorak python3-postgresql hobbes1069 python-pivy jamatos PyX rpy jdekloe pygrib pyproj jdornak python-mysql jgu python-matplotlib xpra johnp setools jsanders veusz jspaleta numpy python-basemap python-matplotlib kevin py-bcrypt pylibacl pyxattr liangsuilong zinnia limb numpy py-bcrypt pybluez python-basemap lupinix python-mistune maci python-apsw marcindulak gpaw mbarnes setools mgrepl setools mitr m2crypto mluscon zookeeper mschorm python-mysql msuchy PyPAM nhorman python-pysctp nmilosev onboard ohaessler picard python-libdiscid orion Mayavi numpy python-pycosat pcmoore setools pcpa python-matplotlib sagemath pebenito setools plautrba setools pwu zinnia ralph python-wrapt python-zmq rathann python-matplotlib rdieter numpy rharwood python-gssapi rhughes setools rstrode setools sagitter xpra sergiomb xpra simo python-gssapi skottler zookeeper smani qhexedit2 sross python-gssapi ssp setools stevetraylen python-setproctitle szpak pylibacl pyxattr tmraz PyPAM tomspur numpy python-matplotlib python-zmq tsao python-sysv_ipc tstclair zookeeper ttomecek numpy ueno marisa veillard libvirt-python vmojzis setools zaitcev python-pyeclib zbyszek python-pygraphviz zultron python-pivy
Just commited option 1 to Rawhide for python-pivy
Is it needed for other releases?
Thanks, Richard
On 06. 02. 19 16:24, Richard Shaw wrote:
Just commited option 1 to Rawhide for python-pivy
Is it needed for other releases?
Not needed. But also not dangerous.
Hi,
On Wed, 2019-02-06 at 15:04 +0100, Miro Hrončok wrote:
I've grepped the usage and skimmed trough specs, destining the following list of packages that fail to properly set both flags.
I've also found that one of my packages was settings CFLAGS to %{optflags} and fixed it: https://src.fedoraproject.org/rpms/bup/c/e960755aa88e1dcf84463faa66c9806a350...
Regards, Tadej
On 06. 02. 19 22:16, Tadej Janež wrote:
Hi,
On Wed, 2019-02-06 at 15:04 +0100, Miro Hrončok wrote:
I've grepped the usage and skimmed trough specs, destining the following list of packages that fail to properly set both flags.
I've also found that one of my packages was settings CFLAGS to %{optflags} and fixed it: https://src.fedoraproject.org/rpms/bup/c/e960755aa88e1dcf84463faa66c9806a350...
Nope, you've actually unfixed that.
Fedora packages should use %{build_cflags} (historically available as %{optflags}). They should also use %{build_ldflags}.
Fedora packages should not use %{extension_cflags} or %{extension_ldlags}.
See https://src.fedoraproject.org/rpms/redhat-rpm-config/blob/master/f/buildflag...
On Thu, 2019-02-07 at 00:45 +0100, Miro Hrončok wrote:
On 06. 02. 19 22:16, Tadej Janež wrote:
I've also found that one of my packages was settings CFLAGS to %{optflags} and fixed it: https://src.fedoraproject.org/rpms/bup/c/e960755aa88e1dcf84463faa66c9806a350...
Nope, you've actually unfixed that.
Fedora packages should use %{build_cflags} (historically available as %{optflags}). They should also use %{build_ldflags}.
Fedora packages should not use %{extension_cflags} or %{extension_ldlags}.
Huh, I must have read the Change proposal too quickly. Thanks for pointing out my mistake.
I've fixed it: https://src.fedoraproject.org/rpms/bup/c/d2ea14f13fb034edfef46c4b97b23c6ef3a...
Regarding %{build_ldflags}, I tried setting them via environment variable: %make_build CFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}"
However, bup's configure script appears to think they are bogus and reports:
ignoring bogus LDFLAGS="-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld"
Here is the source code of that configure check: https://github.com/bup/bup/blob/0.29.2/config/configure.inc#L494-L504
I'm afraid I don't know what's the problem here.
Regards, Tadej
On 06. 02. 19 15:04, Miro Hrončok wrote:
Hi,
due to https://fedoraproject.org/wiki/Changes/Python_Extension_Flags it is no longer correct to just call `python3 setup.py build` or `python3 setup.py build_ext` in spec without setting the proper flags (for arched builds with Python extension modules at least).
That is without setting both CFLAGS **and** LDFLAGS.
I've grepped the usage and skimmed trough specs, destining the following list of packages that fail to properly set both flags.
I intend to fix the packages using my provenpackager rights during next week. I plan to push directly. There is no automated script, I'll do the changes by hand.
I will:
1) use %py3_build if possible 2) use %set_build_flags otherwise if possible 3) add the missing CFLAGS and/or LDFLAGS variables manually otherwise
If you prefer to fix your package yourself, please do (I would appreciate this). If you need more time, let me know.
If you prefer a Pull Request over a direct push, let me know.
The change in python3 package did not yet happen, no rebuild is needed and I will not bump release or add a changelog entry for this.
I will check if the package builds and I will not introduce a new FTBFS. I will not try to fix nontrivial already existing FTBFS.
All packages that explicitly called "python3 setup.py build/build_ext" without proper flags are fixed now. We will proceed with Python itself this week. If you have troubles, block our tracking bug:
https://bugzilla.redhat.com/show_bug.cgi?id=PYFLAGS
python-devel@lists.fedoraproject.org