kbuild: add 'headers' target to build up uapi headers in usr/include
[linux-2.6-block.git] / Makefile
index 39ee585b52b1769e28f8978fc77865ea5f1516d4..11445a7dd820f724ce3766dd1d98ee047db0491c 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -262,7 +262,7 @@ old_version_h := include/linux/version.h
 clean-targets := %clean mrproper cleandocs
 no-dot-config-targets := $(clean-targets) \
                         cscope gtags TAGS tags help% %docs check% coccicheck \
-                        $(version_h) headers_% archheaders archscripts \
+                        $(version_h) headers headers_% archheaders archscripts \
                         %asm-generic kernelversion %src-pkg
 no-sync-config-targets := $(no-dot-config-targets) install %install \
                           kernelrelease
@@ -1178,25 +1178,32 @@ headerdep:
 #Default location for installed headers
 export INSTALL_HDR_PATH = $(objtree)/usr
 
-PHONY += archheaders archscripts
-
-PHONY += __headers
-__headers: $(version_h) scripts_unifdef uapi-asm-generic archheaders archscripts
+quiet_cmd_headers_install = INSTALL $(INSTALL_HDR_PATH)/include
+      cmd_headers_install = \
+       mkdir -p $(INSTALL_HDR_PATH); \
+       rsync -mrl --include='*/' --include='*\.h' --exclude='*' \
+       usr/include $(INSTALL_HDR_PATH)
 
 PHONY += headers_install
-headers_install: __headers
+headers_install: headers
+       $(call cmd,headers_install)
+
+PHONY += archheaders archscripts
+
+PHONY += headers
+headers: $(version_h) scripts_unifdef uapi-asm-generic archheaders archscripts
        $(if $(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/Kbuild),, \
          $(error Headers not exportable for the $(SRCARCH) architecture))
        $(Q)$(MAKE) $(hdr-inst)=include/uapi dst=include
        $(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi dst=include
 
 PHONY += headers_check
-headers_check: headers_install
+headers_check: headers
        $(Q)$(MAKE) $(hdr-inst)=include/uapi dst=include HDRCHECK=1
        $(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi dst=include HDRCHECK=1
 
 ifdef CONFIG_HEADERS_INSTALL
-prepare: headers_install
+prepare: headers
 endif
 
 ifdef CONFIG_HEADERS_CHECK