2019-08-21 03:57:02

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH 0/4] video/logo: various fix and cleanups of drivers/video/logo/Makefile




Masahiro Yamada (4):
video/logo: remove unneeded *.o pattern from clean-files
video/logo: fix unneeded generation of font C files
video/logo: simplify cmd_logo
video/logo: move pnmtologo tool to drivers/video/logo/ from scripts/

drivers/video/logo/.gitignore | 1 +
drivers/video/logo/Makefile | 36 ++++-----------------
{scripts => drivers/video/logo}/pnmtologo.c | 0
scripts/.gitignore | 1 -
scripts/Makefile | 2 --
5 files changed, 8 insertions(+), 32 deletions(-)
rename {scripts => drivers/video/logo}/pnmtologo.c (100%)

--
2.17.1


2019-08-21 03:57:11

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH 4/4] video/logo: move pnmtologo tool to drivers/video/logo/ from scripts/

This tool is only used by drivers/video/logo/Makefile. No reason to
keep it in scripts/.

Signed-off-by: Masahiro Yamada <[email protected]>
---

drivers/video/logo/.gitignore | 1 +
drivers/video/logo/Makefile | 10 +++++-----
{scripts => drivers/video/logo}/pnmtologo.c | 0
scripts/.gitignore | 1 -
scripts/Makefile | 2 --
5 files changed, 6 insertions(+), 8 deletions(-)
rename {scripts => drivers/video/logo}/pnmtologo.c (100%)

diff --git a/drivers/video/logo/.gitignore b/drivers/video/logo/.gitignore
index e48355f538fa..9dda1b26b2e4 100644
--- a/drivers/video/logo/.gitignore
+++ b/drivers/video/logo/.gitignore
@@ -5,3 +5,4 @@
*_vga16.c
*_clut224.c
*_gray256.c
+pnmtologo
diff --git a/drivers/video/logo/Makefile b/drivers/video/logo/Makefile
index 7d672d40bf01..bcda657493a4 100644
--- a/drivers/video/logo/Makefile
+++ b/drivers/video/logo/Makefile
@@ -18,19 +18,19 @@ obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o

# How to generate logo's

-pnmtologo := scripts/pnmtologo
+hostprogs-y := pnmtologo

# Create commands like "pnmtologo -t mono -n logo_mac_mono -o ..."
quiet_cmd_logo = LOGO $@
- cmd_logo = $(pnmtologo) -t $(lastword $(subst _, ,$*)) -n $* -o $@ $<
+ cmd_logo = $(obj)/pnmtologo -t $(lastword $(subst _, ,$*)) -n $* -o $@ $<

-$(obj)/%.c: $(src)/%.pbm $(pnmtologo) FORCE
+$(obj)/%.c: $(src)/%.pbm $(obj)/pnmtologo FORCE
$(call if_changed,logo)

-$(obj)/%.c: $(src)/%.ppm $(pnmtologo) FORCE
+$(obj)/%.c: $(src)/%.ppm $(obj)/pnmtologo FORCE
$(call if_changed,logo)

-$(obj)/%.c: $(src)/%.pgm $(pnmtologo) FORCE
+$(obj)/%.c: $(src)/%.pgm $(obj)/pnmtologo FORCE
$(call if_changed,logo)

# generated C files
diff --git a/scripts/pnmtologo.c b/drivers/video/logo/pnmtologo.c
similarity index 100%
rename from scripts/pnmtologo.c
rename to drivers/video/logo/pnmtologo.c
diff --git a/scripts/.gitignore b/scripts/.gitignore
index 17f8cef88fa8..4aa1806c59c2 100644
--- a/scripts/.gitignore
+++ b/scripts/.gitignore
@@ -4,7 +4,6 @@
bin2c
conmakehash
kallsyms
-pnmtologo
unifdef
recordmcount
sortextable
diff --git a/scripts/Makefile b/scripts/Makefile
index 16bcb8087899..709df809f892 100644
--- a/scripts/Makefile
+++ b/scripts/Makefile
@@ -4,7 +4,6 @@
# the kernel for the build process.
# ---------------------------------------------------------------------------
# kallsyms: Find all symbols in vmlinux
-# pnmttologo: Convert pnm files to logo files
# conmakehash: Create chartable
# conmakehash: Create arrays for initializing the kernel console tables

