Re: fio-f1480f9: AIX 6.1 build KO against gcc function overlap

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/30/2015 01:36 AM, Thierry BERTAUD wrote:
Jens,

Unless I botched it, it should disable lex on AIX now, unless you
explicitly attempt to enable with --enable-lex.

I built against fio-de26b82 and now lex its disable by default. Tha'ts OK  (cf full output below).

Concerning error with  --enable-lex, i think is due that option '-o' is not valid so lex doon't generate the file leyx.yy.c => don't find it after.
---
MTD                           no
0: Warning: 1285-300 The o flag is not valid.
0: Error: 1285-331 Cannot read input file lex.yy.c
lex/yacc for arithmetic       yes
---
If i read configure:
     +1505
     +1506  # Check if lex fails using -o
     +1507  if test "$arith" = "yes" ; then
     +1508  $LEX -o lex.yy.c exp/expression-parser.l 2> /dev/null
     +1509  if test "$?" = "0" ; then
     +1510    lex_use_o="yes"
     +1511  else
     +1512    lex_use_o="no"
     +1513  fi
     +1514  fi
     +1515
     +1516  echo "lex/yacc for arithmetic       $arith"

Could you update test condition, if OS is AIX to use "less exp/expression-parser.l" and other case "-o lex.yy.c exp/expression-parser.l"
    # lex exp/expression-parser.l; echo $?;ls -l lex.yy.c
    0
    -rw-r--r--    1 root     staff         48081 Dec 30 09:34 lex.yy.c

But that's what the lex_use_o should control. If lex is enabled, we'll output CONFIG_LEX_USE_O=y if lex should use -o and nothing if it should not. If CONFIG_LEX_USE_O is in config-host.mak, then the Makefile target will use -o. If not, then it should not. But maybe I screwed it up. Testing here:

axboe@xps13:/home/axboe/git/fio $ grep USE_O config-host.mak
CONFIG_LEX_USE_O=y
axboe@xps13:/home/axboe/git/fio $ make V=1 lex.yy.c
lex -o lex.yy.c exp/expression-parser.l

which looks correct. I'll manually kill CONFIG_LEX_USE_O=y from config-host.mak, and retry:

axboe@xps13:/home/axboe/git/fio $ rm lex.yy.c
axboe@xps13:/home/axboe/git/fio $ grep USE_O config-host.mak
axboe@xps13:/home/axboe/git/fio $ make V=1 lex.yy.c
lex exp/expression-parser.l
axboe@xps13:/home/axboe/git/fio $ ls -al lex.yy.c
-rw-r--r-- 1 axboe axboe 51991 Dec 30 09:37 lex.yy.c

so that logic does look correct. Maybe the configure check for the error return of lex -o isn't working. Do you have CONFIG_LEX_USE_O in your config-host.mak, if you run configure --enable-lex?

--
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux