[v2] kheaders: ignore and clean temporary kheaders_data directory

Message ID 20230117-kernel-kheaders-gitignore-v2-1-1c29b3adf04a@weissschuh.net
State New
Headers
Series [v2] kheaders: ignore and clean temporary kheaders_data directory |

Commit Message

Thomas Weißschuh Jan. 17, 2023, 1:50 p.m. UTC
  If the kheaders archive generation is interrupted then this directory
may be left.
Ignore it, it will be deleted by the next run of kernel/gen_kheaders.sh.
Also add it to clean-files so it can be cleaned up by make.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
---
Changes in v2:
- Also add the directory to clean-files
- Link to v1: https://lore.kernel.org/r/20230117-kernel-kheaders-gitignore-v1-1-2a3a070efd0d@weissschuh.net
---
 kernel/.gitignore | 1 +
 kernel/Makefile   | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)


---
base-commit: d532dd102151cc69fcd00b13e5a9689b23c0c8d9
change-id: 20230117-kernel-kheaders-gitignore-f0d73456cb6b

Best regards,
  

Comments

Masahiro Yamada Jan. 17, 2023, 2:24 p.m. UTC | #1
On Tue, Jan 17, 2023 at 10:50 PM Thomas Weißschuh <linux@weissschuh.net> wrote:
>
> If the kheaders archive generation is interrupted then this directory
> may be left.
> Ignore it, it will be deleted by the next run of kernel/gen_kheaders.sh.
> Also add it to clean-files so it can be cleaned up by make.
>
> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>


Or, just rename the temporary directory.
For example,

  cpio_dir=$outdir/$(dirname $tarfile)/.tmp_cpio_dir



Dot files are ignored.
'make clean' removes the .tmp_* pattern.




> ---
> Changes in v2:
> - Also add the directory to clean-files
> - Link to v1: https://lore.kernel.org/r/20230117-kernel-kheaders-gitignore-v1-1-2a3a070efd0d@weissschuh.net
> ---
>  kernel/.gitignore | 1 +
>  kernel/Makefile   | 2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/.gitignore b/kernel/.gitignore
> index c6b299a6b786..57ab1d703763 100644
> --- a/kernel/.gitignore
> +++ b/kernel/.gitignore
> @@ -1,3 +1,4 @@
>  # SPDX-License-Identifier: GPL-2.0-only
>  /config_data
>  /kheaders.md5
> +/kheaders_data.tar.xz.tmp/
> diff --git a/kernel/Makefile b/kernel/Makefile
> index 10ef068f598d..f3535944f635 100644
> --- a/kernel/Makefile
> +++ b/kernel/Makefile
> @@ -156,4 +156,4 @@ quiet_cmd_genikh = CHK     $(obj)/kheaders_data.tar.xz
>  $(obj)/kheaders_data.tar.xz: FORCE
>         $(call cmd,genikh)
>
> -clean-files := kheaders_data.tar.xz kheaders.md5
> +clean-files := kheaders_data.tar.xz kheaders.md5 kheaders_data.tar.xz.tmp
>
> ---
> base-commit: d532dd102151cc69fcd00b13e5a9689b23c0c8d9
> change-id: 20230117-kernel-kheaders-gitignore-f0d73456cb6b
>
> Best regards,
> --
> Thomas Weißschuh <linux@weissschuh.net>
>


--
Best Regards


Masahiro Yamada
  
Nicolas Schier Jan. 17, 2023, 9:03 p.m. UTC | #2
On Tue, Jan 17, 2023 at 11:24:47PM +0900 Masahiro Yamada wrote:
> On Tue, Jan 17, 2023 at 10:50 PM Thomas Weißschuh <linux@weissschuh.net> wrote:
> >
> > If the kheaders archive generation is interrupted then this directory
> > may be left.
> > Ignore it, it will be deleted by the next run of kernel/gen_kheaders.sh.
> > Also add it to clean-files so it can be cleaned up by make.
> >
> > Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
> 
> 
> Or, just rename the temporary directory.
> For example,
> 
>   cpio_dir=$outdir/$(dirname $tarfile)/.tmp_cpio_dir
> 
> 
> 
> Dot files are ignored.
> 'make clean' removes the .tmp_* pattern.

yes, almost unbeatable.  Can we use '${tarfile%/*}' instead of '$(dirname
$tarfile)'?

