about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--Makerules2
-rw-r--r--mach/Makefile5
-rw-r--r--sysdeps/mach/Makefile8
-rw-r--r--sysdeps/mach/hurd/Makefile3
4 files changed, 12 insertions, 6 deletions
diff --git a/Makerules b/Makerules
index e2f7f22a4b..a4acb89571 100644
--- a/Makerules
+++ b/Makerules
@@ -1181,7 +1181,7 @@ define check-abi
 	| diff -pu0 - $(filter %.symlist,$^)
 endef
 
-ifeq ($(sysd-sorted-done),t)
+ifeq ($(sysd-sorted-done)$(generating),t)
 -include $(common-objpfx)tls.make
 config-tls-yes := tls
 config-tls-no := notls
diff --git a/mach/Makefile b/mach/Makefile
index db7f3aa628..563c792078 100644
--- a/mach/Makefile
+++ b/mach/Makefile
@@ -71,11 +71,9 @@ generated =
 mach-machine = $(patsubst powerpc,ppc,$(base-machine))
 
 # Define mach-syscalls and sysno-*.
-ifndef no_deps
 ifndef inhibit_mach_syscalls
 -include $(objpfx)mach-syscalls.mk
 endif
-endif
 $(objpfx)mach-syscalls.mk: syscalls.awk Makefile
 # Go kludges!!!
 	$(make-target-directory)
@@ -172,3 +170,6 @@ $(objpfx)errsystems.c: errsystems.awk err_*.sub \
 .PHONY: generated
 generated: $(addprefix $(common-objpfx),$(common-generated)) \
 	   $(addprefix $(objpfx),$(generated))
+
+.PHONY: mach-before-compile
+mach-before-compile: $(mach-before-compile)
diff --git a/sysdeps/mach/Makefile b/sysdeps/mach/Makefile
index 4d4e4c01e2..af2c273e45 100644
--- a/sysdeps/mach/Makefile
+++ b/sysdeps/mach/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1993,94,96,97,2002 Free Software Foundation, Inc.
+# Copyright (C) 1993,1994,1996,1997,2002,2003 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
 # The GNU C Library is free software; you can redistribute it and/or
@@ -27,6 +27,9 @@ ifneq (mach,$(subdir))
 # So make sure we get a chance to run in mach/ to make them before all else.
 
 mach-objpfx = $(common-objpfx)mach/
+else
+mach-objpfx = $(objpfx)
+endif
 
 # These are all the generated files that <mach.h> includes.
 # Actually, it's only some of them.  We omit mach_interface.h
@@ -37,10 +40,11 @@ mach-before-compile := $(mach-objpfx)mach-shortcuts.h \
 		       $(patsubst %,$(mach-objpfx)mach/mach_%.h,\
 				  port host)
 
+ifneq (mach,$(subdir))
 # This patsubst generates patterns like `m%h-shortcuts.h', which are damn
 # likely to match just the corresponding particular file we want.
 $(patsubst mach%,m\%h%,$(mach-before-compile)): # Run only if doesn't exist.
-	$(MAKE) -C $(..)mach generated no_deps=t
+	$(MAKE) -C $(..)mach mach-before-compile no_deps=t generating=t
 
 before-compile += $(mach-before-compile)
 endif
diff --git a/sysdeps/mach/hurd/Makefile b/sysdeps/mach/hurd/Makefile
index 6e03643381..c86e220c2f 100644
--- a/sysdeps/mach/hurd/Makefile
+++ b/sysdeps/mach/hurd/Makefile
@@ -48,7 +48,8 @@ hurd-objpfx = $(common-objpfx)hurd/
 
 # These are all the generated headers that <hurd.h> includes.
 before-compile += $(patsubst %,$(hurd-objpfx)hurd/%.h,auth io fs process)
-$(patsubst %,$(hurd-objpfx)hurd/%.%,auth io fs process):
+$(patsubst %,$(hurd-objpfx)hurd/%.%,auth io fs process): \
+  $(common-objpfx)mach/mach-shortcuts.h
 	$(MAKE) -C $(..)hurd before-compile no_deps=t
 endif