diff options
author | Tom Rini <trini@konsulko.com> | 2016-03-15 12:49:12 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2016-03-22 12:16:13 -0400 |
commit | 8a7367accaaf88f90773a37fc9257d184bf448d2 (patch) | |
tree | 7db05bb79d66c25f37bbec4a124f34ac591b5393 | |
parent | cd0fa5bff8052b19bde6967c2734f323c9848568 (diff) | |
download | u-boot-imx-8a7367accaaf88f90773a37fc9257d184bf448d2.zip u-boot-imx-8a7367accaaf88f90773a37fc9257d184bf448d2.tar.gz u-boot-imx-8a7367accaaf88f90773a37fc9257d184bf448d2.tar.bz2 |
cmd: Fix license command
The license command isn't usually built and has a few problems:
- The rules to generate license.h haven't worked in a long time,
re-write these based on the bmp_logo.h rules.
- 'tok' is unused and the license text size has increased
- bin2header.c wasn't grabbing unistd.h to know the prototype for
read().
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | cmd/license.c | 6 | ||||
-rw-r--r-- | include/.gitignore | 1 | ||||
-rw-r--r-- | tools/Makefile | 11 | ||||
-rw-r--r-- | tools/bin2header.c | 1 |
5 files changed, 15 insertions, 8 deletions
@@ -1405,8 +1405,6 @@ CHANGELOG: git log --no-merges U-Boot-1_1_5.. | \ unexpand -a | sed -e 's/\s\s*$$//' > $@ -include/license.h: tools/bin2header COPYING - cat COPYING | gzip -9 -c | ./tools/bin2header license_gzip > include/license.h ######################################################################### ### @@ -1421,7 +1419,7 @@ CLEAN_DIRS += $(MODVERDIR) \ $(foreach d, spl tpl, $(patsubst %,$d/%, \ $(filter-out include, $(shell ls -1 $d 2>/dev/null)))) -CLEAN_FILES += include/bmp_logo.h include/bmp_logo_data.h \ +CLEAN_FILES += include/bmp_logo.h include/bmp_logo_data.h include/license.h \ boot* u-boot* MLO* SPL System.map # Directories & files removed with 'make mrproper' diff --git a/cmd/license.c b/cmd/license.c index b07de72..5ee57f8 100644 --- a/cmd/license.c +++ b/cmd/license.c @@ -7,7 +7,7 @@ #include <common.h> -/* COPYING is currently 15951 bytes in size */ +/* Licenses/gpl-2.0.txt is currently 18092 bytes in size */ #define LICENSE_MAX 20480 #include <command.h> @@ -16,13 +16,13 @@ int do_license(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { - char *tok, *dst = malloc(LICENSE_MAX); + char *dst = malloc(LICENSE_MAX); unsigned long len = LICENSE_MAX; if (!dst) return -1; - if (gunzip(dst, LICENSE_MAX, license_gz, &len) != 0) { + if (gunzip(dst, LICENSE_MAX, license_gzip, &len) != 0) { printf("Error uncompressing license text\n"); free(dst); return -1; diff --git a/include/.gitignore b/include/.gitignore index 8e41a95..75be527 100644 --- a/include/.gitignore +++ b/include/.gitignore @@ -2,3 +2,4 @@ /bmp_logo.h /bmp_logo_data.h /config.h +/license.h diff --git a/tools/Makefile b/tools/Makefile index 1e4b4aa..da50e1b 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -31,7 +31,6 @@ CONFIG_BUILD_ENVCRC ?= $(ENVCRC-y) hostprogs-$(CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER) += atmel_pmecc_params -# TODO: CONFIG_CMD_LICENSE does not work hostprogs-$(CONFIG_CMD_LICENSE) += bin2header hostprogs-$(CONFIG_LCD_LOGO) += bmp_logo hostprogs-$(CONFIG_VIDEO_LOGO) += bmp_logo @@ -212,6 +211,10 @@ endif endif # !LOGO_BMP +# Generated gziped GPL-2.0 license text +LICENSE_H = $(objtree)/include/license.h +LICENSE-$(CONFIG_CMD_LICENSE) += $(LICENSE_H) + # # Use native tools and options # Define __KERNEL_STRICT_NAMES to prevent typedef overlaps @@ -226,7 +229,7 @@ HOST_EXTRACFLAGS += -include $(srctree)/include/libfdt_env.h \ -D__KERNEL_STRICT_NAMES \ -D_GNU_SOURCE -__build: $(LOGO-y) +__build: $(LOGO-y) $(LICENSE-y) $(LOGO_H): $(obj)/bmp_logo $(LOGO_BMP) $(obj)/bmp_logo --gen-info $(LOGO_BMP) > $@ @@ -234,6 +237,10 @@ $(LOGO_H): $(obj)/bmp_logo $(LOGO_BMP) $(LOGO_DATA_H): $(obj)/bmp_logo $(LOGO_BMP) $(obj)/bmp_logo --gen-data $(LOGO_BMP) > $@ +$(LICENSE_H): $(obj)/bin2header $(srctree)/Licenses/gpl-2.0.txt + cat $(srctree)/Licenses/gpl-2.0.txt | gzip -9 -c | \ + $(obj)/bin2header license_gzip > $(LICENSE_H) + # Let clean descend into subdirs subdir- += env diff --git a/tools/bin2header.c b/tools/bin2header.c index 27a5b6a..6c2c23f 100644 --- a/tools/bin2header.c +++ b/tools/bin2header.c @@ -8,6 +8,7 @@ #include <stdlib.h> #include <stdio.h> +#include <unistd.h> int main(int argc, char **argv) { |