* [PATCH 0/1] autotools: do more cleanup when in do_configure @ 2018-09-10 10:02 Chen Qi 2018-09-10 10:02 ` [PATCH 1/1] " Chen Qi 0 siblings, 1 reply; 5+ messages in thread From: Chen Qi @ 2018-09-10 10:02 UTC (permalink / raw) To: openembedded-core *** BLURB HERE *** The following changes since commit c710430aa1a5a30d3087c3102485d4621e8d179e: Revert "prelink: Fix SRC_URI and branch" (2018-09-06 14:49:28 +0100) are available in the git repository at: git://git.pokylinux.org/poky-contrib ChenQi/autotools-clean http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=ChenQi/autotools-clean Chen Qi (1): autotools: do more cleanup when in do_configure meta/classes/autotools.bbclass | 2 ++ 1 file changed, 2 insertions(+) -- 1.9.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/1] autotools: do more cleanup when in do_configure 2018-09-10 10:02 [PATCH 0/1] autotools: do more cleanup when in do_configure Chen Qi @ 2018-09-10 10:02 ` Chen Qi 2018-09-10 10:24 ` Burton, Ross 0 siblings, 1 reply; 5+ messages in thread From: Chen Qi @ 2018-09-10 10:02 UTC (permalink / raw) To: openembedded-core I met the following error when compiling some projects. | configure: error: `LDFLAGS' has changed since the previous run: | configure: former value: `-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed' | configure: current value: `-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now' [snip] | configure: error: changes in the environment can compromise the build | configure: error: run `make distclean' and/or `rm .././config.cache' and start over I think when some recipe inherits autotools-brokensep, it should try to do more cleanups before configure. So also do 'make distclean' and remove config.cache just as what the error message told us. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> --- meta/classes/autotools.bbclass | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass index 8768a6a..f577461 100644 --- a/meta/classes/autotools.bbclass +++ b/meta/classes/autotools.bbclass @@ -113,6 +113,8 @@ autotools_preconfigure() { cd ${S} if [ "${CLEANBROKEN}" != "1" -a \( -e Makefile -o -e makefile -o -e GNUmakefile \) ]; then oe_runmake clean + oe_runmake distclean + rm -f ${B}/config.cache fi find ${S} -ignore_readdir_race -name \*.la -delete fi -- 1.9.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] autotools: do more cleanup when in do_configure 2018-09-10 10:02 ` [PATCH 1/1] " Chen Qi @ 2018-09-10 10:24 ` Burton, Ross 2018-09-11 1:30 ` ChenQi 0 siblings, 1 reply; 5+ messages in thread From: Burton, Ross @ 2018-09-10 10:24 UTC (permalink / raw) To: Chen Qi; +Cc: OE-core On 10 September 2018 at 11:02, Chen Qi <Qi.Chen@windriver.com> wrote: > I met the following error when compiling some projects. > > | configure: error: `LDFLAGS' has changed since the previous run: > | configure: former value: `-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed' > | configure: current value: `-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now' > [snip] > | configure: error: changes in the environment can compromise the build > | configure: error: run `make distclean' and/or `rm .././config.cache' and start over > > I think when some recipe inherits autotools-brokensep, it should try to > do more cleanups before configure. So also do 'make distclean' and remove > config.cache just as what the error message told us. Does just removing config.cache work for your problem? I'm concerned about running a distclean because some upstreams abuse that target and then can't rebuild. Also obviously the proper fix is to not use autotools-brokensep in the recipe in the first place. Ross ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] autotools: do more cleanup when in do_configure 2018-09-10 10:24 ` Burton, Ross @ 2018-09-11 1:30 ` ChenQi 2018-09-11 8:08 ` Richard Purdie 0 siblings, 1 reply; 5+ messages in thread From: ChenQi @ 2018-09-11 1:30 UTC (permalink / raw) To: Burton, Ross; +Cc: OE-core On 09/10/2018 06:24 PM, Burton, Ross wrote: > On 10 September 2018 at 11:02, Chen Qi <Qi.Chen@windriver.com> wrote: >> I met the following error when compiling some projects. >> >> | configure: error: `LDFLAGS' has changed since the previous run: >> | configure: former value: `-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed' >> | configure: current value: `-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -fstack-protector-strong -Wl,-z,relro,-z,now' >> [snip] >> | configure: error: changes in the environment can compromise the build >> | configure: error: run `make distclean' and/or `rm .././config.cache' and start over >> >> I think when some recipe inherits autotools-brokensep, it should try to >> do more cleanups before configure. So also do 'make distclean' and remove >> config.cache just as what the error message told us. > Does just removing config.cache work for your problem? I guess it should, but I haven't checked. > I'm concerned > about running a distclean because some upstreams abuse that target and > then can't rebuild. Hmm... I hold the opposite opinion. I suspect that just doing a `make clean' is more likely to break rebuild while doing a `make distclean' should reduce the possibility. Conceptually, `make clean' is followed by `make' while `make distclean' is followed by `configure & make'. At rebuild, we are doing `configure & make'; so we should use `make distclean', in theory. I'll revisit this issue later and do more investigation. > Also obviously the proper fix is to not use autotools-brokensep in the > recipe in the first place. You are right. The recipe is cyrus-sasl and the newly updated version has fixed to use autotools instead of autotools-brokensep. To summarize, ideally we should have no recipe inheriting autotools-brokensep. But in reality, it's almost not possible. I sent out this patch because I thought it would be helpful for such recipes. Best Regards, Chen Qi > Ross > ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] autotools: do more cleanup when in do_configure 2018-09-11 1:30 ` ChenQi @ 2018-09-11 8:08 ` Richard Purdie 0 siblings, 0 replies; 5+ messages in thread From: Richard Purdie @ 2018-09-11 8:08 UTC (permalink / raw) To: ChenQi, Burton, Ross; +Cc: OE-core On Tue, 2018-09-11 at 09:30 +0800, ChenQi wrote: > On 09/10/2018 06:24 PM, Burton, Ross wrote: > > On 10 September 2018 at 11:02, Chen Qi <Qi.Chen@windriver.com> > > wrote: > > > I met the following error when compiling some projects. > > > > > > > configure: error: `LDFLAGS' has changed since the previous run: > > > > configure: former value: `-Wl,-O1 -Wl,--hash-style=gnu -Wl,- > > > > -as-needed' > > > > configure: current value: `-Wl,-O1 -Wl,--hash-style=gnu -Wl,- > > > > -as-needed -fstack-protector-strong -Wl,-z,relro,-z,now' > > > > > > [snip] > > > > configure: error: changes in the environment can compromise the > > > > build > > > > configure: error: run `make distclean' and/or `rm > > > > .././config.cache' and start over > > > > > > I think when some recipe inherits autotools-brokensep, it should > > > try to > > > do more cleanups before configure. So also do 'make distclean' > > > and remove > > > config.cache just as what the error message told us. > > > > Does just removing config.cache work for your problem? > > I guess it should, but I haven't checked. > > I'm concerned > > about running a distclean because some upstreams abuse that target > > and > > then can't rebuild. > > Hmm... I hold the opposite opinion. > I suspect that just doing a `make clean' is more likely to break > rebuild > while doing a `make distclean' should reduce the possibility. > > Conceptually, `make clean' is followed by `make' while `make > distclean' > is followed by `configure & make'. > At rebuild, we are doing `configure & make'; so we should use `make > distclean', in theory. > > I'll revisit this issue later and do more investigation. > > Also obviously the proper fix is to not use autotools-brokensep in > > the > > recipe in the first place. > > You are right. > The recipe is cyrus-sasl and the newly updated version has fixed to > use > autotools instead of autotools-brokensep. > > To summarize, ideally we should have no recipe inheriting > autotools-brokensep. But in reality, it's almost not possible. > I sent out this patch because I thought it would be helpful for such > recipes. I seem to remember trying distclean when we first implemented this code. A lot of tarballs have generated files in them which distclean will remove but we lack the code/dependencies to regenerate them. "clean" was something we could get to work, "distclean" led to a lot of build failures. If we were to consider doing this it would need a lot of testing. Cheers, Richard ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-09-11 8:08 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-09-10 10:02 [PATCH 0/1] autotools: do more cleanup when in do_configure Chen Qi 2018-09-10 10:02 ` [PATCH 1/1] " Chen Qi 2018-09-10 10:24 ` Burton, Ross 2018-09-11 1:30 ` ChenQi 2018-09-11 8:08 ` Richard Purdie
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.