Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 38601 - little bug in emerge cyrus-sasl-2.1.17 on not normalized CFLAGS string
Summary: little bug in emerge cyrus-sasl-2.1.17 on not normalized CFLAGS string
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: x86 Linux
: High minor (vote)
Assignee: Net-Mail Packages
URL:
Whiteboard:
Keywords:
: 46554 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-01-18 08:09 UTC by Moreno Rizzo
Modified: 2004-04-12 02:25 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Moreno Rizzo 2004-01-18 08:09:38 UTC
when i emerge cyrus-sasl-2.1.17 i see this error message:
[ CUT ]
configure: loading cache .././config.cache
configure: error: `CFLAGS' has changed since the previous run:
configure:   former value:  -march=athlon-xp  -Os -pipe -m3dnow -mmmx -fomit-frame-pointer -ffast-math -funroll-loops -fforce-addr -falign-functions=4
configure:   current value: -march=athlon-xp -pipe -Os -m3dnow -mmmx -fomit-frame-pointer -ffast-math -funroll-loops -fforce-addr -falign-functions=4
configure: error: changes in the environment can compromise the build
configure: error: run `make distclean' and/or `rm .././config.cache' and start over
configure: error: /bin/sh './configure' failed for saslauthd
[ CUT ]

I see the problem is in "-march=athlon-xp  -Os....." with 2 space.
I open my /etc/make.conf and YES there are two space in my CFLAGS string.
I change in "-march=athlon-xp -Os ...." with a single space and now the 
emerge work correctly.





Reproducible: Always
Steps to Reproduce:
1. modify /etc/make.conf CFLAGS string and introduce two space between flag
(usualy this is not a problem)
2. emerge cyrus-sasl


Actual Results:  
not work. This is the output
[...]
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
configure: configuring in saslauthd
configure: running /bin/sh './configure' --prefix=/usr  '--prefix=/usr'
'--host=i686-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info'
'--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib'
'--with-saslauthd=/var/lib/sasl2' '--with-pwcheck=/var/lib/sasl2'
'--with-configdir=/etc/sasl2' '--with-plugindir=/usr/lib/sasl2'
'--with-dbpath=/etc/sasl2/sasldb2' '--enable-login' '--enable-ntlm'
'--disable-krb4' '--disable-otp' '--disable-static' '--with-openssl'
'--with-pam' '--with-ldap' '--enable-gssapi' '--with-mysql' '--without-pgsql'
'--disable-sql' '--enable-java' '--with-javahome=/opt/blackdown-jdk-1.4.1'
'--enable-sql' '--with-dblib=gdbm' 'CC=gcc' 'CFLAGS=-march=athlon-xp -pipe -Os
-m3dnow -mmmx -fomit-frame-pointer -ffast-math -funroll-loops -fforce-addr
-falign-functions=4 ' 'host_alias=i686-pc-linux-gnu'
--cache-file=.././config.cache --srcdir=.
configure: WARNING: If you wanted to set the --build type, don't use --host.
    If a cross compiler is detected then cross compile mode will be used.
configure: loading cache .././config.cache
configure: error: `CFLAGS' has changed since the previous run:
configure:   former value:  -march=athlon-xp  -Os -pipe -m3dnow -mmmx
-fomit-frame-pointer -ffast-math -funroll-loops -fforce-addr -falign-functions=4
configure:   current value: -march=athlon-xp -pipe -Os -m3dnow -mmmx
-fomit-frame-pointer -ffast-math -funroll-loops -fforce-addr -falign-functions=4
configure: error: changes in the environment can compromise the build
configure: error: run `make distclean' and/or `rm .././config.cache' and start over
configure: error: /bin/sh './configure' failed for saslauthd

!!! ERROR: dev-libs/cyrus-sasl-2.1.17 failed.
!!! Function econf, Line 365, Exitcode 1
!!! econf failed


Expected Results:  
emerge work correctly
Comment 1 Aaron Peterson 2004-03-15 19:39:33 UTC
I have the same error.. but I think the bug is in portage, or the documentation for the make.conf.  It should be specified that a single space delimiters are required in the CFLAGS section, or portage should just make it be single spaced for it's opperation...

I DON'T THINK THIS IS A BUG WITH CYRUS-SASL,  I think it's with portage, and the ebuild could theoretically take care of this special case, but this type problem is likely to crop up elsewhere again unless it's fixed... or documented.


in my make.conf:

CFLAGS="-march=athlon-xp -mmmx -m3dnow -msse -fomit-frame-pointer -O2 -pipe  -Wall"
(two spaces between -pipe and -Wall)
doesn't work, and I get this error:

*****************
configure: loading cache .././config.cache
configure: error: `CFLAGS' has changed since the previous run:
configure:   former value:  -march=athlon-xp -mmmx -m3dnow -msse -fomit-frame-pointer -O2 -pipe  -Wall
configure:   current value: -march=athlon-xp -mmmx -m3dnow -msse -fomit-frame-pointer -O2 -pipe -Wall
configure: error: changes in the environment can compromise the build
configure: error: run `make distclean' and/or `rm .././config.cache' and start over
configure: error: /bin/sh './configure' failed for saslauthd

!!! ERROR: dev-libs/cyrus-sasl-2.1.18 failed.
!!! Function econf, Line 365, Exitcode 1
!!! econf failed


***********
CFLAGS="-march=athlon-xp -mmmx -m3dnow -msse -fomit-frame-pointer -O2 -pipe -Wall"

in my /etc/make.conf  
makes it work..

***********

Comment 2 Max Kalika (RETIRED) gentoo-dev 2004-04-02 13:04:08 UTC
*** Bug 46554 has been marked as a duplicate of this bug. ***
Comment 3 Mathieu MILLET 2004-04-06 12:54:25 UTC
I also correct the problem by removing a remaning space in my CFLAGS definition.
Comment 4 Nicholas Jones (RETIRED) gentoo-dev 2004-04-11 15:57:41 UTC
This is a rediculous check in the package. The flags are probably passed in
two different ways...

"${CFLAGS}" and ${CFLAGS}

The latter is broken down by bash into a single spaced list
and the former is quoted and retains it's spacing. The package is
broken, portage doesn't need to be making special fixes for anal
package checks.
Comment 5 Aaron Peterson 2004-04-12 02:25:37 UTC
well, resolved fixed, was the actual bug was fixed?

I don't care how it's done.

So, there is already a way to get the single spaced cflags out of portage, 

You can't have too anal checks, it's what you choose to do with them that can be too anal...

If things break when there are two spaces between my cflags, then portage had better check for that, or have the package deal/ use already existing facilities to do so. 

If cyrus-sasl doesn't emerge properly when there are two spaces, or some other documentation (imposing rediculous checks on end users!!!) doesn't mention the format requirements of the string, or if there are not these facilities, to get the single spaced list, then this bug should be reopened. (you just said that there are facilities, and that the package is broken), so then this bug is aboutthe package, and it needs to be open.

Ok, I diffed the new ebuild and the one that had the problem, I didn't see anything obviously fixed.

Reopening.
(I'm doing VNC into my computer, so It's really hard to fix this messages tone and spelling, sorry)  Ah, I can't reopen.. Please reopen, untill the problem is reported fixed.