[1/4] sh: fix -Wmissing-include-dirs warnings for various platforms

Message ID 20230219141555.2308306-1-masahiroy@kernel.org
State New
Headers
Series [1/4] sh: fix -Wmissing-include-dirs warnings for various platforms |

Commit Message

Masahiro Yamada Feb. 19, 2023, 2:15 p.m. UTC
  The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
like this:

  cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]

Indeed, arch/sh/include/mach-hp6xx does not exist.

-Wmissing-include-dirs is W=1 warning, but it may be annoying
when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
unconditionally adds this warning option.

arch/sh/Makefile defines machdir-y for two purposes:

 - Build platform code in arch/sh/boards/mach-*/
 - Add arch/sh/include/mach-*/ to the header search path

For the latter, some platforms use arch/sh/include/mach-common/ instead
of having its own arch/sh/include/mach-*/.

Drop unneeded machdir-y to not include non-existing include directory.

To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
arch/sh/boards/Makefile.

Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 arch/sh/Makefile        | 18 +-----------------
 arch/sh/boards/Makefile | 19 +++++++++++++++++++
 2 files changed, 20 insertions(+), 17 deletions(-)
  

Comments

John Paul Adrian Glaubitz Feb. 19, 2023, 2:40 p.m. UTC | #1
Hi Masahiro!

On Sun, 2023-02-19 at 23:15 +0900, Masahiro Yamada wrote:
> The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
> like this:
> 
>   cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]
> 
> Indeed, arch/sh/include/mach-hp6xx does not exist.
> 
> -Wmissing-include-dirs is W=1 warning, but it may be annoying
> when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
> unconditionally adds this warning option.
> 
> arch/sh/Makefile defines machdir-y for two purposes:
> 
>  - Build platform code in arch/sh/boards/mach-*/
>  - Add arch/sh/include/mach-*/ to the header search path
> 
> For the latter, some platforms use arch/sh/include/mach-common/ instead
> of having its own arch/sh/include/mach-*/.
> 
> Drop unneeded machdir-y to not include non-existing include directory.
> 
> To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
> arch/sh/boards/Makefile.
> 
> Reported-by: kernel test robot <lkp@intel.com>
> Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---

Thanks for your patches! I'm still waiting for my kernel.org account to be created,
so I can set up my own linux-sh tree. I hope that happens next week. There are already
some patches piling up.

Adrian
  
Masahiro Yamada Feb. 19, 2023, 4:54 p.m. UTC | #2
On Sun, Feb 19, 2023 at 11:40 PM John Paul Adrian Glaubitz
<glaubitz@physik.fu-berlin.de> wrote:
>
> Hi Masahiro!
>
> On Sun, 2023-02-19 at 23:15 +0900, Masahiro Yamada wrote:
> > The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
> > like this:
> >
> >   cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]
> >
> > Indeed, arch/sh/include/mach-hp6xx does not exist.
> >
> > -Wmissing-include-dirs is W=1 warning, but it may be annoying
> > when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
> > unconditionally adds this warning option.
> >
> > arch/sh/Makefile defines machdir-y for two purposes:
> >
> >  - Build platform code in arch/sh/boards/mach-*/
> >  - Add arch/sh/include/mach-*/ to the header search path
> >
> > For the latter, some platforms use arch/sh/include/mach-common/ instead
> > of having its own arch/sh/include/mach-*/.
> >
> > Drop unneeded machdir-y to not include non-existing include directory.
> >
> > To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
> > arch/sh/boards/Makefile.
> >
> > Reported-by: kernel test robot <lkp@intel.com>
> > Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > ---
>
> Thanks for your patches! I'm still waiting for my kernel.org account to be created,
> so I can set up my own linux-sh tree. I hope that happens next week. There are already
> some patches piling up.
>
> Adrian


That's good news.

I just thought arch/sh is no longer maintained.
(I saw a patch for the entire removal of arch/sh/ somewhere).

I leave this series up to you.




> --
>  .''`.  John Paul Adrian Glaubitz
> : :' :  Debian Developer
> `. `'   Physicist
>   `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
  
Randy Dunlap Feb. 19, 2023, 5:05 p.m. UTC | #3
On 2/19/23 06:15, Masahiro Yamada wrote:
> The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
> like this:
> 
>   cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]
> 
> Indeed, arch/sh/include/mach-hp6xx does not exist.
> 
> -Wmissing-include-dirs is W=1 warning, but it may be annoying
> when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
> unconditionally adds this warning option.
> 
> arch/sh/Makefile defines machdir-y for two purposes:
> 
>  - Build platform code in arch/sh/boards/mach-*/
>  - Add arch/sh/include/mach-*/ to the header search path
> 
> For the latter, some platforms use arch/sh/include/mach-common/ instead
> of having its own arch/sh/include/mach-*/.
> 
> Drop unneeded machdir-y to not include non-existing include directory.
> 
> To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
> arch/sh/boards/Makefile.
> 
> Reported-by: kernel test robot <lkp@intel.com>
> Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

Acked-by: Randy Dunlap <rdunlap@infradead.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>

Thanks.

> ---
> 
>  arch/sh/Makefile        | 18 +-----------------
>  arch/sh/boards/Makefile | 19 +++++++++++++++++++
>  2 files changed, 20 insertions(+), 17 deletions(-)
> 
> diff --git a/arch/sh/Makefile b/arch/sh/Makefile
> index 5c8776482530..a9cad5137f92 100644
> --- a/arch/sh/Makefile
> +++ b/arch/sh/Makefile
> @@ -116,31 +116,15 @@ export ld-bfd
>  
>  # Mach groups
>  machdir-$(CONFIG_SOLUTION_ENGINE)		+= mach-se
> -machdir-$(CONFIG_SH_HP6XX)			+= mach-hp6xx
>  machdir-$(CONFIG_SH_DREAMCAST)			+= mach-dreamcast
>  machdir-$(CONFIG_SH_SH03)			+= mach-sh03
> -machdir-$(CONFIG_SH_RTS7751R2D)			+= mach-r2d
> -machdir-$(CONFIG_SH_HIGHLANDER)			+= mach-highlander
>  machdir-$(CONFIG_SH_MIGOR)			+= mach-migor
> -machdir-$(CONFIG_SH_AP325RXA)			+= mach-ap325rxa
>  machdir-$(CONFIG_SH_KFR2R09)			+= mach-kfr2r09
>  machdir-$(CONFIG_SH_ECOVEC)			+= mach-ecovec24
> -machdir-$(CONFIG_SH_SDK7780)			+= mach-sdk7780
>  machdir-$(CONFIG_SH_SDK7786)			+= mach-sdk7786
>  machdir-$(CONFIG_SH_X3PROTO)			+= mach-x3proto
> -machdir-$(CONFIG_SH_SH7763RDP)			+= mach-sh7763rdp
> -machdir-$(CONFIG_SH_SH4202_MICRODEV)		+= mach-microdev
>  machdir-$(CONFIG_SH_LANDISK)			+= mach-landisk
> -machdir-$(CONFIG_SH_LBOX_RE2)			+= mach-lboxre2
> -machdir-$(CONFIG_SH_RSK)			+= mach-rsk
> -
> -ifneq ($(machdir-y),)
> -core-y	+= $(addprefix arch/sh/boards/, \
> -	     $(filter-out ., $(patsubst %,%/,$(machdir-y))))
> -endif
> -
> -# Common machine type headers. Not part of the arch/sh/boards/ hierarchy.
> -machdir-y	+= mach-common
> +machdir-y					+= mach-common
>  
>  # Companion chips
>  core-$(CONFIG_HD6446X_SERIES)	+= arch/sh/cchips/hd6446x/
> diff --git a/arch/sh/boards/Makefile b/arch/sh/boards/Makefile
> index 4002a22a7c40..b57219436ace 100644
> --- a/arch/sh/boards/Makefile
> +++ b/arch/sh/boards/Makefile
> @@ -18,3 +18,22 @@ obj-$(CONFIG_SH_APSH4A3A)	+= board-apsh4a3a.o
>  obj-$(CONFIG_SH_APSH4AD0A)	+= board-apsh4ad0a.o
>  
>  obj-$(CONFIG_SH_DEVICE_TREE)	+= of-generic.o
> +
> +obj-$(CONFIG_SOLUTION_ENGINE)	+= mach-se/
> +obj-$(CONFIG_SH_HP6XX)		+= mach-hp6xx/
> +obj-$(CONFIG_SH_DREAMCAST)	+= mach-dreamcast/
> +obj-$(CONFIG_SH_SH03)		+= mach-sh03/
> +obj-$(CONFIG_SH_RTS7751R2D)	+= mach-r2d/
> +obj-$(CONFIG_SH_HIGHLANDER)	+= mach-highlander/
> +obj-$(CONFIG_SH_MIGOR)		+= mach-migor/
> +obj-$(CONFIG_SH_AP325RXA)	+= mach-ap325rxa/
> +obj-$(CONFIG_SH_KFR2R09)	+= mach-kfr2r09/
> +obj-$(CONFIG_SH_ECOVEC)		+= mach-ecovec24/
> +obj-$(CONFIG_SH_SDK7780)	+= mach-sdk7780/
> +obj-$(CONFIG_SH_SDK7786)	+= mach-sdk7786/
> +obj-$(CONFIG_SH_X3PROTO)	+= mach-x3proto/
> +obj-$(CONFIG_SH_SH7763RDP)	+= mach-sh7763rdp/
> +obj-$(CONFIG_SH_SH4202_MICRODEV)+= mach-microdev/
> +obj-$(CONFIG_SH_LANDISK)	+= mach-landisk/
> +obj-$(CONFIG_SH_LBOX_RE2)	+= mach-lboxre2/
> +obj-$(CONFIG_SH_RSK)		+= mach-rsk/
  
Masahiro Yamada June 25, 2023, 7:56 a.m. UTC | #4
On Sun, Feb 19, 2023 at 11:40 PM John Paul Adrian Glaubitz
<glaubitz@physik.fu-berlin.de> wrote:
>
> Hi Masahiro!
>
> On Sun, 2023-02-19 at 23:15 +0900, Masahiro Yamada wrote:
> > The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
> > like this:
> >
> >   cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]
> >
> > Indeed, arch/sh/include/mach-hp6xx does not exist.
> >
> > -Wmissing-include-dirs is W=1 warning, but it may be annoying
> > when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
> > unconditionally adds this warning option.
> >
> > arch/sh/Makefile defines machdir-y for two purposes:
> >
> >  - Build platform code in arch/sh/boards/mach-*/
> >  - Add arch/sh/include/mach-*/ to the header search path
> >
> > For the latter, some platforms use arch/sh/include/mach-common/ instead
> > of having its own arch/sh/include/mach-*/.
> >
> > Drop unneeded machdir-y to not include non-existing include directory.
> >
> > To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
> > arch/sh/boards/Makefile.
> >
> > Reported-by: kernel test robot <lkp@intel.com>
> > Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > ---
>
> Thanks for your patches! I'm still waiting for my kernel.org account to be created,
> so I can set up my own linux-sh tree. I hope that happens next week. There are already
> some patches piling up.


So, what has happened since then?






>
> Adrian
>
> --
>  .''`.  John Paul Adrian Glaubitz
> : :' :  Debian Developer
> `. `'   Physicist
>   `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
  
