commit d20df8b3183d1f179ffc30a5ceabb9d1375ac0ff Author: Arun Sharma Date: Mon Oct 31 22:21:34 2011 -0700 Fix up the breakage when host != target diff --git a/configure.in b/configure.in index 40d13bf..d13bc2e 100644 --- a/configure.in +++ b/configure.in @@ -296,5 +296,6 @@ AC_SUBST(DLLIB) AC_SUBST(BACKTRACELIB) AC_CONFIG_FILES(Makefile src/Makefile tests/Makefile tests/check-namespace.sh - doc/Makefile doc/common.tex include/libunwind-common.h) + doc/Makefile doc/common.tex include/libunwind-common.h + include/libunwind.h include/tdep/libunwind_i.h) AC_OUTPUT diff --git a/include/libunwind.h b/include/libunwind.h deleted file mode 100644 index c86216a..0000000 --- a/include/libunwind.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Provide a real file - not a symlink - as it would cause multiarch conflicts - when multiple different arch releases are installed simultaneously. */ - -#if defined __arm__ -# include "libunwind-arm.h" -#elif defined __hppa__ -# include "libunwind-hppa.h" -#elif defined __ia64__ -# include "libunwind-ia64.h" -#elif defined __mips__ -# include "libunwind-mips.h" -#elif defined __powerpc__ && !defined __powerpc64__ -# include "libunwind-ppc32.h" -#elif defined __powerpc64__ -# include "libunwind-ppc64.h" -#elif defined __i386__ -# include "libunwind-x86.h" -#elif defined __x86_64__ -# include "libunwind-x86_64.h" -#else -# error "Unsupported arch" -#endif diff --git a/include/libunwind.h.in b/include/libunwind.h.in new file mode 100644 index 0000000..6ed4725 --- /dev/null +++ b/include/libunwind.h.in @@ -0,0 +1,30 @@ +/* Provide a real file - not a symlink - as it would cause multiarch conflicts + when multiple different arch releases are installed simultaneously. */ + +#ifndef UNW_REMOTE_ONLY + +#if defined __arm__ +# include "libunwind-arm.h" +#elif defined __hppa__ +# include "libunwind-hppa.h" +#elif defined __ia64__ +# include "libunwind-ia64.h" +#elif defined __mips__ +# include "libunwind-mips.h" +#elif defined __powerpc__ && !defined __powerpc64__ +# include "libunwind-ppc32.h" +#elif defined __powerpc64__ +# include "libunwind-ppc64.h" +#elif defined __i386__ +# include "libunwind-x86.h" +#elif defined __x86_64__ +# include "libunwind-x86_64.h" +#else +# error "Unsupported arch" +#endif + +#else /* UNW_REMOTE_ONLY */ + +# include "address@hidden@.h" + +#endif /* UNW_REMOTE_ONLY */ diff --git a/include/tdep/jmpbuf.h b/include/tdep/jmpbuf.h index e3cda31..7d04a42 100644 --- a/include/tdep/jmpbuf.h +++ b/include/tdep/jmpbuf.h @@ -1,6 +1,8 @@ /* Provide a real file - not a symlink - as it would cause multiarch conflicts when multiple different arch releases are installed simultaneously. */ +#ifndef UNW_REMOTE_ONLY + #if defined __arm__ # include "tdep-arm/jmpbuf.h" #elif defined __hppa__ @@ -20,3 +22,5 @@ #else # error "Unsupported arch" #endif + +#endif /* !UNW_REMOTE_ONLY */ diff --git a/include/tdep/libunwind_i.h b/include/tdep/libunwind_i.h deleted file mode 100644 index cd8c2bf..0000000 --- a/include/tdep/libunwind_i.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Provide a real file - not a symlink - as it would cause multiarch conflicts - when multiple different arch releases are installed simultaneously. */ - -#if defined __arm__ -# include "tdep-arm/libunwind_i.h" -#elif defined __hppa__ -# include "tdep-hppa/libunwind_i.h" -#elif defined __ia64__ -# include "tdep-ia64/libunwind_i.h" -#elif defined __mips__ -# include "tdep-mips/libunwind_i.h" -#elif defined __powerpc__ && !defined __powerpc64__ -# include "tdep-ppc32/libunwind_i.h" -#elif defined __powerpc64__ -# include "tdep-ppc64/libunwind_i.h" -#elif defined __i386__ -# include "tdep-x86/libunwind_i.h" -#elif defined __x86_64__ -# include "tdep-x86_64/libunwind_i.h" -#else -# error "Unsupported arch" -#endif diff --git a/include/tdep/libunwind_i.h.in b/include/tdep/libunwind_i.h.in new file mode 100644 index 0000000..96f49fb --- /dev/null +++ b/include/tdep/libunwind_i.h.in @@ -0,0 +1,31 @@ +/* Provide a real file - not a symlink - as it would cause multiarch conflicts + when multiple different arch releases are installed simultaneously. */ + +#ifndef UNW_REMOTE_ONLY + +#if defined __arm__ +# include "tdep-arm/libunwind_i.h" +#elif defined __hppa__ +# include "tdep-hppa/libunwind_i.h" +#elif defined __ia64__ +# include "tdep-ia64/libunwind_i.h" +#elif defined __mips__ +# include "tdep-mips/libunwind_i.h" +#elif defined __powerpc__ && !defined __powerpc64__ +# include "tdep-ppc32/libunwind_i.h" +#elif defined __powerpc64__ +# include "tdep-ppc64/libunwind_i.h" +#elif defined __i386__ +# include "tdep-x86/libunwind_i.h" +#elif defined __x86_64__ +# include "tdep-x86_64/libunwind_i.h" +#else +# error "Unsupported arch" +#endif + + +#else /* UNW_REMOTE_ONLY */ + +# include "address@hidden@/libunwind_i.h" + +#endif /* UNW_REMOTE_ONLY */ diff --git a/src/dwarf/Gfind_proc_info-lsb.c b/src/dwarf/Gfind_proc_info-lsb.c index ee3872e..495d251 100644 --- a/src/dwarf/Gfind_proc_info-lsb.c +++ b/src/dwarf/Gfind_proc_info-lsb.c @@ -241,7 +241,7 @@ file_error: static int find_binary_for_address (unw_word_t ip, char *name, size_t name_size) { -#ifdef __linux +#if defined(__linux) && (!UNW_REMOTE_ONLY) struct map_iterator mi; int found = 0; int pid = getpid ();