blob: b47cdc6b33a346d53b5a71b20232a9054e8e9e44 [file] [log] [blame]
lh9ed821d2023-04-07 01:36:19 -07001# Copyright (C) 1993-2015 Free Software Foundation, Inc.
2# This file is part of the GNU C Library.
3
4# The GNU C Library is free software; you can redistribute it and/or
5# modify it under the terms of the GNU Lesser General Public
6# License as published by the Free Software Foundation; either
7# version 2.1 of the License, or (at your option) any later version.
8
9# The GNU C Library is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12# Lesser General Public License for more details.
13
14# You should have received a copy of the GNU Lesser General Public
15# License along with the GNU C Library; if not, see
16# <http://www.gnu.org/licenses/>.
17
18ifdef in-Makerules
19
20# Look for header files in mach/ under the top-level library source directory.
21# Look for generated header files where they get created.
22includes += -I$(..)mach -I$(common-objpfx)mach/
23
24ifneq (mach,$(subdir))
25# Subdirectories other than mach/ might use the generated Mach headers.
26# So make sure we get a chance to run in mach/ to make them before all else.
27
28mach-objpfx = $(common-objpfx)mach/
29else
30mach-objpfx = $(objpfx)
31endif
32
33# These are all the generated files that <mach.h> includes.
34# Actually, it's only some of them. We omit mach_interface.h
35# because it's different in Darwin and the conditional crap is
36# too much trouble. This should suffice for getting the mach/Makefile
37# rules invoked when they need to be.
38mach-before-compile := $(mach-objpfx)mach-shortcuts.h \
39 $(patsubst %,$(mach-objpfx)mach/mach_%.h,\
40 port host)
41
42ifneq (mach,$(subdir))
43# This patsubst generates patterns like `m%h-shortcuts.h', which are damn
44# likely to match just the corresponding particular file we want.
45$(patsubst mach%,m\%h%,$(mach-before-compile)): # Run only if doesn't exist.
46 $(MAKE) -C $(..)mach mach-before-compile no_deps=t generating=t
47
48before-compile += $(mach-before-compile)
49endif
50
51endif # in-Makerules