On 2021-06-22, Nicolas Boulenguez wrote:
> Append Debian revision to UBOOTVERSION via the command line instead of
> a patch.
>
> Set HOSTCFLAGS via the command line instead of the environment.
>
> Improve separation of concerns in debian/rules with a common_make_args
> variable.

Overall, this looks good!

Minor change requested; could you separate this into two patches, one
implementing common_make_args, and the second with the
UBOOTVERSION/EXTRAVERSION changes (which makes use of the
common_make_args changes)?

If you'd rather I split the patches, I can do that too; it looks pretty
straightforward.


live well,
  vagrant

> --- a/debian/patches/add-debian-revision-to-u-boot-version
> +++ /dev/null
> @@ -1,14 +0,0 @@
> -Add the debian revision to the U-boot version, which is displayed at
> -boot and can be helpful to determine which specific version is used.
> -
> ---- a/Makefile
> -+++ b/Makefile
> -@@ -447,7 +447,7 @@
> - 
> - # Read UBOOTRELEASE from include/config/uboot.release (if it exists)
> - UBOOTRELEASE = $(shell cat include/config/uboot.release 2> /dev/null)
> --UBOOTVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if 
> $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION)
> -+UBOOTVERSION = $(VERSION)$(if $(PATCHLEVEL),.$(PATCHLEVEL)$(if 
> $(SUBLEVEL),.$(SUBLEVEL)))$(EXTRAVERSION)$(DEBIAN_REVISION)
> - 
> - export VERSION PATCHLEVEL SUBLEVEL UBOOTRELEASE UBOOTVERSION
> - export ARCH CPU BOARD VENDOR SOC CPUDIR BOARDDIR
> --- a/debian/patches/series
> +++ b/debian/patches/series
> @@ -1,5 +1,3 @@
> -add-debian-revision-to-u-boot-version
> -
>  tools-generic-builds.patch
>  
>  mx53loco
> --- a/debian/rules
> +++ b/debian/rules
> @@ -2,7 +2,13 @@
>  
>  include /usr/share/dpkg/architecture.mk
>  include /usr/share/dpkg/pkg-info.mk
> -export DEBIAN_REVISION ?= $(shell echo $(DEB_VERSION) | sed -e 
> 's,.*+dfsg,+dfsg,')
> +
> +# Add the debian revision to the U-boot version, which is displayed at
> +# boot and can be helpful to determine which specific version is used.
> +original_EXTRAVERSION = $(shell sed -n '/^EXTRAVERSION = /{s///p;q}' 
> Makefile)
> +DEBIAN_REVISION ?= $(shell echo $(DEB_VERSION) | sed -e 's,.*+dfsg,+dfsg,')
> +EXTRAVERSION = $(original_EXTRAVERSION)$(DEBIAN_REVISION)
> +common_make_args += EXTRAVERSION='$(EXTRAVERSION)'
>  
>  include debian/targets.mk
>  
> @@ -17,6 +23,7 @@ VERBOSE=0
>  else
>  VERBOSE=1
>  endif
> +common_make_args += V=$(VERBOSE)
>  
>  # the upstream build passes LDFLAGS directly to ld instead of calling gcc for
>  # linking; so instead of passing -Wl,foo in LDFLAGS as in automake builds, 
> one
> @@ -50,7 +57,8 @@ ifneq (,$(only_platforms))
>  endif
>  
>  # Enable debugging symbols and remove build paths
> -export HOSTCFLAGS = -g -ffile-prefix-map=$(CURDIR)=.
> +HOSTCFLAGS = -g -ffile-prefix-map=$(CURDIR)=.
> +common_make_args += HOSTCFLAGS='$(HOSTCFLAGS)'
>  
>  %:
>       dh $@
> @@ -76,12 +84,14 @@ define build_template
>       # debian/rules: building platform: $(platform)
>       mkdir -p debian/build/$(platform)
>  
> -     dh_auto_build -- V=$(VERBOSE) O=debian/build/$(platform) \
> +     dh_auto_build -- $(common_make_args) \
> +       O=debian/build/$(platform) \
>         CROSS_COMPILE=$(or $($(platform)_CROSS_COMPILE),$(CROSS_COMPILE)) \
>         $($(package)_assigns) $($(platform)_assigns) \
>         $(platform)_defconfig
>       sed -i 's,CONFIG_FIT_SIGNATURE=y,# CONFIG_FIT_SIGNATURE is not set,' 
> debian/build/$(platform)/.config
> -     dh_auto_build -- V=$(VERBOSE) O=debian/build/$(platform) \
> +     dh_auto_build -- $(common_make_args) \
> +       O=debian/build/$(platform) \
>         CROSS_COMPILE=$(or $($(platform)_CROSS_COMPILE),$(CROSS_COMPILE)) \
>         $($(package)_assigns) $($(platform)_assigns)
>  
> @@ -106,10 +116,14 @@ $(foreach package, u-boot-qemu $(subarchs),\
>  
>  TOOLSDIR := debian/build/tools
>  build-tools:
> -     dh_auto_build -- V=$(VERBOSE) O=$(TOOLSDIR) 
> CROSS_COMPILE=$(CROSS_COMPILE) tools-only_defconfig
> +     dh_auto_build -- $(common_make_args) \
> +       O=$(TOOLSDIR) \
> +       CROSS_COMPILE=$(CROSS_COMPILE) \
> +       tools-only_defconfig
>       cp $(TOOLSDIR)/.config $(TOOLSDIR)/config
>       # board-independent tools
> -     dh_auto_build -- V=$(VERBOSE) O=$(TOOLSDIR) \
> +     dh_auto_build -- $(common_make_args) \
> +             O=$(TOOLSDIR) \
>               CROSS_COMPILE=$(CROSS_COMPILE) \
>               CROSS_BUILD_TOOLS=$(cross_build_tools) \
>               NO_SDL=1 \

Attachment: signature.asc
Description: PGP signature

Reply via email to