blob: d75b1a2e7cae67af6bff3778d293112d1895f628 [file] [log] [blame]
Chris Lattnerbda0b622008-03-15 23:59:48 +00001##===- clang/lib/Headers/Makefile --------------------------*- Makefile -*-===##
Chris Lattneraba51222008-03-03 01:22:28 +00002#
3# The LLVM Compiler Infrastructure
4#
5# This file is distributed under the University of Illinois Open Source
6# License. See LICENSE.TXT for details.
7#
8##===----------------------------------------------------------------------===##
9
Daniel Dunbarafed0992010-06-08 20:34:18 +000010CLANG_LEVEL := ../..
Nate Begemanc90b32e2010-05-28 02:20:47 +000011
12BUILT_SOURCES = arm_neon.h.inc
13TABLEGEN_INC_FILES_COMMON = 1
14
Daniel Dunbarafed0992010-06-08 20:34:18 +000015include $(CLANG_LEVEL)/Makefile
Chris Lattneraba51222008-03-03 01:22:28 +000016
Daniel Dunbarbc817cf2010-06-25 17:33:49 +000017CLANG_VERSION := $(word 3,$(shell grep "CLANG_VERSION " \
18 $(PROJ_OBJ_DIR)/$(CLANG_LEVEL)/include/clang/Basic/Version.inc))
Mike Stumpf918b8f2009-09-16 01:26:05 +000019
20HeaderDir := $(PROJ_OBJ_ROOT)/$(BuildMode)/lib/clang/$(CLANG_VERSION)/include
Chris Lattneraba51222008-03-03 01:22:28 +000021
22HEADERS := $(notdir $(wildcard $(PROJ_SRC_DIR)/*.h))
23
24OBJHEADERS := $(addprefix $(HeaderDir)/, $(HEADERS))
25
26
Nate Begemanc90b32e2010-05-28 02:20:47 +000027$(OBJHEADERS): $(HeaderDir)/%.h: $(PROJ_SRC_DIR)/%.h $(HeaderDir)/.dir $(HeaderDir)/arm_neon.h
Chris Lattner0ec82422008-03-09 01:29:23 +000028 $(Verb) cp $< $@
Daniel Dunbaradcf5b32009-02-21 20:52:41 +000029 $(Echo) Copying $(notdir $<) to build dir
30
Bob Wilsone188b092010-06-26 00:03:23 +000031$(HeaderDir)/arm_neon.h: $(BUILT_SOURCES) $(HeaderDir)/.dir
Nate Begemanc90b32e2010-05-28 02:20:47 +000032 $(Verb) cp $< $@
33 $(Echo) Copying $(notdir $<) to build dir
Daniel Dunbarafed0992010-06-08 20:34:18 +000034
Chris Lattneraba51222008-03-03 01:22:28 +000035# Hook into the standard Makefile rules.
36all-local:: $(OBJHEADERS)
37
Mike Stumpf918b8f2009-09-16 01:26:05 +000038PROJ_headers := $(DESTDIR)$(PROJ_prefix)/lib/clang/$(CLANG_VERSION)/include
Chris Lattneraba51222008-03-03 01:22:28 +000039
40INSTHEADERS := $(addprefix $(PROJ_headers)/, $(HEADERS))
Daniel Dunbaraf187912010-07-22 01:19:36 +000041INSTHEADERS += $(PROJ_headers)/arm_neon.h
Chris Lattneraba51222008-03-03 01:22:28 +000042
Mike Stump37338312009-01-22 02:53:03 +000043$(PROJ_headers):
44 $(Verb) $(MKDIR) $@
45
46$(INSTHEADERS): $(PROJ_headers)/%.h: $(HeaderDir)/%.h | $(PROJ_headers)
Chris Lattneraba51222008-03-03 01:22:28 +000047 $(Verb) $(DataInstall) $< $(PROJ_headers)
Daniel Dunbaradcf5b32009-02-21 20:52:41 +000048 $(Echo) Installing compiler include file: $(notdir $<)
Chris Lattneraba51222008-03-03 01:22:28 +000049
50install-local:: $(INSTHEADERS)
Nate Begemanc90b32e2010-05-28 02:20:47 +000051
Nate Begemana23326b2010-06-17 04:17:01 +000052$(ObjDir)/arm_neon.h.inc.tmp : $(CLANG_LEVEL)/include/clang/Basic/arm_neon.td $(TBLGEN) $(ObjDir)/.dir
Nate Begemanc90b32e2010-05-28 02:20:47 +000053 $(Echo) "Building Clang arm_neon.h.inc with tblgen"
Nate Begemana23326b2010-06-17 04:17:01 +000054 $(Verb) $(TableGen) -gen-arm-neon -o $(call SYSPATH, $@) $<