2003-02-15 Roland McGrath <roland@frob.com>
authorroland <roland>
Sat, 15 Feb 2003 22:59:19 +0000 (22:59 +0000)
committerroland <roland>
Sat, 15 Feb 2003 22:59:19 +0000 (22:59 +0000)
* sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
use target mach-before-compile instead of generated.
(mach-before-compile): New target.
* Makerules: Disable use of tls.make if $(generating) is set.
* mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
* sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
mach-shortcuts.h so mach/ generation happens before hurd/.

Makerules
mach/Makefile
sysdeps/mach/Makefile
sysdeps/mach/hurd/Makefile

index e2f7f22..a4acb89 100644 (file)
--- 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
index db7f3aa..563c792 100644 (file)
@@ -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)
index 4d4e4c0..af2c273 100644 (file)
@@ -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
index 6e03643..c86e220 100644 (file)
@@ -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