Bug 3653

Summary: problem with AC_LIBTOOL_PROG_COMPILER_NO_RTTI macro
Product: Sisyphus Reporter: Alexey Voinov <voins>
Component: libtool_1.5Assignee: Dmitry V. Levin <ldv>
Status: CLOSED NOTABUG QA Contact: qa-sisyphus
Severity: normal    
Priority: P2    
Version: unstable   
Hardware: all   
OS: Linux   

Description Alexey Voinov 2004-02-09 21:29:42 MSK
В этом макросе проблема, которая проявляется при -Wall:

Так это выглядит при ./configure:
...
checking if i586-alt-linux-gcc supports -fno-rtti -fno-exceptions... no
...

Хотя очевидно, что в нашем компиляторе эти опции поддерживаются.

Так это выглядит в config.log:
checking if i586-alt-linux-gcc supports -fno-rtti -fno-exceptions
i586-alt-linux-gcc -c -pipe -Wall -O2 -march=i586 -mcpu=i686  -fno-rtti
-fno-exceptions 
conftest.c >&5
cc1: warning: "-fno-rtti" is valid for C++ but not for C/ObjC

Макрос находится в
/usr/share/libtool-1.5/aclocal/libtool.m4

Очевидно, в этом тесте надо использовать компилятор C++ вместо компилятора C.
Comment 1 Dmitry V. Levin 2004-11-28 01:56:07 MSK
Но ведь gcc действительно не поддерживает эти параметры.
Comment 2 Alexey Voinov 2004-11-28 10:36:23 MSK
Поэтому бага и не на gcc.
Проблема в том, что на основании этого теста -fno-rtti не будет использоваться
для g++. Т.е. некорректен сам тест.

(Это если я правильно помню суть проблемы)Поэтому бага и не на gcc.
Проблема в том, что на основании этого теста -fno-rtti не будет использоваться
для g++. Т.е. некорректен сам тест.
Comment 3 Dmitry V. Levin 2004-11-28 19:53:11 MSK
Этот тест проверяет $compiler, который может меняться в зависимости от контекста.
Я склоняюсь к мысли, что этот макрос просто иногда неправильно используется.
Я встречал логи сборки, в которых rtti проверялось и для gcc, и для g++.

То же самое касается и AC_LIBTOOL_PROG_COMPILER_PIC.