All of lore.kernel.org
 help / color / mirror / Atom feed
From: Masahiro Yamada <yamada.masahiro@socionext.com>
To: linux-kbuild@vger.kernel.org
Cc: Randy Dunlap <rdunlap@infradead.org>,
	Arnd Bergmann <arnd@arndb.de>,
	David Howells <dhowells@redhat.com>,
	Sam Ravnborg <sam@ravnborg.org>,
	Jani Nikula <jani.nikula@intel.com>,
	Masahiro Yamada <yamada.masahiro@socionext.com>,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
	Jonathan Corbet <corbet@lwn.net>,
	Michal Marek <michal.lkml@markovi.net>
Subject: [PATCH 01/15] kbuild: remove headers_{install,check}_all
Date: Tue,  4 Jun 2019 19:13:55 +0900	[thread overview]
Message-ID: <20190604101409.2078-2-yamada.masahiro@socionext.com> (raw)
In-Reply-To: <20190604101409.2078-1-yamada.masahiro@socionext.com>

headers_install_all does not make much sense any more because different
architectures export different set of uapi/linux/ headers. As you see
in include/uapi/linux/Kbuild, the installation of a.out.h, kvm.h, and
kvm_para.h is arch-dependent. So, headers_install_all repeats the
installation/removal of them.

If somebody really thinks it is useful to do headers_install for all
architectures, it would be possible by small shell-scripting, but the
top Makefile do not have to provide entry targets just for that purpose.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---

 Documentation/kbuild/headers_install.txt |  7 ------
 Documentation/kbuild/makefiles.txt       |  6 +----
 Makefile                                 | 15 ++----------
 scripts/headers.sh                       | 29 ------------------------
 4 files changed, 3 insertions(+), 54 deletions(-)
 delete mode 100755 scripts/headers.sh

diff --git a/Documentation/kbuild/headers_install.txt b/Documentation/kbuild/headers_install.txt
index f0153adb95e2..f07e34eab70b 100644
--- a/Documentation/kbuild/headers_install.txt
+++ b/Documentation/kbuild/headers_install.txt
@@ -39,12 +39,5 @@ INSTALL_HDR_PATH indicates where to install the headers. It defaults to
 An 'include' directory is automatically created inside INSTALL_HDR_PATH and
 headers are installed in 'INSTALL_HDR_PATH/include'.
 
-The command "make headers_install_all" exports headers for all architectures
-simultaneously.  (This is mostly of interest to distribution maintainers,
-who create an architecture-independent tarball from the resulting include
-directory.)  You also can use HDR_ARCH_LIST to specify list of architectures.
-Remember to provide the appropriate linux/asm directory via "mv" or "ln -s"
-before building a C library with headers exported this way.
-
 The kernel header export infrastructure is maintained by David Woodhouse
 <dwmw2@infradead.org>.
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
index d65ad5746f94..bac301a73a86 100644
--- a/Documentation/kbuild/makefiles.txt
+++ b/Documentation/kbuild/makefiles.txt
@@ -897,11 +897,7 @@ When kbuild executes, the following steps are followed (roughly):
 --- 6.2 Add prerequisites to archheaders:
 
 	The archheaders: rule is used to generate header files that
-	may be installed into user space by "make header_install" or
-	"make headers_install_all".  In order to support
-	"make headers_install_all", this target has to be able to run
-	on an unconfigured tree, or a tree configured for another
-	architecture.
+	may be installed into user space by "make header_install".
 
 	It is run before "make archprepare" when run on the
 	architecture itself.
diff --git a/Makefile b/Makefile
index 004d67a4405f..7745bdd84861 100644
--- a/Makefile
+++ b/Makefile
@@ -1181,34 +1181,23 @@ headerdep:
 #Default location for installed headers
 export INSTALL_HDR_PATH = $(objtree)/usr
 
-# If we do an all arch process set dst to include/arch-$(SRCARCH)
-hdr-dst = $(if $(KBUILD_HEADERS), dst=include/arch-$(SRCARCH), dst=include)
-
 PHONY += archheaders archscripts
 
 PHONY += __headers
 __headers: $(version_h) scripts_basic uapi-asm-generic archheaders archscripts
 	$(Q)$(MAKE) $(build)=scripts build_unifdef
 
