* [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.