glibc/sysdeps/i386/Makefile
Ulrich Drepper dde3199641 Update.
* debug/execinfo.h: Remove __THROW from backtrace prototype.

2004-10-22  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/Makefile (CFLAGS-backtrace.c): Add -fexceptions.
	* sysdeps/i386/backtrace.c: Include <bits/libc-lock.h>, <dlfcn.h>,
	<stdlib.h> and <unwind.h>.  Remove <bp-checks.h> include.
	(struct trace_arg): New type.
	(unwind_backtrace, unwind_getip, unwind_getcfa, unwind_getgr): New
	fn pointers resp. macros.
	(init, backtrace_helper): New functions.
	(__backtrace): Rewritten to use _Unwind_Backtrace first and fall
	back to frame pointer walking.

2004-10-22  Ulrich Drepper  <drepper@redhat.com>
2004-10-22 21:08:43 +00:00

64 lines
1.9 KiB
Makefile

# The mpn functions need a #define for asm syntax flavor.
# Every i386 port in use uses gas syntax (I think).
asm-CPPFLAGS += -DGAS_SYNTAX
# The i386 `long double' is a distinct type we support.
long-double-fcts = yes
ifeq ($(subdir),csu)
# On i686 we must avoid generating the trampoline functions generated
# to get the GOT pointer.
CFLAGS-initfini.s += -march=i386 -mcpu=i386
endif
ifeq ($(subdir),gmon)
sysdep_routines += i386-mcount
endif
ifeq ($(subdir),elf)
CFLAGS-rtld.c += -Wno-uninitialized -Wno-unused
CFLAGS-dl-load.c += -Wno-unused
CFLAGS-dl-reloc.c += -Wno-unused
endif
ifeq ($(subdir),debug)
CFLAGS-backtrace.c += -fexceptions
endif
# Most of the glibc routines don't ever call user defined callbacks
# nor use any FPU or SSE* and as such don't need bigger %esp alignment
# than 4 bytes.
# Lots of routines in math will use FPU, so make math subdir an exception
# here.
ifeq ($(subdir),math)
sysdep-CFLAGS += -mpreferred-stack-boundary=4
else
ifeq ($(subdir),csu)
sysdep-CFLAGS += -mpreferred-stack-boundary=4
else
sysdep-CFLAGS += -mpreferred-stack-boundary=2
# Likewise, any function which calls user callbacks
uses-callbacks += -mpreferred-stack-boundary=4
# Likewise, any stack alignment tests
stack-align-test-flags += -malign-double -mpreferred-stack-boundary=4
endif
endif
# And a couple of other routines
ifeq ($(subdir),stdlib)
CFLAGS-exit.c += -mpreferred-stack-boundary=4
endif
ifeq ($(subdir),elf)
CFLAGS-dl-init.c += -mpreferred-stack-boundary=4
CFLAGS-dl-fini.c += -mpreferred-stack-boundary=4
CFLAGS-dl-open.c += -mpreferred-stack-boundary=4
CFLAGS-dl-close.c += -mpreferred-stack-boundary=4
CFLAGS-dl-error.c += -mpreferred-stack-boundary=4
endif
ifeq ($(subdir),dlfcn)
CFLAGS-dlopen.c += -mpreferred-stack-boundary=4
CFLAGS-dlopenold.c += -mpreferred-stack-boundary=4
CFLAGS-dlclose.c += -mpreferred-stack-boundary=4
CFLAGS-dlerror.c += -mpreferred-stack-boundary=4
endif