John Paul Adrian Glaubitz June 25, 2023, 8:11 a.m. UTC | #5
> On Jun 25, 2023, at 9:57 AM, Masahiro Yamada <masahiroy@kernel.org> wrote:
> 
> On Sun, Feb 19, 2023 at 11:40 PM John Paul Adrian Glaubitz
> <glaubitz@physik.fu-berlin.de> wrote:
>> 
>> Hi Masahiro!
>> 
>>> On Sun, 2023-02-19 at 23:15 +0900, Masahiro Yamada wrote:
>>> The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
>>> like this:
>>> 
>>>  cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]
>>> 
>>> Indeed, arch/sh/include/mach-hp6xx does not exist.
>>> 
>>> -Wmissing-include-dirs is W=1 warning, but it may be annoying
>>> when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
>>> unconditionally adds this warning option.
>>> 
>>> arch/sh/Makefile defines machdir-y for two purposes:
>>> 
>>> - Build platform code in arch/sh/boards/mach-*/
>>> - Add arch/sh/include/mach-*/ to the header search path
>>> 
>>> For the latter, some platforms use arch/sh/include/mach-common/ instead
>>> of having its own arch/sh/include/mach-*/.
>>> 
>>> Drop unneeded machdir-y to not include non-existing include directory.
>>> 
>>> To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
>>> arch/sh/boards/Makefile.
>>> 
>>> Reported-by: kernel test robot <lkp@intel.com>
>>> Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
>>> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
>>> ---
>> 
>> Thanks for your patches! I'm still waiting for my kernel.org account to be created,
>> so I can set up my own linux-sh tree. I hope that happens next week. There are already
>> some patches piling up.
> 
> 
> So, what has happened since then?

Sorry, these somehow went off my radar.

I’ll have a look later today.

Adrian
  
John Paul Adrian Glaubitz June 25, 2023, 9:07 p.m. UTC | #6
Hi Masahiro!

On Sun, 2023-06-25 at 16:56 +0900, Masahiro Yamada wrote:
> On Sun, Feb 19, 2023 at 11:40 PM John Paul Adrian Glaubitz
> <glaubitz@physik.fu-berlin.de> wrote:
> > 
> > Hi Masahiro!
> > 
> > On Sun, 2023-02-19 at 23:15 +0900, Masahiro Yamada wrote:
> > > The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
> > > like this:
> > > 
> > >   cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]
> > > 
> > > Indeed, arch/sh/include/mach-hp6xx does not exist.
> > > 
> > > -Wmissing-include-dirs is W=1 warning, but it may be annoying
> > > when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
> > > unconditionally adds this warning option.
> > > 
> > > arch/sh/Makefile defines machdir-y for two purposes:
> > > 
> > >  - Build platform code in arch/sh/boards/mach-*/
> > >  - Add arch/sh/include/mach-*/ to the header search path
> > > 
> > > For the latter, some platforms use arch/sh/include/mach-common/ instead
> > > of having its own arch/sh/include/mach-*/.
> > > 
> > > Drop unneeded machdir-y to not include non-existing include directory.
> > > 
> > > To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
> > > arch/sh/boards/Makefile.
> > > 
> > > Reported-by: kernel test robot <lkp@intel.com>
> > > Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
> > > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > > ---
> > 
> > Thanks for your patches! I'm still waiting for my kernel.org account to be created,
> > so I can set up my own linux-sh tree. I hope that happens next week. There are already
> > some patches piling up.
> 
> 
> So, what has happened since then?

I'll review and test these tomorrow when I'm back in the office.

Unless there are any issues, I am going to pick the series up for 6.5.

Adrian
  
John Paul Adrian Glaubitz July 4, 2023, 5:26 a.m. UTC | #7
Hi Masahiro!