@@ -12,7 +11,6 @@ HOST_EXTRACFLAGS += -I$(srctree)/tools/include

hostprogs-$(CONFIG_BUILD_BIN2C) += bin2c
hostprogs-$(CONFIG_KALLSYMS) += kallsyms
-hostprogs-$(CONFIG_LOGO) += pnmtologo
hostprogs-$(CONFIG_VT) += conmakehash
hostprogs-$(BUILD_C_RECORDMCOUNT) += recordmcount
hostprogs-$(CONFIG_BUILDTIME_EXTABLE_SORT) += sortextable
--
2.17.1

2019-08-21 03:57:21

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH 3/4] video/logo: simplify cmd_logo

Shorten the code. It still works in the same way.

Signed-off-by: Masahiro Yamada <[email protected]>
---

drivers/video/logo/Makefile | 13 ++++---------
1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/drivers/video/logo/Makefile b/drivers/video/logo/Makefile
index 16f60c1e1766..7d672d40bf01 100644
--- a/drivers/video/logo/Makefile
+++ b/drivers/video/logo/Makefile
@@ -22,20 +22,15 @@ pnmtologo := scripts/pnmtologo

# Create commands like "pnmtologo -t mono -n logo_mac_mono -o ..."
quiet_cmd_logo = LOGO $@
- cmd_logo = $(pnmtologo) \
- -t $(patsubst $*_%,%,$(notdir $(basename $<))) \
- -n $(notdir $(basename $<)) -o $@ $<
+ cmd_logo = $(pnmtologo) -t $(lastword $(subst _, ,$*)) -n $* -o $@ $<

-$(obj)/%_mono.c: $(src)/%_mono.pbm $(pnmtologo) FORCE
+$(obj)/%.c: $(src)/%.pbm $(pnmtologo) FORCE
$(call if_changed,logo)

-$(obj)/%_vga16.c: $(src)/%_vga16.ppm $(pnmtologo) FORCE
+$(obj)/%.c: $(src)/%.ppm $(pnmtologo) FORCE
$(call if_changed,logo)

-$(obj)/%_clut224.c: $(src)/%_clut224.ppm $(pnmtologo) FORCE
- $(call if_changed,logo)
-
-$(obj)/%_gray256.c: $(src)/%_gray256.pgm $(pnmtologo) FORCE
+$(obj)/%.c: $(src)/%.pgm $(pnmtologo) FORCE
$(call if_changed,logo)

# generated C files
--
2.17.1

2019-08-21 03:58:07

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH 2/4] video/logo: fix unneeded generation of font C files

Currently, all the font C files are generated irrespective of CONFIG
options. Adding them to extra-y is wrong. What we need to do here is
to add them to 'targets' so that if_changed works properly.

All files listed in 'targets' are cleaned, so clean-files is unneeded.

Signed-off-by: Masahiro Yamada <[email protected]>
---

drivers/video/logo/Makefile | 21 ++-------------------
1 file changed, 2 insertions(+), 19 deletions(-)

diff --git a/drivers/video/logo/Makefile b/drivers/video/logo/Makefile
index 10b75ce3ce09..16f60c1e1766 100644
--- a/drivers/video/logo/Makefile
+++ b/drivers/video/logo/Makefile
@@ -18,23 +18,6 @@ obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o

# How to generate logo's