Kind regards,
Nicolas



> > ---
> > Changes in v2:
> > - Also add the directory to clean-files
> > - Link to v1: https://lore.kernel.org/r/20230117-kernel-kheaders-gitignore-v1-1-2a3a070efd0d@weissschuh.net
> > ---
> >  kernel/.gitignore | 1 +
> >  kernel/Makefile   | 2 +-
> >  2 files changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/kernel/.gitignore b/kernel/.gitignore
> > index c6b299a6b786..57ab1d703763 100644
> > --- a/kernel/.gitignore
> > +++ b/kernel/.gitignore
> > @@ -1,3 +1,4 @@
> >  # SPDX-License-Identifier: GPL-2.0-only
> >  /config_data
> >  /kheaders.md5
> > +/kheaders_data.tar.xz.tmp/
> > diff --git a/kernel/Makefile b/kernel/Makefile
> > index 10ef068f598d..f3535944f635 100644
> > --- a/kernel/Makefile
> > +++ b/kernel/Makefile
> > @@ -156,4 +156,4 @@ quiet_cmd_genikh = CHK     $(obj)/kheaders_data.tar.xz
> >  $(obj)/kheaders_data.tar.xz: FORCE
> >         $(call cmd,genikh)
> >
> > -clean-files := kheaders_data.tar.xz kheaders.md5
> > +clean-files := kheaders_data.tar.xz kheaders.md5 kheaders_data.tar.xz.tmp
> >
> > ---
> > base-commit: d532dd102151cc69fcd00b13e5a9689b23c0c8d9
> > change-id: 20230117-kernel-kheaders-gitignore-f0d73456cb6b
> >
> > Best regards,
> > --
> > Thomas Weißschuh <linux@weissschuh.net>
> >
> 
> 
> --
> Best Regards
> 
> 
> Masahiro Yamada
  
Thomas Weißschuh Jan. 18, 2023, 12:58 a.m. UTC | #3
On Tue, Jan 17, 2023 at 11:24:47PM +0900, Masahiro Yamada wrote:
> On Tue, Jan 17, 2023 at 10:50 PM Thomas Weißschuh <linux@weissschuh.net> wrote:
> >
> > If the kheaders archive generation is interrupted then this directory
> > may be left.
> > Ignore it, it will be deleted by the next run of kernel/gen_kheaders.sh.
> > Also add it to clean-files so it can be cleaned up by make.
> >
> > Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
> 
> 
> Or, just rename the temporary directory.
> For example,
> 
>   cpio_dir=$outdir/$(dirname $tarfile)/.tmp_cpio_dir
> 
> 
> 
> Dot files are ignored.
> 'make clean' removes the .tmp_* pattern.

This sounds great.

Unfortunately 'make clean' only cleans files and not directories based
on this pattern.

Should it be extended?

> > ---
> > Changes in v2:
> > - Also add the directory to clean-files
> > - Link to v1: https://lore.kernel.org/r/20230117-kernel-kheaders-gitignore-v1-1-2a3a070efd0d@weissschuh.net
> > ---
> >  kernel/.gitignore | 1 +
> >  kernel/Makefile   | 2 +-
> >  2 files changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/kernel/.gitignore b/kernel/.gitignore
> > index c6b299a6b786..57ab1d703763 100644
> > --- a/kernel/.gitignore
> > +++ b/kernel/.gitignore
> > @@ -1,3 +1,4 @@
> >  # SPDX-License-Identifier: GPL-2.0-only
> >  /config_data
> >  /kheaders.md5
> > +/kheaders_data.tar.xz.tmp/
> > diff --git a/kernel/Makefile b/kernel/Makefile
> > index 10ef068f598d..f3535944f635 100644
> > --- a/kernel/Makefile
> > +++ b/kernel/Makefile
> > @@ -156,4 +156,4 @@ quiet_cmd_genikh = CHK     $(obj)/kheaders_data.tar.xz
> >  $(obj)/kheaders_data.tar.xz: FORCE
> >         $(call cmd,genikh)
> >
> > -clean-files := kheaders_data.tar.xz kheaders.md5
> > +clean-files := kheaders_data.tar.xz kheaders.md5 kheaders_data.tar.xz.tmp
> >
> > ---
> > base-commit: d532dd102151cc69fcd00b13e5a9689b23c0c8d9
> > change-id: 20230117-kernel-kheaders-gitignore-f0d73456cb6b
> >
> > Best regards,
> > --
> > Thomas Weißschuh <linux@weissschuh.net>
  
Masahiro Yamada Jan. 18, 2023, 5:02 a.m. UTC | #4
On Wed, Jan 18, 2023 at 10:10 AM Thomas Weißschuh <linux@weissschuh.net> wrote:
>
> On Tue, Jan 17, 2023 at 11:24:47PM +0900, Masahiro Yamada wrote:
> > On Tue, Jan 17, 2023 at 10:50 PM Thomas Weißschuh <linux@weissschuh.net> wrote:
> > >
> > > If the kheaders archive generation is interrupted then this directory
> > > may be left.
> > > Ignore it, it will be deleted by the next run of kernel/gen_kheaders.sh.
> > > Also add it to clean-files so it can be cleaned up by make.
> > >
> > > Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
> >
> >
> > Or, just rename the temporary directory.
> > For example,
> >
> >   cpio_dir=$outdir/$(dirname $tarfile)/.tmp_cpio_dir
> >
> >
> >
> > Dot files are ignored.
> > 'make clean' removes the .tmp_* pattern.
>
> This sounds great.
>
> Unfortunately 'make clean' only cleans files and not directories based
> on this pattern.


Agh, you are right.

Can you extend .tmp_* to match any file type?

Maybe, something like this?


 \( -name '*.[aios]' -o [snip] '*.*.symversions' \) -type f -print
-o -name '.tmp_*' -print





>
> Should it be extended?
>
> > > ---
> > > Changes in v2:
> > > - Also add the directory to clean-files
> > > - Link to v1: https://lore.kernel.org/r/20230117-kernel-kheaders-gitignore-v1-1-2a3a070efd0d@weissschuh.net
> > > ---
> > >  kernel/.gitignore | 1 +
> > >  kernel/Makefile   | 2 +-
> > >  2 files changed, 2 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/kernel/.gitignore b/kernel/.gitignore
> > > index c6b299a6b786..57ab1d703763 100644
> > > --- a/kernel/.gitignore
> > > +++ b/kernel/.gitignore
> > > @@ -1,3 +1,4 @@
> > >  # SPDX-License-Identifier: GPL-2.0-only
> > >  /config_data
> > >  /kheaders.md5
> > > +/kheaders_data.tar.xz.tmp/
> > > diff --git a/kernel/Makefile b/kernel/Makefile
> > > index 10ef068f598d..f3535944f635 100644
> > > --- a/kernel/Makefile
> > > +++ b/kernel/Makefile
> > > @@ -156,4 +156,4 @@ quiet_cmd_genikh = CHK     $(obj)/kheaders_data.tar.xz
> > >  $(obj)/kheaders_data.tar.xz: FORCE
> > >         $(call cmd,genikh)
> > >
> > > -clean-files := kheaders_data.tar.xz kheaders.md5
> > > +clean-files := kheaders_data.tar.xz kheaders.md5 kheaders_data.tar.xz.tmp
> > >
> > > ---
> > > base-commit: d532dd102151cc69fcd00b13e5a9689b23c0c8d9
> > > change-id: 20230117-kernel-kheaders-gitignore-f0d73456cb6b
> > >
> > > Best regards,
> > > --
> > > Thomas Weißschuh <linux@weissschuh.net>
  

Patch

diff --git a/kernel/.gitignore b/kernel/.gitignore
index c6b299a6b786..57ab1d703763 100644
--- a/kernel/.gitignore
+++ b/kernel/.gitignore
@@ -1,3 +1,4 @@ 
 # SPDX-License-Identifier: GPL-2.0-only
 /config_data
 /kheaders.md5
+/kheaders_data.tar.xz.tmp/
diff --git a/kernel/Makefile b/kernel/Makefile
index 10ef068f598d..f3535944f635 100644
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -156,4 +156,4 @@  quiet_cmd_genikh = CHK     $(obj)/kheaders_data.tar.xz
 $(obj)/kheaders_data.tar.xz: FORCE
 	$(call cmd,genikh)
 
-clean-files := kheaders_data.tar.xz kheaders.md5
+clean-files := kheaders_data.tar.xz kheaders.md5 kheaders_data.tar.xz.tmp