On Sun, 2023-02-19 at 23:15 +0900, Masahiro Yamada wrote:
> The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
> like this:
> 
>   cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]
> 
> Indeed, arch/sh/include/mach-hp6xx does not exist.
> 
> -Wmissing-include-dirs is W=1 warning, but it may be annoying
> when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
> unconditionally adds this warning option.
> 
> arch/sh/Makefile defines machdir-y for two purposes:
> 
>  - Build platform code in arch/sh/boards/mach-*/
>  - Add arch/sh/include/mach-*/ to the header search path
> 
> For the latter, some platforms use arch/sh/include/mach-common/ instead
> of having its own arch/sh/include/mach-*/.
> 
> Drop unneeded machdir-y to not include non-existing include directory.
> 
> To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
> arch/sh/boards/Makefile.
> 
> Reported-by: kernel test robot <lkp@intel.com>
> Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
> 
>  arch/sh/Makefile        | 18 +-----------------
>  arch/sh/boards/Makefile | 19 +++++++++++++++++++
>  2 files changed, 20 insertions(+), 17 deletions(-)
> 
> diff --git a/arch/sh/Makefile b/arch/sh/Makefile
> index 5c8776482530..a9cad5137f92 100644
> --- a/arch/sh/Makefile
> +++ b/arch/sh/Makefile
> @@ -116,31 +116,15 @@ export ld-bfd
>  
>  # Mach groups
>  machdir-$(CONFIG_SOLUTION_ENGINE)		+= mach-se
> -machdir-$(CONFIG_SH_HP6XX)			+= mach-hp6xx
>  machdir-$(CONFIG_SH_DREAMCAST)			+= mach-dreamcast
>  machdir-$(CONFIG_SH_SH03)			+= mach-sh03
> -machdir-$(CONFIG_SH_RTS7751R2D)			+= mach-r2d
> -machdir-$(CONFIG_SH_HIGHLANDER)			+= mach-highlander
>  machdir-$(CONFIG_SH_MIGOR)			+= mach-migor
> -machdir-$(CONFIG_SH_AP325RXA)			+= mach-ap325rxa
>  machdir-$(CONFIG_SH_KFR2R09)			+= mach-kfr2r09
>  machdir-$(CONFIG_SH_ECOVEC)			+= mach-ecovec24
> -machdir-$(CONFIG_SH_SDK7780)			+= mach-sdk7780
>  machdir-$(CONFIG_SH_SDK7786)			+= mach-sdk7786
>  machdir-$(CONFIG_SH_X3PROTO)			+= mach-x3proto
> -machdir-$(CONFIG_SH_SH7763RDP)			+= mach-sh7763rdp
> -machdir-$(CONFIG_SH_SH4202_MICRODEV)		+= mach-microdev
>  machdir-$(CONFIG_SH_LANDISK)			+= mach-landisk
> -machdir-$(CONFIG_SH_LBOX_RE2)			+= mach-lboxre2
> -machdir-$(CONFIG_SH_RSK)			+= mach-rsk
> -
> -ifneq ($(machdir-y),)
> -core-y	+= $(addprefix arch/sh/boards/, \
> -	     $(filter-out ., $(patsubst %,%/,$(machdir-y))))
> -endif
> -
> -# Common machine type headers. Not part of the arch/sh/boards/ hierarchy.
> -machdir-y	+= mach-common
> +machdir-y					+= mach-common
>  
>  # Companion chips
>  core-$(CONFIG_HD6446X_SERIES)	+= arch/sh/cchips/hd6446x/
> diff --git a/arch/sh/boards/Makefile b/arch/sh/boards/Makefile
> index 4002a22a7c40..b57219436ace 100644
> --- a/arch/sh/boards/Makefile
> +++ b/arch/sh/boards/Makefile
> @@ -18,3 +18,22 @@ obj-$(CONFIG_SH_APSH4A3A)	+= board-apsh4a3a.o
>  obj-$(CONFIG_SH_APSH4AD0A)	+= board-apsh4ad0a.o
>  
>  obj-$(CONFIG_SH_DEVICE_TREE)	+= of-generic.o
> +
> +obj-$(CONFIG_SOLUTION_ENGINE)	+= mach-se/
> +obj-$(CONFIG_SH_HP6XX)		+= mach-hp6xx/
> +obj-$(CONFIG_SH_DREAMCAST)	+= mach-dreamcast/
> +obj-$(CONFIG_SH_SH03)		+= mach-sh03/
> +obj-$(CONFIG_SH_RTS7751R2D)	+= mach-r2d/
> +obj-$(CONFIG_SH_HIGHLANDER)	+= mach-highlander/
> +obj-$(CONFIG_SH_MIGOR)		+= mach-migor/
> +obj-$(CONFIG_SH_AP325RXA)	+= mach-ap325rxa/
> +obj-$(CONFIG_SH_KFR2R09)	+= mach-kfr2r09/
> +obj-$(CONFIG_SH_ECOVEC)		+= mach-ecovec24/
> +obj-$(CONFIG_SH_SDK7780)	+= mach-sdk7780/
> +obj-$(CONFIG_SH_SDK7786)	+= mach-sdk7786/
> +obj-$(CONFIG_SH_X3PROTO)	+= mach-x3proto/
> +obj-$(CONFIG_SH_SH7763RDP)	+= mach-sh7763rdp/
> +obj-$(CONFIG_SH_SH4202_MICRODEV)+= mach-microdev/
> +obj-$(CONFIG_SH_LANDISK)	+= mach-landisk/
> +obj-$(CONFIG_SH_LBOX_RE2)	+= mach-lboxre2/
> +obj-$(CONFIG_SH_RSK)		+= mach-rsk/

