xfs
[Top] [All Lists]

xfsprogs: CFLAGS not passed in

To: xfs@xxxxxxxxxxx
Subject: xfsprogs: CFLAGS not passed in
From: Michael Monnerie <michael.monnerie@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 22 Jul 2010 08:21:39 +0200
Organization: it-management http://it-management.at
User-agent: KMail/1.12.4 (Linux/2.6.34.1-zmi; KDE/4.3.5; x86_64; ; )
I saw Christian Kujau's report yesterday with a quick fix, so maybe my 
reports of a similar problem have been missed in the thread "rsync and 
corrupt inodes (was xfs_dump problem)" and this is a repost:

I tried to compile xfsprogs with the "CFLAGS":
CFLAGS="-march=athlon64-sse3 -g -Os" ./configure --prefix=/usr

No matter what I use for CFLAGS, the resulting binary repair/xfs_repair 
is always the same. So it seems to be ignored during compile anyway. 
Smells like a bug? Because config.status gets the CFLAGS set, it's just 
not used during compile. Comparing a "config.status" with CFLAGS set and 
without:

# diff config.status config.status.default
360c360                                                                 
<   with options \"'--prefix=/usr' 'CFLAGS=-march=athlon64-sse3 -g -
Os'\"
---
>   with options \"\"
439c439
<   set X '/bin/sh' './configure'  '--prefix=/usr' 'CFLAGS=-
march=athlon64-sse3 -g -Os' $ac_configure_extra_args --no-create --no-
recursion
---
>   set X '/bin/sh' './configure'  $ac_configure_extra_args --no-create 
--no-recursion
488c488
< max_cmd_len='1572864'
---
> max_cmd_len='3458764513820540925'
507c507
< CFLAGS='-march=athlon64-sse3 -g -Os'
---
> CFLAGS='-g -O2'
591c591
< LTCFLAGS='-march=athlon64-sse3 -g -Os'
---
> LTCFLAGS='-g -O2'
717c717
< S["have_zipped_manpages"]="true"
---
> S["have_zipped_manpages"]="false"
835c835
< S["CFLAGS"]="-march=athlon64-sse3 -g -Os"
---
> S["CFLAGS"]="-g -O2"


I even set all variables with "GCC" in config.status to random 
content, and it compiles. Then I found that the one in 
"include/builddefs" gets always set to this:
GCCFLAGS = -funsigned-char -fno-strict-aliasing -Wall

So I changed it manually:
GCCFLAGS = -march=athlon64-sse3 -g -Os -funsigned-char -fno-strict-
aliasing -Wall
and now the resulting binary is different. I guess that should not be 
happening? I'm used to setting "CFLAGS=" during configure to have 
smaller bins, and CFLAGS normally get passed through during compile, but 
not with xfsprogs. Maybe worth a fix?

-- 
mit freundlichen Grüssen,
Michael Monnerie, Ing. BSc

it-management Internet Services
http://proteger.at [gesprochen: Prot-e-schee]
Tel: 0660 / 415 65 31

****** Aktuelles Radiointerview! ******
http://www.it-podcast.at/aktuelle-sendung.html

// Wir haben im Moment zwei Häuser zu verkaufen:
// http://zmi.at/langegg/
// http://zmi.at/haus2009/

Attachment: signature.asc
Description: This is a digitally signed message part.

<Prev in Thread] Current Thread [Next in Thread>