summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/unix/sysv/sco3.2.4/Makefile14
1 files changed, 14 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/sco3.2.4/Makefile b/sysdeps/unix/sysv/sco3.2.4/Makefile
index 23525e527d..a199ba9003 100644
--- a/sysdeps/unix/sysv/sco3.2.4/Makefile
+++ b/sysdeps/unix/sysv/sco3.2.4/Makefile
@@ -1,3 +1,17 @@
 ifeq (posix,$(subdir))
 sysdep_routines := $(sysdep_routines) pgrpsys sco_getgrp
 endif
+
+ifeq (csu,$(subdir))
+
+# SCO uses crt1.o, and expects that single initializer file to also start
+# the .init and .fini sections as crti.o normally does.
+start-installed-name = crt1.o
+start-installed-name-rule = yes
+
+# Link together start.o and crti.o into the expected crt1.o.
+# Now crt1.o as initializer and crtn.o as finalizer will work.
+$(objpfx)crt1.o: $(objpfx)start.o $(objpfx)crti.o
+	$(CC) -nostdlib -nostartfiles -Wl,-r -o $@ $^
+
+endif