Can you fix the tabs so that the mach directories are all aligned?

Other than that:

Reviewed-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>

Adrian
  
John Paul Adrian Glaubitz July 5, 2023, 5:08 p.m. UTC | #8
On Sun, 2023-02-19 at 23:15 +0900, Masahiro Yamada wrote:
> The 0day bot reports a lot of warnings (or errors due to CONFIG_WERROR)
> like this:
> 
>   cc1: error: arch/sh/include/mach-hp6xx: No such file or directory [-Werror=missing-include-dirs]
> 
> Indeed, arch/sh/include/mach-hp6xx does not exist.
> 
> -Wmissing-include-dirs is W=1 warning, but it may be annoying
> when CONFIG_BTRFS_FS is enabled because fs/btrfs/Makefile
> unconditionally adds this warning option.
> 
> arch/sh/Makefile defines machdir-y for two purposes:
> 
>  - Build platform code in arch/sh/boards/mach-*/
>  - Add arch/sh/include/mach-*/ to the header search path
> 
> For the latter, some platforms use arch/sh/include/mach-common/ instead
> of having its own arch/sh/include/mach-*/.
> 
> Drop unneeded machdir-y to not include non-existing include directory.
> 
> To build arch/sh/boards/mach-*/, use the standard obj-y syntax in
> arch/sh/boards/Makefile.
> 
> Reported-by: kernel test robot <lkp@intel.com>
> Link: https://lore.kernel.org/oe-kbuild-all/202302190641.30VVXnPb-lkp@intel.com/
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
> 
>  arch/sh/Makefile        | 18 +-----------------
>  arch/sh/boards/Makefile | 19 +++++++++++++++++++
>  2 files changed, 20 insertions(+), 17 deletions(-)
> 
> diff --git a/arch/sh/Makefile b/arch/sh/Makefile
> index 5c8776482530..a9cad5137f92 100644
> --- a/arch/sh/Makefile
> +++ b/arch/sh/Makefile
> @@ -116,31 +116,15 @@ export ld-bfd
>  
>  # Mach groups
>  machdir-$(CONFIG_SOLUTION_ENGINE)		+= mach-se
> -machdir-$(CONFIG_SH_HP6XX)			+= mach-hp6xx
>  machdir-$(CONFIG_SH_DREAMCAST)			+= mach-dreamcast
>  machdir-$(CONFIG_SH_SH03)			+= mach-sh03
> -machdir-$(CONFIG_SH_RTS7751R2D)			+= mach-r2d
> -machdir-$(CONFIG_SH_HIGHLANDER)			+= mach-highlander
>  machdir-$(CONFIG_SH_MIGOR)			+= mach-migor
> -machdir-$(CONFIG_SH_AP325RXA)			+= mach-ap325rxa
>  machdir-$(CONFIG_SH_KFR2R09)			+= mach-kfr2r09
>  machdir-$(CONFIG_SH_ECOVEC)			+= mach-ecovec24
> -machdir-$(CONFIG_SH_SDK7780)			+= mach-sdk7780
>  machdir-$(CONFIG_SH_SDK7786)			+= mach-sdk7786
>  machdir-$(CONFIG_SH_X3PROTO)			+= mach-x3proto
> -machdir-$(CONFIG_SH_SH7763RDP)			+= mach-sh7763rdp
> -machdir-$(CONFIG_SH_SH4202_MICRODEV)		+= mach-microdev
>  machdir-$(CONFIG_SH_LANDISK)			+= mach-landisk
> -machdir-$(CONFIG_SH_LBOX_RE2)			+= mach-lboxre2
> -machdir-$(CONFIG_SH_RSK)			+= mach-rsk
> -
> -ifneq ($(machdir-y),)
> -core-y	+= $(addprefix arch/sh/boards/, \
> -	     $(filter-out ., $(patsubst %,%/,$(machdir-y))))
> -endif
> -
> -# Common machine type headers. Not part of the arch/sh/boards/ hierarchy.
> -machdir-y	+= mach-common
> +machdir-y					+= mach-common
>  
>  # Companion chips
>  core-$(CONFIG_HD6446X_SERIES)	+= arch/sh/cchips/hd6446x/
> diff --git a/arch/sh/boards/Makefile b/arch/sh/boards/Makefile
> index 4002a22a7c40..b57219436ace 100644
> --- a/arch/sh/boards/Makefile
> +++ b/arch/sh/boards/Makefile
> @@ -18,3 +18,22 @@ obj-$(CONFIG_SH_APSH4A3A)	+= board-apsh4a3a.o
>  obj-$(CONFIG_SH_APSH4AD0A)	+= board-apsh4ad0a.o
>  
>  obj-$(CONFIG_SH_DEVICE_TREE)	+= of-generic.o
> +
> +obj-$(CONFIG_SOLUTION_ENGINE)	+= mach-se/
> +obj-$(CONFIG_SH_HP6XX)		+= mach-hp6xx/
> +obj-$(CONFIG_SH_DREAMCAST)	+= mach-dreamcast/
> +obj-$(CONFIG_SH_SH03)		+= mach-sh03/
> +obj-$(CONFIG_SH_RTS7751R2D)	+= mach-r2d/
> +obj-$(CONFIG_SH_HIGHLANDER)	+= mach-highlander/
> +obj-$(CONFIG_SH_MIGOR)		+= mach-migor/
> +obj-$(CONFIG_SH_AP325RXA)	+= mach-ap325rxa/
> +obj-$(CONFIG_SH_KFR2R09)	+= mach-kfr2r09/
> +obj-$(CONFIG_SH_ECOVEC)		+= mach-ecovec24/
> +obj-$(CONFIG_SH_SDK7780)	+= mach-sdk7780/
> +obj-$(CONFIG_SH_SDK7786)	+= mach-sdk7786/
> +obj-$(CONFIG_SH_X3PROTO)	+= mach-x3proto/
> +obj-$(CONFIG_SH_SH7763RDP)	+= mach-sh7763rdp/
> +obj-$(CONFIG_SH_SH4202_MICRODEV)+= mach-microdev/
> +obj-$(CONFIG_SH_LANDISK)	+= mach-landisk/
> +obj-$(CONFIG_SH_LBOX_RE2)	+= mach-lboxre2/
> +obj-$(CONFIG_SH_RSK)		+= mach-rsk/

