summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xstlinux_import_patches.sh30
1 files changed, 20 insertions, 10 deletions
diff --git a/stlinux_import_patches.sh b/stlinux_import_patches.sh
index 9f9afdd..f6adc67 100755
--- a/stlinux_import_patches.sh
+++ b/stlinux_import_patches.sh
@@ -26,14 +26,24 @@ END_TO=${4:-}
PATCHES_LIST=$STLINUX_FOLDER/.patches
-:>$PATCHES_LIST
-for patch in $(grep "^%patch" $STLINUX_FOLDER/*.spec | sed 's/%\(patch[0-9]\+\).*/\1/')
-do
- echo $patch | sed 's/patch\([0-9]\+\)/\1/' | awk '{ printf $1" " }' >> $PATCHES_LIST
- grep -i "^%$patch" $STLINUX_FOLDER/*.spec | awk '{ printf $2" " }' >> $PATCHES_LIST
- grep -i "^$patch:" $STLINUX_FOLDER/*.spec | awk '{ print $2 }' >> $PATCHES_LIST
-done
-
+if [ ! -s $PATCHES_LIST ]
+then
+ :>$PATCHES_LIST
+ for patch in $(grep "^%patch" $STLINUX_FOLDER/*.spec | sed 's/%\(patch[0-9]\+\).*/\1/')
+ do
+ print -Pn "Preparing $patch...\r"
+ (
+ echo $patch | sed 's/patch\([0-9]\+\)/\1/' | awk '{ printf $1" " }'
+ grep -i "^\(%$patch \|$patch:\)" $STLINUX_FOLDER/*.spec | awk '{ printf $2" " }'
+ echo
+ ) >> $PATCHES_LIST
+ done
+ echo
+
+ echo "Done"
+else
+ echo "Patches already prepared. Skip"
+fi
#cat $PATCHES_LIST
function read_patch_file()
@@ -56,8 +66,8 @@ export RELEASE=""
for patch in $(awk < $PATCHES_LIST '{print $1}' )
do
- file=$(grep "^$patch " $PATCHES_LIST | awk '{print $3}')
- strip=$(grep "^$patch " $PATCHES_LIST | awk '{print $2}')
+ file=$(grep "^$patch " $PATCHES_LIST | awk '{print $2}')
+ strip=$(grep "^$patch " $PATCHES_LIST | awk '{print $3}')
if [ $patch -ge $START_FROM -a \( -z "$END_TO" -o $patch -le "$END_TO" \) ]
then