[Top][All Lists]

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

[Libunwind-devel] Problem building libunwind-1.0.1

From: ariel . burton
Subject: [Libunwind-devel] Problem building libunwind-1.0.1
Date: Tue, 11 Sep 2012 12:37:54 -0400
User-agent: nail 11.25 7/29/05

Dear all,

There's a problem building libunwinwd-1.0.1 when configured
with --enable-msabi-support.

The problem occurs when compilation reaches src/x86_64/Lglobal.c,
because the symbols UNW_X86_64_XMM0, UNW_X86_64_XMM1 etc. are

Lglobal.c reads:

  #define UNW_LOCAL_ONLY
  #include <libunwind.h>
  #if defined(UNW_LOCAL_ONLY) && !defined(UNW_REMOTE_ONLY)
  #include "Gglobal.c"

The *definitions* for the required symbols are in libunwind-x86_64.h
guarded by a C-preprocessor #ifdef CONFIG_MSABI_SUPPORT.  This file
is read in libunwind.h.

The symbols are *used* in src/x86_64/Gglobal.c, again, guarded by
the same C-preprocessor directive.

The problem is that when the *definitions* are processed,
CONFIG_MSABI_SUPPORT is not defined, but it is when the
symbols are *used*.

What's happening is that Gglobal.c #includes src/x86_64/unwind_i.h,
which #includes include/libunwind_i.h, which #includes config.h.
config.h defines CONFIG_MSABI_SUPPORT, with the result that
the code in Gglobal.c which *uses* these symbols is compiled.

However, when the *definitions* are read as part of the #include
for libunwind.h, the definitions are *not* compiled.

Is this a regression?

Why is CONFIG_MSABI_SUPPORT a conditional?  Why isn't on all
the time?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]