Applied to my for-next tree for 6.5. PR will be sent tomorrow.

Thanks,
Adrian
  

Patch

diff --git a/arch/sh/Makefile b/arch/sh/Makefile
index 5c8776482530..a9cad5137f92 100644
--- a/arch/sh/Makefile
+++ b/arch/sh/Makefile
@@ -116,31 +116,15 @@  export ld-bfd
 
 # Mach groups
 machdir-$(CONFIG_SOLUTION_ENGINE)		+= mach-se
-machdir-$(CONFIG_SH_HP6XX)			+= mach-hp6xx
 machdir-$(CONFIG_SH_DREAMCAST)			+= mach-dreamcast
 machdir-$(CONFIG_SH_SH03)			+= mach-sh03
-machdir-$(CONFIG_SH_RTS7751R2D)			+= mach-r2d
-machdir-$(CONFIG_SH_HIGHLANDER)			+= mach-highlander
 machdir-$(CONFIG_SH_MIGOR)			+= mach-migor
-machdir-$(CONFIG_SH_AP325RXA)			+= mach-ap325rxa
 machdir-$(CONFIG_SH_KFR2R09)			+= mach-kfr2r09
 machdir-$(CONFIG_SH_ECOVEC)			+= mach-ecovec24
-machdir-$(CONFIG_SH_SDK7780)			+= mach-sdk7780
 machdir-$(CONFIG_SH_SDK7786)			+= mach-sdk7786
 machdir-$(CONFIG_SH_X3PROTO)			+= mach-x3proto
