[PATCH v2] buildscript: Apply variant to builddir in build step

mail at adrianschmutzler.de mail at adrianschmutzler.de
So Nov 10 21:19:37 CET 2019


Reviewed-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>

Das ist im Prinzip das, was ich bei mir schon seit einiger Zeit mache:

https://github.com/adrianschmutzler/fff-firmware/commit/c637ef2b6ea9d2aa78866238988b1b82738b7e61

Grüße

Adrian

> -----Original Message-----
> From: franken-dev [mailto:franken-dev-bounces at freifunk.net] On Behalf
> Of Fabian Bläse
> Sent: Sonntag, 10. November 2019 16:34
> To: franken-dev at freifunk.net
> Subject: [PATCH v2] buildscript: Apply variant to builddir in build step
> 
> The build variant previously only got applied in the prepare step. Therefore
> selecting a new variant for a subsequent build without calling prepare again
> produced a build with a different variant than the selected one.
> 
> As the filename and version number is evaluated in the prebuild step, which
> is called on every build, the version number did use selected variant, so the
> build variant did not match the variant in the version string.
> 
> As applying the variant only causes the fff-base package to be fully rebuilt,
> this step is moved into a function and also executed in buildscripts prebuild
> step. It is therefore always applied when starting a new build.
> 
> Signed-off-by: Fabian Bläse <fabian at blaese.de>
> ---
> Changes in v2:
> - Also apply variant in prepare step as update_feeds
>   otherwise isn't able to parse our feed
> ---
>  buildscript | 16 ++++++++++++----
>  1 file changed, 12 insertions(+), 4 deletions(-)
> 
> diff --git a/buildscript b/buildscript
> index 098a70d..306b91f 100755
> --- a/buildscript
> +++ b/buildscript
> @@ -131,10 +131,9 @@ prepare() {
> 
>      patch_target
> 
> -    # set the variant for this build
> -    cp "./src/packages/fff/fff/variant-$(cat selected_variant).mk"
> "$builddir"/variant.mk
> -    # force the reevaluation of this Makefile to make note of the new variant
> -    touch ./src/packages/fff/fff/Makefile
> +    # apply variant to ensure the included file "variant.mk"
> +    # exists in builddir.
> +    apply_variant
> 
>      #saves ~200MB for each build
>      test -d ./src/dl || mkdir ./src/dl
> @@ -143,6 +142,13 @@ prepare() {
>      update_feeds
>  }
> 
> +apply_variant() {
> +    # set the variant for this build
> +    cp "./src/packages/fff/fff/variant-$(cat selected_variant).mk"
> "$builddir"/variant.mk
> +    # force the reevaluation of this Makefile to make note of the new variant
> +    touch ./src/packages/fff/fff/Makefile }
> +
>  update_feeds() {
>      ## generate own feeds.conf
>      #this local variable should be globally configure variable used in get_source
> and here @@ -177,6 +183,8 @@ update_feeds() {  }
> 
>  prebuild() {
> +    apply_variant
> +
>      #create filesdir for our config
>      /bin/rm -rf "$builddir"/files
>      mkdir "$builddir"/files
> --
> 2.23.0
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : openpgp-digital-signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 834 bytes
Beschreibung: nicht verfügbar
URL         : <https://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20191110/3f3ae79a/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev