Hi,

I'm trying to build texinfo-7.1 on Linux/sparc64, in order to debug a problem.
I configured the package with

    CC="gcc -fsanitize=undefined" \
    CFLAGS="-O0 -fno-omit-frame-pointer -ggdb" \
    gl_cv_func_obstack=yes \
    ../configure --prefix=$HOME/prefix64 \
                 CPPFLAGS="-I$HOME/prefix64/include -Wall" \
                 LDFLAGS="-L$HOME/prefix64/lib"

and then, in the tp/Texinfo/XS/ subdirectory, under gdb, I get stack
frames like this one:

#2  0xfffff801012ec09c in setup_document_root_and_before_node_section ()
    at ../../../../tp/Texinfo/XS/parsetexi/parser.c:523
523       add_to_element_contents (document_root, before_node_section);
(gdb) info locals
before_node_section = 0x127cf54
document_root = <optimized out>

Apparently some optimization options were still in effect. And indeed,
the file tp/Texinfo/XS/config.status contains these lines:

CC='sparc64-linux-gnu-gcc'
compiler='sparc64-linux-gnu-gcc'
LTCC='sparc64-linux-gnu-gcc'
compiler='sparc64-linux-gnu-gcc'
S["CPP"]="sparc64-linux-gnu-gcc -E"
S["ac_ct_CC"]="sparc64-linux-gnu-gcc"
S["CC"]="sparc64-linux-gnu-gcc"
S["PERL_CONF_cc"]="sparc64-linux-gnu-gcc"
S["PERL_CONF_optimize"]="-O2 -g"

Per the GNU Coding Standards [1], when I specify CC and CFLAGS, it should
override the package's defaults.

I understand that perl comes with its own installation and that building
code that can be dynamically loaded by perl can be challenging. But the
CC and CFLAGS values that I have specified are ABI-compatible with
the ones that perl wants. Therefore I expect them to be obeyed.

Bruno

[1] https://www.gnu.org/prep/standards/html_node/Command-Variables.html




Reply via email to