svn commit: trunk/uClibc/libc/sysdeps/linux/common
psm at uclibc.org
psm at uclibc.org
Mon Jan 9 19:45:24 UTC 2006
Author: psm
Date: 2006-01-09 11:45:23 -0800 (Mon, 09 Jan 2006)
New Revision: 13203
Log:
Hope I have it correct now w/ native gcc4 ssp
Modified:
trunk/uClibc/libc/sysdeps/linux/common/Makefile.in
trunk/uClibc/libc/sysdeps/linux/common/ssp-local.c
trunk/uClibc/libc/sysdeps/linux/common/ssp.c
Changeset:
Modified: trunk/uClibc/libc/sysdeps/linux/common/Makefile.in
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/Makefile.in 2006-01-09 19:43:47 UTC (rev 13202)
+++ trunk/uClibc/libc/sysdeps/linux/common/Makefile.in 2006-01-09 19:45:23 UTC (rev 13203)
@@ -14,19 +14,17 @@
CSRC:=$(filter-out sbrk.c,$(CSRC))
endif
-COMMON_SSP:=ssp.c ssp-local.c
-
# full list
#COMMON_NO_MULTI:=getcwd.c getrlimit.c getrlimit64.c setrlimit.c setrlimit64.c getpriority.c getpriority64.c setpriority.c getrusage.c wait4.c getitimer.c setitimer.c open.c open64.c uname.c __syscall_fcntl.c __syscall_fcntl64.c
COMMON_NO_MULTI:=getrlimit.c getrlimit64.c setrlimit.c setrlimit64.c getpriority.c setpriority.c getrusage.c getitimer.c setitimer.c uname.c __syscall_rt_sigaction.c
+CSRC:=$(filter-out ssp-local.c,$(CSRC))
ifneq ($(UCLIBC_HAS_SSP),y)
-CSRC:=$(filter-out $(COMMON_SSP),$(CSRC))
+CSRC:=$(filter-out ssp.c,$(CSRC))
endif
ifneq ($(DOMULTI),n)
CSRC:=$(filter-out $(COMMON_NO_MULTI),$(CSRC))
-CSRC:=$(filter-out $(COMMON_SSP),$(CSRC))
endif
# fails for some reason
@@ -42,11 +40,11 @@
libc-a-y+=$(COMMON_OBJ)
libc-so-y+=$(COMMON_OBJ:.o=.os)
+libc-static-$(UCLIBC_HAS_SSP)+=$(COMMON_OUT)/ssp-local.o
libc-nonshared-$(UCLIBC_HAS_SSP)+=$(COMMON_OUT)/ssp-local.os
libc-multi-y+=$(COMMON_SRC)
libc-nomulti-y+=$(patsubst %.c,$(COMMON_OUT)/%.o,$(COMMON_NO_MULTI))
-libc-nomulti-$(UCLIBC_HAS_SSP)+=$(patsubst %.c,$(COMMON_OUT)/%.o,$(COMMON_SSP))
objclean-y+=common_objclean
Modified: trunk/uClibc/libc/sysdeps/linux/common/ssp-local.c
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/ssp-local.c 2006-01-09 19:43:47 UTC (rev 13202)
+++ trunk/uClibc/libc/sysdeps/linux/common/ssp-local.c 2006-01-09 19:45:23 UTC (rev 13203)
@@ -23,7 +23,7 @@
#include <features.h>
-extern void __stack_chk_fail_internal (void) attribute_noreturn;
+extern void __stack_chk_fail (void) attribute_noreturn;
/* On some architectures, this helps needless PIC pointer setup
that would be needed just for the __stack_chk_fail call. */
@@ -31,5 +31,5 @@
void attribute_noreturn attribute_hidden
__stack_chk_fail_local (void)
{
- __stack_chk_fail_internal ();
+ __stack_chk_fail ();
}
Modified: trunk/uClibc/libc/sysdeps/linux/common/ssp.c
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/ssp.c 2006-01-09 19:43:47 UTC (rev 13202)
+++ trunk/uClibc/libc/sysdeps/linux/common/ssp.c 2006-01-09 19:45:23 UTC (rev 13203)
@@ -88,7 +88,7 @@
terminate();
}
-void attribute_noreturn attribute_hidden __stack_chk_fail_internal(void)
+void attribute_noreturn __stack_chk_fail(void)
{
static const char msg1[] = "stack smashing detected: ";
static const char msg3[] = " terminated";
@@ -101,7 +101,6 @@
while(1)
terminate();
}
-strong_alias(__stack_chk_fail_internal,__stack_chk_fail)
#if 0
void attribute_noreturn __chk_fail(void)
More information about the uClibc-cvs
mailing list