]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - package/uboot-tools/uboot-tools.mk
Globally replace $(HOST_DIR)/usr/bin with $(HOST_DIR)/bin
[coffee/buildroot.git] / package / uboot-tools / uboot-tools.mk
1 ################################################################################
2 #
3 # uboot-tools
4 #
5 ################################################################################
6
7 UBOOT_TOOLS_VERSION = 2017.05
8 UBOOT_TOOLS_SOURCE = u-boot-$(UBOOT_TOOLS_VERSION).tar.bz2
9 UBOOT_TOOLS_SITE = ftp://ftp.denx.de/pub/u-boot
10 UBOOT_TOOLS_LICENSE = GPL-2.0+
11 UBOOT_TOOLS_LICENSE_FILES = Licenses/gpl-2.0.txt
12 UBOOT_TOOLS_INSTALL_STAGING = YES
13
14 define UBOOT_TOOLS_CONFIGURE_CMDS
15         mkdir -p $(@D)/include/config
16         touch $(@D)/include/config/auto.conf
17 endef
18
19 UBOOT_TOOLS_MAKE_OPTS = CROSS_COMPILE="$(TARGET_CROSS)" \
20         CFLAGS="$(TARGET_CFLAGS)" \
21         LDFLAGS="$(TARGET_LDFLAGS)" \
22         STRIP=$(TARGET_STRIP)
23
24 # This option was added through an additional patch
25 # and allows the disabling of a host python swig
26 # detect which as of 2017.5 assumes the host systems swig.
27 UBOOT_TOOLS_MAKE_OPTS += CONFIG_TOOLS_PYTHON_WRAPPER_DISABLE=y
28
29 ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FIT_SUPPORT),y)
30 UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT=y
31 UBOOT_TOOLS_DEPENDENCIES += dtc
32 endif
33
34 ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT),y)
35 UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT_SIGNATURE=y
36 UBOOT_TOOLS_DEPENDENCIES += openssl host-pkgconf
37 endif
38
39 define UBOOT_TOOLS_BUILD_CMDS
40         $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(UBOOT_TOOLS_MAKE_OPTS) \
41                 CROSS_BUILD_TOOLS=y tools-only
42         $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(UBOOT_TOOLS_MAKE_OPTS) \
43                 env no-dot-config-targets=env
44 endef
45
46 ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE),y)
47 define UBOOT_TOOLS_INSTALL_MKIMAGE
48         $(INSTALL) -m 0755 -D $(@D)/tools/mkimage $(TARGET_DIR)/usr/bin/mkimage
49 endef
50 endif
51
52 ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_MKENVIMAGE),y)
53 define UBOOT_TOOLS_INSTALL_MKENVIMAGE
54         $(INSTALL) -m 0755 -D $(@D)/tools/mkenvimage $(TARGET_DIR)/usr/bin/mkenvimage
55 endef
56 endif
57
58 ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_FWPRINTENV),y)
59 define UBOOT_TOOLS_INSTALL_FWPRINTENV
60         $(INSTALL) -m 0755 -D $(@D)/tools/env/fw_printenv $(TARGET_DIR)/usr/sbin/fw_printenv
61         ln -sf fw_printenv $(TARGET_DIR)/usr/sbin/fw_setenv
62 endef
63 endif
64
65 ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_DUMPIMAGE),y)
66 define UBOOT_TOOLS_INSTALL_DUMPIMAGE
67         $(INSTALL) -m 0755 -D $(@D)/tools/dumpimage $(TARGET_DIR)/usr/sbin/dumpimage
68 endef
69 endif
70
71 define UBOOT_TOOLS_INSTALL_STAGING_CMDS
72         $(INSTALL) -D -m 0755 $(@D)/tools/env/lib.a $(STAGING_DIR)/usr/lib/libubootenv.a
73         $(INSTALL) -D -m 0644 $(@D)/tools/env/fw_env.h $(STAGING_DIR)/usr/include/fw_env.h
74 endef
75
76 define UBOOT_TOOLS_INSTALL_TARGET_CMDS
77         $(UBOOT_TOOLS_INSTALL_MKIMAGE)
78         $(UBOOT_TOOLS_INSTALL_MKENVIMAGE)
79         $(UBOOT_TOOLS_INSTALL_FWPRINTENV)
80         $(UBOOT_TOOLS_INSTALL_DUMPIMAGE)
81 endef
82
83 define HOST_UBOOT_TOOLS_CONFIGURE_CMDS
84         mkdir -p $(@D)/include/config
85         touch $(@D)/include/config/auto.conf
86 endef
87
88 HOST_UBOOT_TOOLS_MAKE_OPTS = HOSTCC="$(HOSTCC)" \
89         HOSTCFLAGS="$(HOST_CFLAGS)" \
90         HOSTLDFLAGS="$(HOST_LDFLAGS)"
91
92 ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT),y)
93 HOST_UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT=y
94 HOST_UBOOT_TOOLS_DEPENDENCIES += host-dtc
95 endif
96
97 ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SIGNATURE_SUPPORT),y)
98 HOST_UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT_SIGNATURE=y
99 HOST_UBOOT_TOOLS_DEPENDENCIES += host-openssl
100 endif
101
102 define HOST_UBOOT_TOOLS_BUILD_CMDS
103         $(MAKE1) -C $(@D) $(HOST_UBOOT_TOOLS_MAKE_OPTS) tools-only
104 endef
105
106 define HOST_UBOOT_TOOLS_INSTALL_CMDS
107         $(INSTALL) -m 0755 -D $(@D)/tools/mkimage $(HOST_DIR)/bin/mkimage
108         $(INSTALL) -m 0755 -D $(@D)/tools/mkenvimage $(HOST_DIR)/bin/mkenvimage
109         $(INSTALL) -m 0755 -D $(@D)/tools/dumpimage $(HOST_DIR)/bin/dumpimage
110 endef
111
112 $(eval $(generic-package))
113 $(eval $(host-generic-package))
114
115 # Convenience variables for other mk files that make use of mkimage
116
117 MKIMAGE = $(HOST_DIR)/bin/mkimage
118
119 # mkimage supports arm blackfin m68k microblaze mips mips64 nios2 powerpc ppc sh sparc sparc64 x86
120 # KERNEL_ARCH can be arm64 arc arm blackfin m68k microblaze mips nios2 powerpc sh sparc i386 x86_64 xtensa
121 # For arm64, arc, xtensa we'll just keep KERNEL_ARCH
122 # For mips64, we'll just keep mips
123 # For i386 and x86_64, we need to convert
124 ifeq ($(KERNEL_ARCH),x86_64)
125 MKIMAGE_ARCH = x86
126 else ifeq ($(KERNEL_ARCH),i386)
127 MKIMAGE_ARCH = x86
128 else
129 MKIMAGE_ARCH = $(KERNEL_ARCH)
130 endif