-# Use logo-cfiles to retrieve list of .c files to be built
-logo-cfiles = $(notdir $(patsubst %.$(2), %.c, \
- $(wildcard $(srctree)/$(src)/*$(1).$(2))))
-
-
-# Mono logos
-extra-y += $(call logo-cfiles,_mono,pbm)
-
-# VGA16 logos
-extra-y += $(call logo-cfiles,_vga16,ppm)
-
-# 224 Logos
-extra-y += $(call logo-cfiles,_clut224,ppm)
-
-# Gray 256
-extra-y += $(call logo-cfiles,_gray256,pgm)
-
pnmtologo := scripts/pnmtologo

# Create commands like "pnmtologo -t mono -n logo_mac_mono -o ..."
@@ -55,5 +38,5 @@ $(obj)/%_clut224.c: $(src)/%_clut224.ppm $(pnmtologo) FORCE
$(obj)/%_gray256.c: $(src)/%_gray256.pgm $(pnmtologo) FORCE
$(call if_changed,logo)

-# Files generated that shall be removed upon make clean
-clean-files := *_mono.c *_vga16.c *_clut224.c *_gray256.c
+# generated C files
+targets += *_mono.c *_vga16.c *_clut224.c *_gray256.c
--
2.17.1

2019-08-21 03:58:22

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH 1/4] video/logo: remove unneeded *.o pattern from clean-files

The pattern *.o is cleaned up globally by the top Makefile.

Signed-off-by: Masahiro Yamada <[email protected]>
---

drivers/video/logo/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/video/logo/Makefile b/drivers/video/logo/Makefile
index 228a89b9bdd1..10b75ce3ce09 100644
--- a/drivers/video/logo/Makefile
+++ b/drivers/video/logo/Makefile
@@ -56,4 +56,4 @@ $(obj)/%_gray256.c: $(src)/%_gray256.pgm $(pnmtologo) FORCE
$(call if_changed,logo)

# Files generated that shall be removed upon make clean
-clean-files := *.o *_mono.c *_vga16.c *_clut224.c *_gray256.c
+clean-files := *_mono.c *_vga16.c *_clut224.c *_gray256.c
--
2.17.1

2019-08-21 04:09:25

by Masahiro Yamada

[permalink] [raw]
Subject: Re: [PATCH 2/4] video/logo: fix unneeded generation of font C files

On Wed, Aug 21, 2019 at 12:56 PM Masahiro Yamada
<[email protected]> wrote:

I will replace 'font' -> 'logo'.
(My brain was corrupted.)



> Currently, all the font C files are generated irrespective of CONFIG
> options. Adding them to extra-y is wrong. What we need to do here is
> to add them to 'targets' so that if_changed works properly.
>
> All files listed in 'targets' are cleaned, so clean-files is unneeded.
>
> Signed-off-by: Masahiro Yamada <[email protected]>
> ---
>
> drivers/video/logo/Makefile | 21 ++-------------------
> 1 file changed, 2 insertions(+), 19 deletions(-)
>
> diff --git a/drivers/video/logo/Makefile b/drivers/video/logo/Makefile
> index 10b75ce3ce09..16f60c1e1766 100644
> --- a/drivers/video/logo/Makefile
> +++ b/drivers/video/logo/Makefile
> @@ -18,23 +18,6 @@ obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o
>
> # How to generate logo's
>
> -# Use logo-cfiles to retrieve list of .c files to be built
> -logo-cfiles = $(notdir $(patsubst %.$(2), %.c, \
> - $(wildcard $(srctree)/$(src)/*$(1).$(2))))
> -
> -
> -# Mono logos
> -extra-y += $(call logo-cfiles,_mono,pbm)
> -
> -# VGA16 logos
> -extra-y += $(call logo-cfiles,_vga16,ppm)
> -
> -# 224 Logos
> -extra-y += $(call logo-cfiles,_clut224,ppm)
> -
> -# Gray 256
> -extra-y += $(call logo-cfiles,_gray256,pgm)
> -
> pnmtologo := scripts/pnmtologo
>
> # Create commands like "pnmtologo -t mono -n logo_mac_mono -o ..."
> @@ -55,5 +38,5 @@ $(obj)/%_clut224.c: $(src)/%_clut224.ppm $(pnmtologo) FORCE
> $(obj)/%_gray256.c: $(src)/%_gray256.pgm $(pnmtologo) FORCE
> $(call if_changed,logo)
>
> -# Files generated that shall be removed upon make clean
> -clean-files := *_mono.c *_vga16.c *_clut224.c *_gray256.c
> +# generated C files
> +targets += *_mono.c *_vga16.c *_clut224.c *_gray256.c
> --
> 2.17.1
>


--
Best Regards
Masahiro Yamada