-machdir-$(CONFIG_SH_SH7763RDP)			+= mach-sh7763rdp
-machdir-$(CONFIG_SH_SH4202_MICRODEV)		+= mach-microdev
 machdir-$(CONFIG_SH_LANDISK)			+= mach-landisk
-machdir-$(CONFIG_SH_LBOX_RE2)			+= mach-lboxre2
-machdir-$(CONFIG_SH_RSK)			+= mach-rsk
-
-ifneq ($(machdir-y),)
-core-y	+= $(addprefix arch/sh/boards/, \
-	     $(filter-out ., $(patsubst %,%/,$(machdir-y))))
-endif
-
-# Common machine type headers. Not part of the arch/sh/boards/ hierarchy.
-machdir-y	+= mach-common
+machdir-y					+= mach-common
 
 # Companion chips
 core-$(CONFIG_HD6446X_SERIES)	+= arch/sh/cchips/hd6446x/
diff --git a/arch/sh/boards/Makefile b/arch/sh/boards/Makefile
index 4002a22a7c40..b57219436ace 100644
--- a/arch/sh/boards/Makefile
+++ b/arch/sh/boards/Makefile
@@ -18,3 +18,22 @@  obj-$(CONFIG_SH_APSH4A3A)	+= board-apsh4a3a.o
 obj-$(CONFIG_SH_APSH4AD0A)	+= board-apsh4ad0a.o
 
 obj-$(CONFIG_SH_DEVICE_TREE)	+= of-generic.o
+
+obj-$(CONFIG_SOLUTION_ENGINE)	+= mach-se/
+obj-$(CONFIG_SH_HP6XX)		+= mach-hp6xx/
+obj-$(CONFIG_SH_DREAMCAST)	+= mach-dreamcast/
+obj-$(CONFIG_SH_SH03)		+= mach-sh03/
+obj-$(CONFIG_SH_RTS7751R2D)	+= mach-r2d/
+obj-$(CONFIG_SH_HIGHLANDER)	+= mach-highlander/
+obj-$(CONFIG_SH_MIGOR)		+= mach-migor/
+obj-$(CONFIG_SH_AP325RXA)	+= mach-ap325rxa/
+obj-$(CONFIG_SH_KFR2R09)	+= mach-kfr2r09/
+obj-$(CONFIG_SH_ECOVEC)		+= mach-ecovec24/
+obj-$(CONFIG_SH_SDK7780)	+= mach-sdk7780/
+obj-$(CONFIG_SH_SDK7786)	+= mach-sdk7786/
+obj-$(CONFIG_SH_X3PROTO)	+= mach-x3proto/
+obj-$(CONFIG_SH_SH7763RDP)	+= mach-sh7763rdp/
+obj-$(CONFIG_SH_SH4202_MICRODEV)+= mach-microdev/
+obj-$(CONFIG_SH_LANDISK)	+= mach-landisk/
+obj-$(CONFIG_SH_LBOX_RE2)	+= mach-lboxre2/
+obj-$(CONFIG_SH_RSK)		+= mach-rsk/