glibc/sysdeps/mach/Makefile
Roland McGrath c06b8d60f4 2003-02-15 Roland McGrath <roland@frob.com>
* 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/.
2003-02-15 22:59:19 +00:00

53 lines
2.1 KiB
Makefile

# 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
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# The GNU C Library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# You should have received a copy of the GNU Lesser General Public
# License along with the GNU C Library; if not, write to the Free
# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
# 02111-1307 USA.
ifdef in-Makerules
# Look for header files in mach/ under the top-level library source directory.
# Look for generated header files where they get created.
includes += -I$(..)mach -I$(common-objpfx)mach/
ifneq (mach,$(subdir))
# Subdirectories other than mach/ might use the generated Mach headers.
# 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
# because it's different in Darwin and the conditional crap is
# too much trouble. This should suffice for getting the mach/Makefile
# rules invoked when they need to be.
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 mach-before-compile no_deps=t generating=t
before-compile += $(mach-before-compile)
endif
endif # in-Makerules