-PHONY += headers_install_all
-headers_install_all:
-	$(Q)$(CONFIG_SHELL) $(srctree)/scripts/headers.sh install
-
 PHONY += headers_install
 headers_install: __headers
 	$(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 $(hdr-dst)
-
-PHONY += headers_check_all
-headers_check_all: headers_install_all
-	$(Q)$(CONFIG_SHELL) $(srctree)/scripts/headers.sh check
+	$(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi dst=include
 
 PHONY += headers_check
 headers_check: headers_install
 	$(Q)$(MAKE) $(hdr-inst)=include/uapi dst=include HDRCHECK=1
-	$(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi $(hdr-dst) HDRCHECK=1
+	$(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi dst=include HDRCHECK=1
 
 ifdef CONFIG_HEADERS_CHECK
 all: headers_check
diff --git a/scripts/headers.sh b/scripts/headers.sh
deleted file mode 100755
index e0f883eb39a2..000000000000
--- a/scripts/headers.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/sh
-# SPDX-License-Identifier: GPL-2.0
-# Run headers_$1 command for all suitable architectures
-
-# Stop on error
-set -e
-
-do_command()
-{
-	if [ -f ${srctree}/arch/$2/include/asm/Kbuild ]; then
-		make ARCH=$2 KBUILD_HEADERS=$1 headers_$1
-	else
-		printf "Ignoring arch: %s\n" ${arch}
-	fi
-}
-
-archs=${HDR_ARCH_LIST:-$(ls ${srctree}/arch)}
-
-for arch in ${archs}; do
-	case ${arch} in
-	um)        # no userspace export
-		;;
-	*)
-		if [ -d ${srctree}/arch/${arch} ]; then
-			do_command $1 ${arch}
-		fi
-		;;
-	esac
-done
-- 
2.17.1


  reply	other threads:[~2019-06-04 10:15 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-04 10:13 [PATCH 00/15] kbuild: refactor headers_install and support compile-test of UAPI headers Masahiro Yamada
2019-06-04 10:13 ` Masahiro Yamada
2019-06-04 10:13 ` Masahiro Yamada
2019-06-04 10:13 ` Masahiro Yamada
2019-06-04 10:13 ` Masahiro Yamada [this message]
2019-06-04 17:57   ` [PATCH 01/15] kbuild: remove headers_{install,check}_all Sam Ravnborg
2019-06-04 10:13 ` [PATCH 02/15] kbuild: remove stale dependency between Documentation/ and headers_install Masahiro Yamada
2019-06-04 10:13 ` [PATCH 03/15] kbuild: make gdb_script depend on prepare0 instead of prepare Masahiro Yamada
2019-06-04 10:13 ` [PATCH 04/15] kbuild: fix Kconfig prompt of CONFIG_HEADERS_CHECK Masahiro Yamada
2019-06-04 10:13 ` [PATCH 05/15] kbuild: add CONFIG_HEADERS_INSTALL and loosen the dependency of samples Masahiro Yamada
2019-06-04 10:13   ` Masahiro Yamada
2019-06-04 10:13   ` Masahiro Yamada
2019-06-04 10:14 ` [PATCH 06/15] kbuild: remove build_unifdef target in scripts/Makefile Masahiro Yamada
2019-06-04 10:14 ` [PATCH 07/15] kbuild: build all prerequisite of headers_install simultaneously Masahiro Yamada
2019-06-04 10:14 ` [PATCH 08/15] kbuild: add 'headers' target to build up ready-to-install uapi headers Masahiro Yamada
2019-06-04 10:14 ` [PATCH 09/15] kbuild: re-implement Makefile.headersinst without directory descending Masahiro Yamada
2019-06-04 10:14 ` [PATCH 10/15] kbuild: move hdr-inst shorthand to top Makefile Masahiro Yamada
2019-06-04 10:14 ` [PATCH 11/15] kbuild: simplify scripts/headers_install.sh Masahiro Yamada
2019-06-04 10:14 ` [PATCH 12/15] kbuild: deb-pkg: do not run headers_check Masahiro Yamada
2019-06-04 10:14 ` [PATCH 13/15] kbuild: add support for ensuring headers are self-contained Masahiro Yamada
2019-06-04 12:42   ` [PATCH v2] " Jani Nikula
2019-06-04 17:25     ` Sam Ravnborg
2019-06-18 15:45       ` Masahiro Yamada
2019-06-04 10:14 ` [PATCH 14/15] fixup: " Masahiro Yamada
2019-06-04 12:53   ` Jani Nikula
2019-06-04 12:53     ` Jani Nikula
2019-06-04 10:14 ` [PATCH 15/15] kbuild: compile test UAPI headers to ensure they " Masahiro Yamada
2019-06-04 10:14   ` Masahiro Yamada
2019-06-21 19:05   ` Arnd Bergmann
2019-06-21 19:05     ` Arnd Bergmann
2019-06-22  5:12     ` Masahiro Yamada
2019-06-22  5:12       ` Masahiro Yamada
2019-06-22  5:39       ` Masahiro Yamada
2019-06-22  5:39         ` Masahiro Yamada
2019-06-05  2:37 ` [PATCH 00/15] kbuild: refactor headers_install and support compile-test of UAPI headers Masahiro Yamada
2019-06-05  2:37   ` Masahiro Yamada
2019-06-05  2:37   ` Masahiro Yamada
2019-06-05  2:37   ` Masahiro Yamada
2019-06-18 15:46 ` Masahiro Yamada
2019-06-18 15:46   ` Masahiro Yamada
2019-06-18 15:46   ` Masahiro Yamada
2019-06-18 15:46   ` Masahiro Yamada

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190604101409.2078-2-yamada.masahiro@socionext.com \
    --to=yamada.masahiro@socionext.com \
    --cc=arnd@arndb.de \
    --cc=corbet@lwn.net \
    --cc=dhowells@redhat.com \
    --cc=jani.nikula@intel.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michal.lkml@markovi.net \
    --cc=rdunlap@infradead.org \
    --cc=sam@ravnborg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.