[v2,2/2] Changed patch behavior because if was not comfortable. Now you don't need to add every patch into buildscript.

Submitted by Jan Kraus on March 15, 2016, 7:37 p.m.

Details

Message ID 1458070653-20881-3-git-send-email-mayosemmel@gmail.com
State Superseded, archived
Headers show

Commit Message

Jan Kraus March 15, 2016, 7:37 p.m.
Signed-off-by: Jan Kraus <mayosemmel@gmail.com>
---
 buildscript | 16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

Patch hide | download patch | download mbox

diff --git a/buildscript b/buildscript
index 5937d9b..c5e487a 100755
--- a/buildscript
+++ b/buildscript
@@ -116,6 +116,12 @@  get_source() {
     cd .. # src
 }
 
+patch() {
+	for patch in "$PWD"/build_patches/*.patch; do
+	    patch -p0 -d "$target" -i "$PWD"/build_patches/$patch
+    done
+}
+
 prepare() {
     get_source
 
@@ -155,15 +161,7 @@  prepare() {
         fi
     done
 
-    # todo evaluate this with the new openwrt
-    # This changes the default behavior of sysupgrade to not save the config
-    patch -p0 -d "$target" -i "$PWD"/build_patches/sysupgrade_no_config_save.patch
-
-    # set default password to 'ffol'
-    patch -p0 -d "$target" -i "$PWD"/build_patches/set_root_password.patch
-
-    #add Support for GL-AR150 see also http://git.openwrt.org/?p=openwrt.git;a=commit;h=8211e81bce57392635fa3ad6572514387118e4a5
-    patch -p0 -d "$target" -i "$PWD"/build_patches/ar71xx-add-support-for-GL-AR150.patch
+	patch
 
     #saves ~200MB for each build
     test -d ./src/dl || mkdir ./src/dl

Comments

Tim Niemeyer March 15, 2016, 9:30 p.m.
Hi Mayosemmel

Den Patchset finde ich soweit gut. Könntest du aber bitte die OpenWRT
Patches dann in ein Unterverzeichnis "build_patches/openwrt" packen. 

Aktuell haben wir zwar keine anderen, aber das buildscript sieht vor,
dass man beliebige Patches eben auch an die Feed kleben kann. Das würde
dann hier zu einem Konflikt kommen. Deluxe wäre, wenn jeder Feed anhand
dessen Namen ein Verzeichnis im build_patches Verzeichnis bekommt, wo
dann die Patches drin sind. Aber das musst du nicht unbedingt einbauen.

Am Dienstag, den 15.03.2016, 20:37 +0100 schrieb Jan Kraus:
> Signed-off-by: Jan Kraus <mayosemmel@gmail.com>
> ---
>  buildscript | 16 +++++++---------
>  1 file changed, 7 insertions(+), 9 deletions(-)
> 
> diff --git a/buildscript b/buildscript
> index 5937d9b..c5e487a 100755
> --- a/buildscript
> +++ b/buildscript
> @@ -116,6 +116,12 @@ get_source() {
>      cd .. # src
>  }
>  
> +patch() {
> +	for patch in "$PWD"/build_patches/*.patch; do
> +	    patch -p0 -d "$target" -i "$PWD"/build_patches/$patch
> +    done
Hier ist die Einrückung kaputt.

Tim

> +}
> +
>  prepare() {
>      get_source
>  
> @@ -155,15 +161,7 @@ prepare() {
>          fi
>      done
>  
> -    # todo evaluate this with the new openwrt
> -    # This changes the default behavior of sysupgrade to not save the config
> -    patch -p0 -d "$target" -i "$PWD"/build_patches/sysupgrade_no_config_save.patch
> -
> -    # set default password to 'ffol'
> -    patch -p0 -d "$target" -i "$PWD"/build_patches/set_root_password.patch
> -
> -    #add Support for GL-AR150 see also http://git.openwrt.org/?p=openwrt.git;a=commit;h=8211e81bce57392635fa3ad6572514387118e4a5
> -    patch -p0 -d "$target" -i "$PWD"/build_patches/ar71xx-add-support-for-GL-AR150.patch
> +	patch
>  
>      #saves ~200MB for each build
>      test -d ./src/dl || mkdir ./src/dl
> -- 
> 2.1.4
>
Steffen Pankratz March 16, 2016, 6:44 p.m.
On Tue, 15 Mar 2016 20:37:33 +0100
Jan Kraus <mayosemmel@googlemail.com> wrote:

Hi Jan,

Anmerkungen "inline".
 

> Signed-off-by: Jan Kraus <mayosemmel@gmail.com>
> ---
>  buildscript | 16 +++++++---------
>  1 file changed, 7 insertions(+), 9 deletions(-)
> 
> diff --git a/buildscript b/buildscript
> index 5937d9b..c5e487a 100755
> --- a/buildscript
> +++ b/buildscript
> @@ -116,6 +116,12 @@ get_source() {
>      cd .. # src
>  }
>  
> +patch() {
> +	for patch in "$PWD"/build_patches/*.patch; do
> +	    patch -p0 -d "$target" -i "$PWD"/build_patches/$patch
> +    done
> +}
> +

Das Skript verwendet zum Einruecken 4 Spaces, keine Tabs.
Deine Aenderungen enthalten Tabs und auch Spaces.
Bitte konsequent Spaces verwenden.

$patch besser "double quoten", um ungewollten Bash Eigenheiten zu vermeiden.

patch -p0 -d "$target" -i "$PWD"/build_patches/"$patch"


>  prepare() {
>      get_source
>  
> @@ -155,15 +161,7 @@ prepare() {
>          fi
>      done
>  
> -    # todo evaluate this with the new openwrt
> -    # This changes the default behavior of sysupgrade to not save the config
> -    patch -p0 -d "$target" -i "$PWD"/build_patches/sysupgrade_no_config_save.patch
> -
> -    # set default password to 'ffol'
> -    patch -p0 -d "$target" -i "$PWD"/build_patches/set_root_password.patch
> -
> -    #add Support for GL-AR150 see also http://git.openwrt.org/?p=openwrt.git;a=commit;h=8211e81bce57392635fa3ad6572514387118e4a5
> -    patch -p0 -d "$target" -i "$PWD"/build_patches/ar71xx-add-support-for-GL-AR150.patch
> +	patch

Auch hier Tab vs. Spaces.


Gruss
-Steffen
A. Schulze March 16, 2016, 6:54 p.m.
Steffen Pankratz:

> patch -p0 -d "$target" -i "$PWD"/build_patches/"$patch"

oder auch "${PWD}/build_patches/${patch}"

(die geschweiften Klammern markieren eindeutig das Variablen-Ende).

Andreas
Jan Kraus March 16, 2016, 10:41 p.m.
Hallo Tim,

leider kann ich dem nicht ganz folgen.

Im buildscript habe ich folgende Definition gefunden:
## Feed definition [0]: name aka directory, [1]: url, [2]: revision, [3..n]: patches
Am Beispiel von OpenWrt sieht das dann so aus:
OPENWRT=(openwrt
         $PACKAGEURL
         $PACKAGEREV)
OPENWRT_PKGS="gpioctl-sysfs libugpio fastd haserl"

Allerdings ist für keinen einzigen Feed ein Patch definiert, deshalb
fällt es mir etwas schwer, die Definition zu verstehen.

Ich würde nun folgendes machen:
das [3..n] für die patches in [3] ändern und da den Pfad zu den
entsprechenden Patches reinschreiben.
Passt das dann?

BTW: Wo wird die Variable OPENWRT_PCKGS bzw. die der anderen Feeds
verarbeitet/benötigt?

Grüße Jan

Am Dienstag, den 15.03.2016, 22:30 +0100 schrieb Tim Niemeyer:
> Hi Mayosemmel
> 
> Den Patchset finde ich soweit gut. Könntest du aber bitte die OpenWRT
> Patches dann in ein Unterverzeichnis "build_patches/openwrt" packen. 
> 
> Aktuell haben wir zwar keine anderen, aber das buildscript sieht vor,
> dass man beliebige Patches eben auch an die Feed kleben kann. Das würde
> dann hier zu einem Konflikt kommen. Deluxe wäre, wenn jeder Feed anhand
> dessen Namen ein Verzeichnis im build_patches Verzeichnis bekommt, wo
> dann die Patches drin sind. Aber das musst du nicht unbedingt einbauen.
> 
> Am Dienstag, den 15.03.2016, 20:37 +0100 schrieb Jan Kraus:
> > Signed-off-by: Jan Kraus <mayosemmel@gmail.com>
> > ---
> >  buildscript | 16 +++++++---------
> >  1 file changed, 7 insertions(+), 9 deletions(-)
> > 
> > diff --git a/buildscript b/buildscript
> > index 5937d9b..c5e487a 100755
> > --- a/buildscript
> > +++ b/buildscript
> > @@ -116,6 +116,12 @@ get_source() {
> >      cd .. # src
> >  }
> >  
> > +patch() {
> > +	for patch in "$PWD"/build_patches/*.patch; do
> > +	    patch -p0 -d "$target" -i "$PWD"/build_patches/$patch
> > +    done
> Hier ist die Einrückung kaputt.
> 
> Tim
> 
> > +}
> > +
> >  prepare() {
> >      get_source
> >  
> > @@ -155,15 +161,7 @@ prepare() {
> >          fi
> >      done
> >  
> > -    # todo evaluate this with the new openwrt
> > -    # This changes the default behavior of sysupgrade to not save the config
> > -    patch -p0 -d "$target" -i "$PWD"/build_patches/sysupgrade_no_config_save.patch
> > -
> > -    # set default password to 'ffol'
> > -    patch -p0 -d "$target" -i "$PWD"/build_patches/set_root_password.patch
> > -
> > -    #add Support for GL-AR150 see also http://git.openwrt.org/?p=openwrt.git;a=commit;h=8211e81bce57392635fa3ad6572514387118e4a5
> > -    patch -p0 -d "$target" -i "$PWD"/build_patches/ar71xx-add-support-for-GL-AR150.patch
> > +	patch
> >  
> >      #saves ~200MB for each build
> >      test -d ./src/dl || mkdir ./src/dl
> > -- 
> > 2.1.4
> > 
>
Tim Niemeyer March 17, 2016, 6:55 a.m.
Hi

Am 16. März 2016 23:41:38 MEZ, schrieb mayosemmel <mayosemmel@googlemail.com>:
>Hallo Tim,
>
>leider kann ich dem nicht ganz folgen.
>
>Im buildscript habe ich folgende Definition gefunden:
>## Feed definition [0]: name aka directory, [1]: url, [2]: revision,
>[3..n]: patches
>Am Beispiel von OpenWrt sieht das dann so aus:
>OPENWRT=(openwrt
>         $PACKAGEURL
>         $PACKAGEREV)
>OPENWRT_PKGS="gpioctl-sysfs libugpio fastd haserl"
>
>Allerdings ist für keinen einzigen Feed ein Patch definiert, deshalb
>fällt es mir etwas schwer, die Definition zu verstehen.

Bin grad unterwegs, daher kann ich dir kein Beispiel raussuchen, am besten mal die historie vom buildscript angucken.


>Ich würde nun folgendes machen:
>das [3..n] für die patches in [3] ändern und da den Pfad zu den
>entsprechenden Patches reinschreiben.
>Passt das dann?

[1] ist ja der Name vom Feed. Reicht es dann nicht zu gucken, ob es einen Ordner mit dem Namen unter build_patches gibt?

>BTW: Wo wird die Variable OPENWRT_PCKGS bzw. die der anderen Feeds
>verarbeitet/benötigt?

Auch das ist unterwegs schwer zu klären. Wird benötigt, damit das buildscript nur die gewollten Packages des Feeds installiert.

Tim

>
>Grüße Jan
>
>Am Dienstag, den 15.03.2016, 22:30 +0100 schrieb Tim Niemeyer:
>> Hi Mayosemmel
>> 
>> Den Patchset finde ich soweit gut. Könntest du aber bitte die OpenWRT
>> Patches dann in ein Unterverzeichnis "build_patches/openwrt" packen. 
>> 
>> Aktuell haben wir zwar keine anderen, aber das buildscript sieht vor,
>> dass man beliebige Patches eben auch an die Feed kleben kann. Das
>würde
>> dann hier zu einem Konflikt kommen. Deluxe wäre, wenn jeder Feed
>anhand
>> dessen Namen ein Verzeichnis im build_patches Verzeichnis bekommt, wo
>> dann die Patches drin sind. Aber das musst du nicht unbedingt
>einbauen.
>> 
>> Am Dienstag, den 15.03.2016, 20:37 +0100 schrieb Jan Kraus:
>> > Signed-off-by: Jan Kraus <mayosemmel@gmail.com>
>> > ---
>> >  buildscript | 16 +++++++---------
>> >  1 file changed, 7 insertions(+), 9 deletions(-)
>> > 
>> > diff --git a/buildscript b/buildscript
>> > index 5937d9b..c5e487a 100755
>> > --- a/buildscript
>> > +++ b/buildscript
>> > @@ -116,6 +116,12 @@ get_source() {
>> >      cd .. # src
>> >  }
>> >  
>> > +patch() {
>> > +	for patch in "$PWD"/build_patches/*.patch; do
>> > +	    patch -p0 -d "$target" -i "$PWD"/build_patches/$patch
>> > +    done
>> Hier ist die Einrückung kaputt.
>> 
>> Tim
>> 
>> > +}
>> > +
>> >  prepare() {
>> >      get_source
>> >  
>> > @@ -155,15 +161,7 @@ prepare() {
>> >          fi
>> >      done
>> >  
>> > -    # todo evaluate this with the new openwrt
>> > -    # This changes the default behavior of sysupgrade to not save
>the config
>> > -    patch -p0 -d "$target" -i
>"$PWD"/build_patches/sysupgrade_no_config_save.patch
>> > -
>> > -    # set default password to 'ffol'
>> > -    patch -p0 -d "$target" -i
>"$PWD"/build_patches/set_root_password.patch
>> > -
>> > -    #add Support for GL-AR150 see also
>http://git.openwrt.org/?p=openwrt.git;a=commit;h=8211e81bce57392635fa3ad6572514387118e4a5
>> > -    patch -p0 -d "$target" -i
>"$PWD"/build_patches/ar71xx-add-support-for-GL-AR150.patch
>> > +	patch
>> >  
>> >      #saves ~200MB for each build
>> >      test -d ./src/dl || mkdir ./src/dl
>> > -- 
>> > 2.1.4
>> > 
>> 
>
>
>
>------------------------------------------------------------------------