[uClibc] some patches/cleanups

Peter S. Mazinger ps.m at gmx.net
Tue Aug 31 21:14:29 UTC 2004


Hello!

iconv: makes it build using XXFLAGS (should probably get all the same 
options as ldd/ldconfig)
asflags: makes consistent use of ASFLAGS everywhere, where .S is built
ldso: removes unused stuff
no_crtobjs: removes other unused stuff
heap: removes unused do_brkp
ssp: uses everywhere SSP_FLAGS (where possible)
     the utilities and libdl are also built using the possible/needed SSP_CFLAGS
     cleanup
pie: corrects comments
     generalizes the use of PIEFLAG/LDPIEFLAG (inspired from frv)
     adds gcc check for pie
     corrects dependencies (allowed archs: x86/ppc)
     frv is not correct in crt0.S and I do not know if it needs -fpie or 
         -fPIE, this should also be conformant w/ -fpic or -fPIC
         LDPIEFLAG for frv is probably is incorrect (it was not used until 
         now, but now it is used for the utilities if PIE is enabled

some of the patches apply cleanly in specific order

Remaining issues:
1. all the libs except libc can be built fully protected, but there is 
no location where this can be defined generally (the same CFLAGS is used 
almost over all of the build system and there are no special defines if we 
are building libc/libm/utilities and so on,
glibc uses IN_libc/NOT_IN_libc for ex.)
2. make utils does not use the newly created [S]crt[01].o files on a 
native system, rather the installed ones in /usr/lib

Peter

-- 
Peter S. Mazinger <ps dot m at gmx dot net>           ID: 0xA5F059F2
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08  BB6E C389 975E A5F0 59F2

____________________________________________________________________
Miert fizetsz az internetert? Korlatlan, ingyenes internet hozzaferes a FreeStarttol.
Probald ki most! http://www.freestart.hu
-------------- next part --------------
--- ./ldso/ldso/Makefile.ssp~	Tue Aug 31 22:11:17 2004
+++ ./ldso/ldso/Makefile	Tue Aug 31 22:11:17 2004
@@ -21,11 +21,10 @@
 include $(TOPDIR)Rules.mak
 LDSO_FULLNAME=ld-uClibc-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
 
-SSPFLAGS=$(call check_gcc,-fno-stack-protector,)
 # reset to initial (disabling predefined CFLAGS)
 ASFLAGS=
 
-XXFLAGS=$(XWARNINGS) $(LIBRARY_CACHE) $(SSPFLAGS)
+XXFLAGS=$(XWARNINGS) $(LIBRARY_CACHE) $(SSP_DISABLE_FLAGS)
 ifeq ($(DODEBUG),y)
 # Not really much point in including debugging info, since gdb
 # can't really debug ldso, since gdb requires help from ldso to
--- ./ldso/libdl/Makefile.ssp~	Tue Aug 31 22:11:15 2004
+++ ./ldso/libdl/Makefile	Tue Aug 31 22:11:17 2004
@@ -21,7 +21,7 @@
 TOPDIR=../../
 include $(TOPDIR)Rules.mak
 
-XXFLAGS=$(XWARNINGS) $(LIBRARY_CACHE)
+XXFLAGS=$(XWARNINGS) $(LIBRARY_CACHE) $(SSP_CFLAGS)
 ifeq ($(DODEBUG),y)
 XXFLAGS+=-O0 -g3
 else
--- ./utils/Makefile.ssp~	Tue Aug 31 22:11:17 2004
+++ ./utils/Makefile	Tue Aug 31 22:11:17 2004
@@ -38,6 +38,8 @@
 XXFLAGS+= $(PIEFLAG) $(LDPIEFLAG)
 endif
 
+XXFLAGS+=$(SSP_CFLAGS)
+
 ifeq ($(strip $(HAVE_SHARED)),y)
 all:	$(TARGETS) $(TARGET_ICONV)
 else
--- ./Rules.mak.ssp~	Tue Aug 31 22:11:17 2004
+++ ./Rules.mak	Tue Aug 31 22:12:12 2004
@@ -231,8 +231,9 @@
 LDPIEFLAG=
 endif
 
-ifeq ($(SSP_CFLAGS),)
+SSP_DISABLE_FLAGS=$(call check_gcc,-fno-stack-protector,)
 SSP_CFLAGS=$(call check_gcc,-fno-stack-protector-all,)
+ifeq ($(strip $(UCLIBC_PROPOLICE)),y)
 SSP_CFLAGS+=$(call check_gcc,-fstack-protector,)
 endif
 
@@ -242,7 +243,8 @@
 
 ifeq ($(DODEBUG),y)
     #CFLAGS += -g3
-    CFLAGS = $(XWARNINGS) -O0 -g3 $(CPU_CFLAGS) -fno-builtin -nostdinc -D_LIBC -I$(TOPDIR)include -I.
+    CFLAGS = $(XWARNINGS) -O0 -g3 $(CPU_CFLAGS) $(SSP_CFLAGS) \
+	-fno-builtin -nostdinc -D_LIBC -I$(TOPDIR)include -I.
     LDFLAGS:= $(CPU_LDFLAGS-y) -shared --warn-common --warn-once -z combreloc
     STRIPTOOL:= true -Since_we_are_debugging
 else
-------------- next part --------------
--- ./extra/Configs/Config.in.pie~	Tue Aug 31 14:25:54 2004
+++ ./extra/Configs/Config.in	Tue Aug 31 14:25:55 2004
@@ -200,11 +200,13 @@
 
 config UCLIBC_PIE_SUPPORT
 	bool "Support ET_DYN in shared library loader"
+	depends on BUILD_UCLIBC_LDSO
+	depends on TARGET_i386 || TARGET_powerpc
 	select FORCE_SHAREABLE_TEXT_SEGMENTS
 	default n
 	help
-	  If you answer Y here, the uClibc native shared library loader will
-	  support ET_DYN/PIE executables.
+	  If you answer Y here, Scrt1.o will be built to allow the creation of
+	  ET_DYN/PIE executables.
 	  It requires binutils-2.14.90.0.6 or later and the usage of the
 	  -pie option.
 	  More about ET_DYN/PIE binaries on <http://pax.grsecurity.net/> .
--- ./libc/sysdeps/linux/i386/Makefile.pie~	Tue Aug 31 14:25:55 2004
+++ ./libc/sysdeps/linux/i386/Makefile	Tue Aug 31 14:38:25 2004
@@ -22,7 +22,7 @@
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
 ifeq ($(strip $(UCLIBC_PIE_SUPPORT)),y)
-CRT0_OBJ += Scrt0.o Scrt1.o
+SCRT0_OBJ = $(patsubst %,S%, $(CRT0_OBJ))
 endif
 CRT0_DEPS=gmon-start.S
 CTOR_TARGETS=$(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o
@@ -40,9 +40,9 @@
 
 $(LIBC): ar-target 
 
-ar-target: $(OBJS) $(CRT0_OBJ) $(CTOR_TARGETS)
+ar-target: $(OBJS) $(CRT0_OBJ) $(SCRT0_OBJ) $(CTOR_TARGETS)
 	$(AR) $(ARFLAGS) $(LIBC) $(OBJS)
-	cp $(CRT0_OBJ) $(TOPDIR)lib/
+	cp $(CRT0_OBJ) $(SCRT0_OBJ) $(TOPDIR)lib/
 ifeq ($(strip $(UCLIBC_PIE_SUPPORT)),y)
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 	$(RM) $(TOPDIR)lib/Scrt0.o
@@ -55,6 +55,10 @@
 	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
+$(SCRT0_OBJ): $(CRT0_SRC)
+	$(CC) $(ASFLAGS) $(PIEFLAG) -DL_$* $< -c -o $*.o
+	$(STRIPTOOL) -x -R .note -R .comment $*.o
+
 $(SOBJS): %.o : %.S
 	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
--- ./libc/sysdeps/linux/powerpc/Makefile.pie~	Tue Aug 31 14:26:20 2004
+++ ./libc/sysdeps/linux/powerpc/Makefile	Tue Aug 31 14:39:18 2004
@@ -22,7 +22,7 @@
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
 ifeq ($(strip $(UCLIBC_PIE_SUPPORT)),y)
-CRT0_OBJ += Scrt0.o Scrt1.o
+SCRT0_OBJ = $(patsubst %,S%, $(CRT0_OBJ))
 endif
 CRT0_DEPS=gmon-start.S
 CTOR_TARGETS=$(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o
@@ -40,9 +40,9 @@
 
 $(LIBC): ar-target 
 
-ar-target: $(OBJS) $(CRT0_OBJ) $(CTOR_TARGETS)
+ar-target: $(OBJS) $(CRT0_OBJ) $SCRT0_OBJ) $(CTOR_TARGETS)
 	$(AR) $(ARFLAGS) $(LIBC) $(OBJS)
-	cp $(CRT0_OBJ) $(TOPDIR)lib/
+	cp $(CRT0_OBJ) $(SCRT0_OBJ) $(TOPDIR)lib/
 ifeq ($(strip $(UCLIBC_PIE_SUPPORT)),y)
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 	$(RM) $(TOPDIR)lib/Scrt0.o
@@ -55,6 +55,10 @@
 	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
+$(SCRT0_OBJ): $(CRT0_SRC)
+	$(CC) $(ASFLAGS) $(PIEFLAG) -DL_$* $< -c -o $*.o
+	$(STRIPTOOL) -x -R .note -R .comment $*.o
+
 $(SOBJS): %.o : %.S
 	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
--- ./libc/sysdeps/linux/frv/Makefile.pie~	Tue Aug 31 14:34:12 2004
+++ ./libc/sysdeps/linux/frv/Makefile	Tue Aug 31 14:57:25 2004
@@ -22,7 +22,9 @@
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
+ifeq $(strip $(UCLIBC_PIE_SUPPORT)),y)
 SCRT0_OBJ = $(patsubst %,S%, $(CRT0_OBJ))
+endif
 CRT0_DEPS=gmon-start.S
 
 CTOR_TARGETS = crti.o crtn.o
@@ -53,11 +55,11 @@
 	$(CC) $(CFLAGS) -c $< -o $@
 
 $(SCRT0_OBJ): $(CRT0_SRC) Scrtreloc.o
-	$(CC) $(ASFLAGS) -fPIE -DL_$* -r -nostdlib $< Scrtreloc.o -o $*.o
+	$(CC) $(ASFLAGS) $(PIEFLAG) -DL_$* -r -nostdlib $< Scrtreloc.o -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 Scrtreloc.o: crtreloc.c
-	$(CC) $(CFLAGS) -fPIE -c $< -o $@
+	$(CC) $(CFLAGS) $(PIEFLAG) -c $< -o $@
 
 $(CTOR_TARGETS): %.o : %.S
 	$(CC) $(ASFLAGS) -c $< -o $@
--- ./utils/Makefile.pie~	Tue Aug 31 15:08:53 2004
+++ ./utils/Makefile	Tue Aug 31 15:13:35 2004
@@ -34,6 +34,10 @@
 XXFLAGS+= -D__LDSO_LDD_SUPPORT
 endif
 
+ifeq ($(strip $(UCLIBC_PIE_SUPPORT)),y)
+XXFLAGS+= $(PIEFLAG) $(LDPIEFLAG)
+endif
+
 ifeq ($(strip $(HAVE_SHARED)),y)
 all:	$(TARGETS) $(TARGET_ICONV)
 else
--- ./Rules.mak.pie~	Tue Aug 31 14:36:23 2004
+++ ./Rules.mak	Tue Aug 31 15:04:29 2004
@@ -89,6 +89,10 @@
 
 OPTIMIZATION:=
 PICFLAG:=-fPIC
+PIEFLAG:=$(call check_gcc,-fPIE,)
+ifeq ($(strip $(PIEFLAG)),-fPIE)
+LDPIEFLAG:=-pie
+endif
 
 # Some nice CPU specific optimizations
 ifeq ($(strip $(TARGET_ARCH)),i386)
@@ -172,6 +176,7 @@
 	CPU_LDFLAGS-$(CONFIG_CRIS)+=-mcrislinux
 	CPU_CFLAGS-$(CONFIG_CRIS)+=-mlinux
 	PICFLAG:=-fpic
+	PIEFLAG:=$(call check_gcc,-fpie,)
 endif
 
 ifeq ($(strip $(TARGET_ARCH)),powerpc)
@@ -179,13 +184,14 @@
 # enough. Therefore use -fpic which will reduce code size and generates
 # faster code.
 	PICFLAG:=-fpic
+	PIEFLAG=$(call check_gcc,-fpie,)
 endif
 
 ifeq ($(strip $(TARGET_ARCH)),frv)
 	CPU_LDFLAGS-$(CONFIG_FRV)+=-melf32frvfd
 	CPU_CFLAGS-$(CONFIG_FRV)+=-mfdpic
 	PICFLAG=-fPIC -DPIC
-	PIEFLAG=-fpie
+	PIEFLAG=$(call check_gcc,-fpie,)
 	# Using -pie causes the program to have an interpreter, which is
 	# forbidden, so we must make do with -shared.  Unfortunately,
 	# -shared by itself would get us global function descriptors
@@ -220,6 +226,11 @@
 endif
 endif
 
+ifneq ($(strip $(UCLIBC_PIE_SUPPORT)),y)
+PIEFLAG=
+LDPIEFLAG=
+endif
+
 ifeq ($(SSP_CFLAGS),)
 SSP_CFLAGS=$(call check_gcc,-fno-stack-protector-all,)
 SSP_CFLAGS+=$(call check_gcc,-fstack-protector,)
-------------- next part --------------
--- ./libc/Makefile.mps	Tue Aug 31 17:59:30 2004
+++ ./libc/Makefile	Tue Aug 31 17:59:54 2004
@@ -30,12 +30,6 @@
 TOPDIR=../
 include $(TOPDIR)Rules.mak
 
-ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
-CRTOBJS=../../lib/crti.o ../../lib/crt0.o ../../lib/crtn.o
-else
-CRTOBJS=../../lib/crt0.o
-endif
-
 DIRS = misc pwd_grp stdio string termios inet signal stdlib sysdeps unistd
 
 # Check if the target architecture has a version script for
-------------- next part --------------
--- utils/Makefile.mps	Fri Aug 27 17:45:27 2004
+++ utils/Makefile	Fri Aug 27 17:45:53 2004
@@ -78,7 +78,7 @@
 	$(STRIPTOOL) -x -R .note -R .comment $@
 
 iconv: ../libc/misc/wchar/wchar.c
-	$(CC) $(CFLAGS) -DL_iconv_main ../libc/misc/wchar/wchar.c -o $@ \
+	$(CC) $(CFLAGS) $(XXFLAGS) -DL_iconv_main ../libc/misc/wchar/wchar.c -o $@ \
 		$(LDADD_LIBFLOAT) -L../lib
 	$(STRIPTOOL) -x -R .note -R .comment $@
 
-------------- next part --------------
--- uClibc-0.9.26/ldso/ldso/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/ldso/ldso/Makefile	Tue Aug 31 14:10:27 2004
@@ -22,6 +22,8 @@
 LDSO_FULLNAME=ld-uClibc-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
 
 SSPFLAGS=$(call check_gcc,-fno-stack-protector,)
+# reset to initial (disabling predefined CFLAGS)
+ASFLAGS=
 
 XXFLAGS=$(XWARNINGS) $(LIBRARY_CACHE) $(SSPFLAGS)
 ifeq ($(DODEBUG),y)
@@ -82,7 +84,7 @@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(AOBJS): %.o : %.S
-	$(CC) $(XXFLAGS) -I../libdl -c $< -o $@
+	$(CC) $(XXFLAGS) $(ASFLAGS) -I../libdl -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 ldso.o: $(CSRC)
--- uClibc-0.9.26/libc/string/arm/Makefile.noexecstack~	Thu Nov 20 16:23:03 2003
+++ uClibc-0.9.26/libc/string/arm/Makefile	Tue Aug 31 12:51:49 2004
@@ -31,7 +31,7 @@
 	$(AR) $(ARFLAGS) $(LIBC) $(SOBJS)
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 clean:
--- uClibc-0.9.26/libc/string/sh64/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/string/sh64/Makefile	Tue Aug 31 12:52:45 2004
@@ -30,7 +30,7 @@
 	$(AR) $(ARFLAGS) $(LIBC) $(SOBJS)
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 clean:
--- uClibc-0.9.26/libc/string/frv/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/string/frv/Makefile	Tue Aug 31 12:52:04 2004
@@ -31,7 +31,7 @@
 	$(AR) $(ARFLAGS) $(LIBC) $(OBJS)
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 clean:
--- uClibc-0.9.26/libc/sysdeps/linux/alpha/Makefile.noexecstack~	Sat Nov 22 22:21:39 2003
+++ uClibc-0.9.26/libc/sysdeps/linux/alpha/Makefile	Tue Aug 31 12:53:43 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -42,11 +41,11 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -55,14 +54,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/arm/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/arm/Makefile	Tue Aug 31 12:53:51 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -43,11 +42,11 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -56,14 +55,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/cris/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/cris/Makefile	Tue Aug 31 12:54:02 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.c
 CRT0_OBJ = crt0.o crt1.o
@@ -48,7 +47,7 @@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -57,14 +56,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/e1/Makefile.noexecstack~	Sat Nov 22 22:21:53 2003
+++ uClibc-0.9.26/libc/sysdeps/linux/e1/Makefile	Tue Aug 31 12:54:12 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 #FIXME -- this arch should include its own crti.S and crtn.S
 UCLIBC_CTOR_DTOR=n
@@ -47,11 +46,11 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/$(CRT0_OBJ)
 
 $(CRT0_OBJ): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -60,14 +59,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/h8300/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/h8300/Makefile	Tue Aug 31 13:52:51 2004
@@ -18,9 +18,8 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 ifeq ($(DOPIC),y)
-ASFLAGS+=-D__PIC__
+SFLAGS = $(ASFLAGS) -D__PIC__
 endif
 
 #FIXME -- this arch should include its own crti.S and crtn.S
@@ -47,11 +46,11 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(ASFLAGS) -c $< -o $@
+	$(CC) $(SFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -60,14 +59,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/i386/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/i386/Makefile	Tue Aug 31 12:55:02 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -53,11 +52,11 @@
 endif
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -66,14 +65,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/i960/Makefile.noexecstack~	Sat Nov 22 22:22:02 2003
+++ uClibc-0.9.26/libc/sysdeps/linux/i960/Makefile	Tue Aug 31 12:55:13 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 #FIXME -- this arch should include its own crti.S and crtn.S
 UCLIBC_CTOR_DTOR=n
@@ -44,11 +43,11 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -57,14 +56,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/m68k/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/m68k/Makefile	Tue Aug 31 12:55:27 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 # If you're looking for vfork(), it is defined in include/unistd.h
 
@@ -48,11 +47,15 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
+ifeq ($(ARCH_HAS_MMU),y)
 	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+else
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
+endif
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -61,14 +64,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/microblaze/Makefile.noexecstack~	Tue Aug 31 12:59:12 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/microblaze/Makefile	Tue Aug 31 12:58:01 2004
@@ -24,7 +24,8 @@
 UCLIBC_CTOR_DTOR=n
 
 CFLAGS += -I..
-SFLAGS = $(CFLAGS) -D__ASSEMBLER -DASM_GLOBAL_DIRECTIVE=.globl
+ASFLAGS += -I..
+SFLAGS = $(ASFLAGS) -D__ASSEMBLER -DASM_GLOBAL_DIRECTIVE=.globl
 
 TARGET_MACHINE_TYPE=$(shell $(CC) -dumpmachine)
 
@@ -62,14 +63,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/mips/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/mips/Makefile	Tue Aug 31 13:00:00 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -42,11 +41,11 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -56,14 +55,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/powerpc/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/powerpc/Makefile	Tue Aug 31 13:00:18 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -53,11 +52,11 @@
 endif
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -67,14 +66,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/sh/Makefile.noexecstack~	Tue Aug 31 13:43:26 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/sh/Makefile	Tue Aug 31 13:42:48 2004
@@ -21,7 +21,8 @@
 include $(TOPDIR)Rules.mak
 
 CFLAGS+= -I../
-SFLAGS= $(CFLAGS) -D__ASSEMBLER__
+ASFLAGS+= -I../
+SFLAGS+= $(ASFLAGS) -D__ASSEMBLER__
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -58,14 +59,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/sh64/Makefile.noexecstack~	Tue Aug 31 13:46:18 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/sh64/Makefile	Tue Aug 31 13:46:57 2004
@@ -21,7 +21,8 @@
 include $(TOPDIR)Rules.mak
 
 CFLAGS += -I..
-SFLAGS = $(CFLAGS) -D__ASSEMBLER__ -DASM_GLOBAL_DIRECTIVE=.globl
+ASFLAGS += -I..
+SFLAGS = $(ASFLAGS) -D__ASSEMBLER__ -DASM_GLOBAL_DIRECTIVE=.globl
 
 TARGET_MACHINE_TYPE=$(shell $(CC) -dumpmachine)
 
@@ -59,14 +60,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/sparc/Makefile.noexecstack~	Sat Nov 22 22:22:25 2003
+++ uClibc-0.9.26/libc/sysdeps/linux/sparc/Makefile	Tue Aug 31 13:47:19 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.c
 CRT0_OBJ = crt0.o crt1.o
@@ -46,7 +45,7 @@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -55,14 +54,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/v850/Makefile.noexecstack~	Tue Aug 31 13:47:40 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/v850/Makefile	Tue Aug 31 13:48:36 2004
@@ -21,7 +21,8 @@
 include $(TOPDIR)Rules.mak
 
 CFLAGS += -I..
-SFLAGS = $(CFLAGS) -D__ASSEMBLER -DASM_GLOBAL_DIRECTIVE=.globl
+ASFLAGS += -I..
+SFLAGS = $(ASFLAGS) -D__ASSEMBLER -DASM_GLOBAL_DIRECTIVE=.globl
 
 TARGET_MACHINE_TYPE=$(shell $(CC) -dumpmachine)
 
@@ -46,7 +47,7 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
@@ -59,14 +60,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/frv/Makefile.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/frv/Makefile	Tue Aug 31 12:54:34 2004
@@ -19,7 +19,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -47,25 +46,25 @@
 	cp $(CRT0_OBJ) $(SCRT0_OBJ) $(CTOR_TARGETS) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC) crtreloc.o
-	$(CC) $(CFLAGS) -DL_$* -r -nostdlib $< crtreloc.o -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* -r -nostdlib $< crtreloc.o -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 crtreloc.o: crtreloc.c
 	$(CC) $(CFLAGS) -c $< -o $@
 
 $(SCRT0_OBJ): $(CRT0_SRC) Scrtreloc.o
-	$(CC) $(CFLAGS) -fPIE -DL_$* -r -nostdlib $< Scrtreloc.o -o $*.o
+	$(CC) $(ASFLAGS) -fPIE -DL_$* -r -nostdlib $< Scrtreloc.o -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 Scrtreloc.o: crtreloc.c
 	$(CC) $(CFLAGS) -fPIE -c $< -o $@
 
 $(CTOR_TARGETS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
--- uClibc-0.9.26/libc/sysdeps/linux/nios/Makefile.noexecstack~	Tue Aug 31 13:43:51 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/nios/Makefile	Tue Aug 31 13:59:34 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -41,11 +40,11 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -54,14 +53,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/libc/sysdeps/linux/nios2/Makefile.noexecstack~	Tue Aug 31 13:43:57 2004
+++ uClibc-0.9.26/libc/sysdeps/linux/nios2/Makefile	Tue Aug 31 13:59:54 2004
@@ -18,7 +18,6 @@
 
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
-ASFLAGS=$(CFLAGS)
 
 CRT0_SRC = crt0.S
 CRT0_OBJ = crt0.o crt1.o
@@ -41,11 +40,11 @@
 	cp $(CRT0_OBJ) $(TOPDIR)lib/
 
 $(CRT0_OBJ): $(CRT0_SRC)
-	$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(SOBJS): %.o : %.S
-	$(CC) $(CFLAGS) -c $< -o $@
+	$(CC) $(ASFLAGS) -c $< -o $@
 	$(STRIPTOOL) -x -R .note -R .comment $*.o
 
 $(COBJS): %.o : %.c
@@ -54,14 +53,14 @@
 
 ifeq ($(strip $(UCLIBC_CTOR_DTOR)),y)
 crti.o: crti.S
-	$(CC) $(CFLAGS) -c crti.S -o crti.o
+	$(CC) $(ASFLAGS) -c crti.S -o crti.o
 
 $(TOPDIR)lib/crti.o: crti.o
 	$(INSTALL) -d $(TOPDIR)lib/
 	cp crti.o $(TOPDIR)lib/
 
 crtn.o: crtn.S
-	$(CC) $(CFLAGS) -c crtn.S -o crtn.o
+	$(CC) $(ASFLAGS) -c crtn.S -o crtn.o
 
 $(TOPDIR)lib/crtn.o: crtn.o
 	$(INSTALL) -d $(TOPDIR)lib/
--- uClibc-0.9.26/Rules.mak.noexecstack~	Tue Aug 31 12:38:54 2004
+++ uClibc-0.9.26/Rules.mak	Tue Aug 31 14:03:21 2004
@@ -262,6 +262,8 @@
     CFLAGS += $(PICFLAG)
 endif
 
+ASFLAGS = $(CFLAGS)
+
 LIBGCC_CFLAGS ?= $(CFLAGS) $(CPU_CFLAGS-y)
 LIBGCC:=$(shell $(CC) $(LIBGCC_CFLAGS) -print-libgcc-file-name)
 LIBGCC_DIR:=$(dir $(LIBGCC))
-------------- next part --------------
--- ldso/libdl/libdl.c.mps	Mon Aug 30 17:45:43 2004
+++ ldso/libdl/libdl.c	Mon Aug 30 17:45:55 2004
@@ -130,7 +130,6 @@
 	struct elf_resolve *tpnt, *tfrom, *tcurr;
 	struct dyn_elf *dyn_chain, *rpnt = NULL, *dyn_ptr;
 	struct dyn_elf *dpnt;
-	static int dl_init = 0;
 	ElfW(Addr) from;
 	struct elf_resolve *tpnt1;
 	void (*dl_brk) (void);
-------------- next part --------------
--- ./ldso/include/ldso.h.mps	2004-08-31 10:31:34.000000000 +0200
+++ ./ldso/include/ldso.h	2004-08-31 10:35:23.000000000 +0200
@@ -38,7 +38,6 @@ extern char *_dl_ldsopath;             /
 extern const char *_dl_progname;       /* The name of the executable being run */
 extern unsigned char *_dl_malloc_addr; /* Lets _dl_malloc use the already allocated memory page */
 extern unsigned char *_dl_mmap_zero;   /* Also used by _dl_malloc */
-extern unsigned long *_dl_brkp;        /* The end of the data segment for brk and sbrk */
 extern unsigned long *_dl_envp;        /* The environment address */
 extern int _dl_secure;                 /* Are we dealing with setuid stuff? */
 extern size_t _dl_pagesize;            /* Store the page size for use later */


More information about the uClibc mailing list