On Sun, Jan 6, 2013 at 2:44 PM, PhilippeDidier <philippedid...@laposte.net> wrote: > Pierre-Malo Deniélou a écrit : >> Le 06/01/13 13:19,philippe makowski nous adresse ces quelques mots : >>> Hi, >>> >>> I have a build fail in Cauldron >>> (http://pkgsubmit.mageia.org/autobuild/cauldron/x86_64/core/log/python-cairo-1.10.0-3.mga3.src.rpm/build.0.20130104032637.log) >>> >>> because %python3_waf is resolved as /usr/bin/waf-3.3 build -l12 -j12 >>> >>> and I don't understand why >>> >>> we have in /etc/rpm/macros.d/waf-python3.macros : >>> >>> %python3_waf %__python3_waf build %_smp_mflags >>> and >>> %__python3_waf %{_bindir}/waf-%{python3_version} >>> >>> >>> so why getting /usr/bin/waf-3.3 build -l12 -j12 >>> instead of /usr/bin/waf-3.3 build -j12 >>> >>> from where come this -l that is not supported by waf (waf-3.3: error: >>> no such option: -l) >> >> I believe the answer is in how the autobuild is done: >> http://fasmz.org/~pterjan/blog/?date=20130103#p01 >> >> The parameters are not exactly the same as the ones on the build system. >> >> Cheers, >> > There was the same problem for lv2 with the autobuild system... > lv2 uses waf too ! > > It could correctly build on the Build System but failed with autobuild, > for the same reason > > A workaround consists to modify the spec file : > replace "./waf %{?_smp_mflags}" with simply "./waf build" > > but it will take more time to build :( > > > A contrario : > Ardour3 that uses waf can be built without any problem with the > autobuild system : > the spec file contains symply ; ./waf build > > > Nevertheless, the autobuild system is now different from the > BuildSystem, and I don't know if it's useful to modify your spec file, > to be compliant with the autobuild, not knowing for now if the same > modification will be applied inside the BS.
I had suggested few months ago to use it on build system too to not kill the machine when it gets to build several kernels each of them using -jN, but it is being tested on autobuild first (using it allowed to reduce total build time from 6 days to 30h). So far only waf should be a problem. Maybe we could add a macro with only the number of cpus and use -j%n_cpus with waf instead of using the make flags given that it is not compatible with other make options? (In smp_mflags the second m is for make) I just searched for it and it seems rpm upstream will add such macro https://bugzilla.redhat.com/show_bug.cgi?id=669638#c13 > NB some programs ask to use their own bundled version of waf... This is very sad > which means that modifying Mageia waf-rpm and the waf-python3.macros will not > solve the problem of the smp_flags for them.