Skip to contentSkip to conversation

uboot-tools: bump to version 2014.04

PATCH Superseded Alexey Brodkin 2 participants 3 messages Apr 28, 2014

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 uboot-tools: bump to version 2014.04

Cc Gustavo Zacarias <[email protected]>
Cc Peter Korsgaard <[email protected]>

---
Changes compared to v1:

* Fixed building of U-Boot tools for the target
* Properly set compiler and linker flags in case of cross-compilation

 .../uboot-tools-01-drop-configh-from-tools.patch   | 32 +++++-----------------
 .../uboot-tools-02-hostcflags-override-fix.patch   | 29 --------------------
 package/uboot-tools/uboot-tools.mk                 | 19 ++++++++-----
 3 files changed, 19 insertions(+), 61 deletions(-)
 delete mode 100644 package/uboot-tools/uboot-tools-02-hostcflags-override-fix.patch
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +7 -25
index 21995ec..6466287 100644
@@ -1,14 +1,9 @@
-We need to build u-boot tools without a board configuration for the target.
-fw_env just uses config.h to define the default environment of the created
-image, so it really isn't mandatory.
-
-Signed-off-by: Gustavo Zacarias <[email protected]>
-
-diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_env.h
---- u-boot-2013.01.orig/tools/env/fw_env.h	2013-01-19 07:50:53.879241660 -0300
-+++ u-boot-2013.01/tools/env/fw_env.h	2013-01-19 07:58:11.897903403 -0300
-@@ -21,15 +21,6 @@
-  * MA 02111-1307 USA
+diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
+index aff471b..dfe7439 100644
+--- a/tools/env/fw_env.h
++++ b/tools/env/fw_env.h
+@@ -5,14 +5,6 @@
+  * SPDX-License-Identifier:	GPL-2.0+
   */
  
 -/* Pull in the current config to define the default environment */
@@ -19,19 +14,6 @@ diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_en
 -#else
 -#include <config.h>
 -#endif
