summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sh/Makefile
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-08-09 04:54:18 +0000
committerMike Frysinger <vapier@gentoo.org>2005-08-09 04:54:18 +0000
commitd501ad45e35b79af56b469fbd8a5bf9df0d16505 (patch)
tree51cfe691d908b2b7e526252f087cac3ef8439cf1 /libc/sysdeps/linux/sh/Makefile
parent981799a70581dbb9740113cab23a26664e70e09d (diff)
update crt0 to crt1 based heavily on glibc start.S and to sync up with __uClibc_main changes
Diffstat (limited to 'libc/sysdeps/linux/sh/Makefile')
-rw-r--r--libc/sysdeps/linux/sh/Makefile15
1 files changed, 10 insertions, 5 deletions
diff --git a/libc/sysdeps/linux/sh/Makefile b/libc/sysdeps/linux/sh/Makefile
index 11c40aa73..f224acdbf 100644
--- a/libc/sysdeps/linux/sh/Makefile
+++ b/libc/sysdeps/linux/sh/Makefile
@@ -20,8 +20,9 @@
TOPDIR=../../../../
include $(TOPDIR)Rules.mak
-CRT0_SRC = crt0.S
-CRT0_OBJ = crt0.o crt1.o
+CRT_SRC = crt1.S
+CRT_OBJ = crt1.o
+SCRT_OBJ = $(patsubst %,S%, $(CRT_OBJ))
CTOR_TARGETS=$(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o
SSRC=setjmp.S __longjmp.S vfork.S clone.S ___fpscr_values.S
@@ -36,15 +37,19 @@ OBJ_LIST=../../../obj.sysdeps.$(TARGET_ARCH)
all: $(OBJ_LIST)
-$(OBJ_LIST): $(OBJS) $(CRT0_OBJ) $(CTOR_TARGETS)
+$(OBJ_LIST): $(OBJS) $(CRT_OBJ) $(SCRT_OBJ) $(CTOR_TARGETS)
echo $(patsubst %, sysdeps/linux/$(TARGET_ARCH)/%, $(OBJS)) > $(OBJ_LIST)
$(INSTALL) -d $(TOPDIR)lib/
- cp $(CRT0_OBJ) $(TOPDIR)lib/
+ cp $(CRT_OBJ) $(SCRT_OBJ) $(TOPDIR)lib/
-$(CRT0_OBJ): $(CRT0_SRC)
+$(CRT_OBJ): $(CRT_SRC)
$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
$(STRIPTOOL) -x -R .note -R .comment $*.o
+$(SCRT_OBJ): $(CRT_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