aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--Makeconfig8
-rw-r--r--sysdeps/mach/hurd/i386/Makefile3
3 files changed, 18 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 266017f..303bacd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
1999-06-12 Mark Kettenis <kettenis@gnu.org>
+ * Makeconfig (static-start-installed-name): Set to
+ $(start-installed-name) if not defined.
+ (+link-static): Use $(static-start-installed-name) instead of
+ $(start-installed-name).
+ * sysdeps/mach/hurd/i386/Makefile (static-start-installed-name):
+ Set to crt0.o.
+
+1999-06-12 Mark Kettenis <kettenis@gnu.org>
+
* sysdeps/mach/hurd/fork.c (__fork): Make use of `insert_type' when
inserting a send right into the child instead of unconditionally
copying the send right.
diff --git a/Makeconfig b/Makeconfig
index 3a5780a..6ae27e9 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -364,7 +364,11 @@ else
# some additional bizarre files.
start-installed-name = crt1.o
endif
-
+# On systems that do not need a special startfile for statically linked
+# binaries, simply set it to the normal name.
+ifndef static-start-installed-name
+static-start-installed-name = $(start-installed-name)
+endif
# Command for linking programs with the C library.
ifndef +link
@@ -382,7 +386,7 @@ endif
ifndef +link-static
+link-static = $(CC) -nostdlib -nostartfiles -static -o $@ \
$(sysdep-LDFLAGS) $(LDFLAGS) \
- $(addprefix $(csu-objpfx),$(start-installed-name)) \
+ $(addprefix $(csu-objpfx),$(static-start-installed-name)) \
$(+preinit) $(+prector) \
$(filter-out $(addprefix $(csu-objpfx),start.o \
$(start-installed-name))\
diff --git a/sysdeps/mach/hurd/i386/Makefile b/sysdeps/mach/hurd/i386/Makefile
index 56ee057..335324e 100644
--- a/sysdeps/mach/hurd/i386/Makefile
+++ b/sysdeps/mach/hurd/i386/Makefile
@@ -1,3 +1,6 @@
+# We need special startup code for statically linked binaries.
+static-start-installed-name = crt0.o
+
ifeq ($(subdir),csu)
extra-objs += crt0.o
install-lib += crt0.o