--
+ 
  /*
   * To build the utility with the static configuration
-  * comment out the next line.
-diff -Nura u-boot-2013.01.orig/tools/env/Makefile u-boot-2013.01/tools/env/Makefile
---- u-boot-2013.01.orig/tools/env/Makefile	2013-01-19 07:50:53.879241660 -0300
-+++ u-boot-2013.01/tools/env/Makefile	2013-01-19 07:59:34.926486346 -0300
-@@ -26,7 +26,7 @@
- HOSTSRCS := $(SRCTREE)/lib/crc32.c  fw_env.c  fw_env_main.c
- HOSTSRCS += $(SRCTREE)/lib/ctype.c $(SRCTREE)/lib/linux_string.c
- HOSTSRCS += $(SRCTREE)/common/env_attr.c $(SRCTREE)/common/env_flags.c
--HEADERS	:= fw_env.h $(OBJTREE)/include/config.h
-+HEADERS	:= fw_env.h
- 
- # Compile for a hosted environment on the target
- HOSTCPPFLAGS  = -idirafter $(SRCTREE)/include \
package/uboot-tools/uboot-tools-02-hostcflags-override-fix.patch deleted +0 -29
deleted file mode 100644
index 0202eda..0000000
@@ -1,29 +0,0 @@
-[PATCH] Fix tools build with custom HOSTCFLAGS
-
-We always need to append HOSTCPPFLAGS, even if HOSTCFLAGS have been
-overridden on the cmdline.
-
-Signed-off-by: Peter Korsgaard <[email protected]>
----
- config.mk |    6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-Index: u-boot-2011.03/config.mk
-===================================================================
---- u-boot-2011.03.orig/config.mk
-+++ u-boot-2011.03/config.mk
-@@ -46,10 +46,12 @@
- 
- #########################################################################
- 
--HOSTCFLAGS	= -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer \
--		  $(HOSTCPPFLAGS)
-+HOSTCFLAGS	= -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer
- HOSTSTRIP	= strip
- 
-+# append CPPFLAGS even if CFLAGS has been overridden on cmdline
-+override HOSTCFLAGS += $(HOSTCPPFLAGS)
-+
- #
- # Mac OS X / Darwin's C preprocessor is Apple specific.  It
- # generates numerous errors and warnings.  We want to bypass it
package/uboot-tools/uboot-tools.mk +12 -7
index 398ce8b..0a3d711 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-UBOOT_TOOLS_VERSION = 2014.01
+UBOOT_TOOLS_VERSION = 2014.04
 UBOOT_TOOLS_SOURCE  = u-boot-$(UBOOT_TOOLS_VERSION).tar.bz2
 UBOOT_TOOLS_SITE    = ftp://ftp.denx.de/pub/u-boot
 UBOOT_TOOLS_LICENSE = GPLv2+
@@ -12,11 +12,16 @@ UBOOT_TOOLS_LICENSE_FILES = Licenses/gpl-2.0.txt
 
 define UBOOT_TOOLS_BUILD_CMDS
 	$(MAKE) -C $(@D) 			\
-		HOSTCC="$(TARGET_CC)"		\
-		HOSTCFLAGS="$(TARGET_CFLAGS)"	\
-		HOSTLDFLAGS="$(TARGET_LDFLAGS)"	\
-		HOSTSTRIP=true			\
-		tools env
+		CROSS_COMPILE="$(TARGET_CROSS)"	\
+		CFLAGS="$(TARGET_CFLAGS)"	\
+		LDFLAGS="$(TARGET_LDFLAGS)"	\
+		CROSS_BUILD_TOOLS=y		\
+		tools-only
+	$(MAKE) -C $(@D) 			\
+		CROSS_COMPILE="$(TARGET_CROSS)"	\
+		CFLAGS="$(TARGET_CFLAGS)"	\
+		LDFLAGS="$(TARGET_LDFLAGS)"	\
+		env no-dot-config-targets=env
 endef
 
 ifeq ($(BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE),y)
@@ -49,7 +54,7 @@ define HOST_UBOOT_TOOLS_BUILD_CMDS
 		HOSTCC="$(HOSTCC)"		\
 		HOSTCFLAGS="$(HOST_CFLAGS)"	\
 		HOSTLDFLAGS="$(HOST_LDFLAGS)"	\
-		tools
+		tools-only
 endef
 
 define HOST_UBOOT_TOOLS_INSTALL_CMDS
Signature · 1 line
1.9.0
#1 lore raw

PATCH v2 1/1 uboot-tools: bump to version 2014.04

Quoted 1 line · Alexey Brodkin

v1 had a much better commit message.

Quoted 20 lines
Cc Gustavo Zacarias <[email protected]>
Cc Peter Korsgaard <[email protected]>

---
Changes compared to v1:

* Fixed building of U-Boot tools for the target
* Properly set compiler and linker flags in case of cross-compilation

 .../uboot-tools-01-drop-configh-from-tools.patch   | 32 +++++-----------------
 .../uboot-tools-02-hostcflags-override-fix.patch   | 29 --------------------
 package/uboot-tools/uboot-tools.mk                 | 19 ++++++++-----
 3 files changed, 19 insertions(+), 61 deletions(-)
 delete mode 100644 package/uboot-tools/uboot-tools-02-hostcflags-override-fix.patch
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +0 -0
index 21995ec..6466287 100644

package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch line 5

Quoted 5 lines
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +0 -5
@@ -1,14 +1,9 @@
-We need to build u-boot tools without a board configuration for the target.
-fw_env just uses config.h to define the default environment of the created
-image, so it really isn't mandatory.
-
-Signed-off-by: Gustavo Zacarias <[email protected]>

No need to drop this commit log...

I also don't really like this patch to begin with, because sometimes I
_do_ need fw_setenv to be able to generate a default environment. But that, of course, would be a separate patch.

Quoted 16 lines
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +6 -6
-
-diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_env.h
---- u-boot-2013.01.orig/tools/env/fw_env.h	2013-01-19 07:50:53.879241660 -0300
-+++ u-boot-2013.01/tools/env/fw_env.h	2013-01-19 07:58:11.897903403 -0300
-@@ -21,15 +21,6 @@
-  * MA 02111-1307 USA
+diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
+index aff471b..dfe7439 100644
+--- a/tools/env/fw_env.h
++++ b/tools/env/fw_env.h
+@@ -5,14 +5,6 @@
+  * SPDX-License-Identifier:	GPL-2.0+
   */
 
 -/* Pull in the current config to define the default environment */

package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_en · line 17

Quoted 5 lines
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +1 -1
@@ -19,19 +14,6 @@ diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_en
 -#else
 -#include <config.h>
 -#endif
--
+ 

Useless change.

Quoted 5 lines
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +0 -3
  /*
   * To build the utility with the static configuration
-  * comment out the next line.
-diff -Nura u-boot-2013.01.orig/tools/env/Makefile u-boot-2013.01/tools/env/Makefile
---- u-boot-2013.01.orig/tools/env/Makefile	2013-01-19 07:50:53.879241660 -0300

package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_en · line 37

Quoted 10 lines
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +0 -10
-+++ u-boot-2013.01/tools/env/Makefile	2013-01-19 07:59:34.926486346 -0300
-@@ -26,7 +26,7 @@
- HOSTSRCS := $(SRCTREE)/lib/crc32.c  fw_env.c  fw_env_main.c
- HOSTSRCS += $(SRCTREE)/lib/ctype.c $(SRCTREE)/lib/linux_string.c
- HOSTSRCS += $(SRCTREE)/common/env_attr.c $(SRCTREE)/common/env_flags.c
--HEADERS	:= fw_env.h $(OBJTREE)/include/config.h
-+HEADERS	:= fw_env.h
- 
- # Compile for a hosted environment on the target
- HOSTCPPFLAGS  = -idirafter $(SRCTREE)/include \

Otherwise, looks good to me.

Regards,
Arnout

[snip]

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#2 lore raw

PATCH v2 1/1 uboot-tools: bump to version 2014.04

Hi Arnout,

Quoted 4 lines · Arnout Vandecappelle
Quoted 1 line · Alexey Brodkin

v1 had a much better commit message.

Right, because it was simple considering changes were done in commit. But after pretty significant rework I'll need to comment on much more things - this new U-Boot version introduced a lot of changes especially in build infrastructure.

If you prefer to have a verbose description of changes I've done I'll add more comments happily.

Quoted 15 lines
Quoted 15 lines
Cc Gustavo Zacarias <[email protected]>
Cc Peter Korsgaard <[email protected]>

---
Changes compared to v1:

* Fixed building of U-Boot tools for the target
* Properly set compiler and linker flags in case of cross-compilation

 .../uboot-tools-01-drop-configh-from-tools.patch   | 32 +++++-----------------
 .../uboot-tools-02-hostcflags-override-fix.patch   | 29 --------------------
 package/uboot-tools/uboot-tools.mk                 | 19 ++++++++-----
 3 files changed, 19 insertions(+), 61 deletions(-)
 delete mode 100644 package/uboot-tools/uboot-tools-02-hostcflags-override-fix.patch
Quoted 12 lines

package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch line 5

Quoted 10 lines
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +0 -5
index 21995ec..6466287 100644
@@ -1,14 +1,9 @@
-We need to build u-boot tools without a board configuration for the target.
-fw_env just uses config.h to define the default environment of the created
-image, so it really isn't mandatory.
-
-Signed-off-by: Gustavo Zacarias <[email protected]>

No need to drop this commit log...

Makes sense. Will add it back.

Quoted 3 lines

I also don't really like this patch to begin with, because sometimes I
_do_ need fw_setenv to be able to generate a default environment. But that, of course, would be a separate patch.

Then you need to configure U-Boot before building. Do something like "make yourboard_config" and only then build tools.

In other words we'll need to provide correct board name in Buildroot configuration for U-Boot tools. Which I think is a bit of overhead. IMHO it's good to generate generic tools. At least it's the simplest way.

Maybe we need to consider building of U-Boot tools for target as a part of U-Boot bootloader. In this case board name will be there already and configuration of sources will be done by previous build.

Quoted 14 lines
Quoted 14 lines
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +6 -6
-
-diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_env.h
---- u-boot-2013.01.orig/tools/env/fw_env.h	2013-01-19 07:50:53.879241660 -0300
-+++ u-boot-2013.01/tools/env/fw_env.h	2013-01-19 07:58:11.897903403 -0300
-@@ -21,15 +21,6 @@
-  * MA 02111-1307 USA
+diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
+index aff471b..dfe7439 100644
+--- a/tools/env/fw_env.h
++++ b/tools/env/fw_env.h
+@@ -5,14 +5,6 @@
+  * SPDX-License-Identifier:	GPL-2.0+
   */
 
Quoted 9 lines

package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_en · line 17

Quoted 7 lines
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch +1 -1
 -/* Pull in the current config to define the default environment */
@@ -19,19 +14,6 @@ diff -Nura u-boot-2013.01.orig/tools/env/fw_env.h u-boot-2013.01/tools/env/fw_en
 -#else
 -#include <config.h>
 -#endif
--
+ 

Useless change.

Well it is required just because of changes in "fw_env.h" which prevent original patch to apply. So I created a brand-new patch on top of current sources.

Regards,
Alexey