From: Sunmin Lee Date: Thu, 10 Aug 2017 11:19:32 +0000 (+0900) Subject: Remove awk dependency X-Git-Tag: accepted/tizen/unified/20170824.050910~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fa7e37e2b2a3ecf962a08d3cca5353af861bc92d;p=platform%2Fcore%2Fsystem%2Finitrd-fota.git Remove awk dependency To be optimized, awk package got out of initrd-recovery. So, make the same code using coreutil commands instead of awk. Change-Id: I0273848348ebc5bb97c921a0af7b8c3a554c3066 Signed-off-by: Sunmin Lee --- diff --git a/packaging/initrd-fota.spec b/packaging/initrd-fota.spec index e62e7a1..f52604c 100755 --- a/packaging/initrd-fota.spec +++ b/packaging/initrd-fota.spec @@ -12,7 +12,6 @@ BuildRequires: gettext-tools Requires: util-linux Requires: grep Requires: bash -Requires: gawk Requires: procps Requires: dbus-libs diff --git a/scripts/40-fota.list b/scripts/40-fota.list index e05cef8..682ac5c 100755 --- a/scripts/40-fota.list +++ b/scripts/40-fota.list @@ -15,7 +15,6 @@ WITHLIBS=" /bin/bash /bin/echo /bin/ls -/bin/gawk /bin/tar /bin/chroot /bin/cat @@ -31,13 +30,15 @@ WITHLIBS=" /bin/umount /bin/cp /bin/sort +/bin/cut +/bin/tr +/bin/wc /usr/sbin/agetty " # LinkFileName:Target SYMLINKS=" /bin/sh:bash -/usr/bin/awk:/bin/gawk /sbin/fota-init:/usr/lib/initrd-recovery/fota/fota-init.sh /sbin/upgrade-init:/usr/lib/initrd-recovery/fota/fota-init.sh /sbin/fus_rw-init:/usr/lib/initrd-recovery/fota/fus_rw-init.sh diff --git a/scripts/fota-init.sh b/scripts/fota-init.sh index f4758dd..559df24 100755 --- a/scripts/fota-init.sh +++ b/scripts/fota-init.sh @@ -28,10 +28,13 @@ REBOOT="/sbin/reboot" MOUNT="/bin/mount" UMOUNT="/bin/umount" GREP="/bin/grep" -AWK="/usr/bin/awk" +CUT="/usr/bin/cut" +TR="/usr/bin/tr" PARTX="/usr/sbin/partx" BLKID="/usr/sbin/blkid" SORT="/usr/bin/sort" +SED="/usr/bin/sed" +WC="/usr/bin/wc" SYSTEM_DATA_MNT=opt USER_MNT=opt/usr @@ -42,15 +45,27 @@ USER_MNT=opt/usr get_partition_id() { EMMC_DEVICE="/dev/mmcblk0" RET_PARTX=$("$PARTX" -s ${EMMC_DEVICE}) - TEST=$(IFS=; echo $RET_PARTX | "$AWK" 'NR>1' | "$AWK" '{print $6}') + TEST=$(echo "$RET_PARTX" | "$TR" -s ' ' | "$SED" -e '1d' -e 's/^ //' | "$CUT" -d ' ' -f 6) if [ "z$TEST" == "z" ]; then PART_ROOTFS=$("$BLKID" -L "rootfs" -o device) PART_SYSTEM_DATA=$("$BLKID" -L "system-data" -o device) PART_USER=$("$BLKID" -L "user" -o device) else - PART_ROOTFS=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "rootfs" {print $1}') - PART_SYSTEM_DATA=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "system-data" {print $1}') - PART_USER=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "user" {print $1}') + PART_ROOTFS=${EMMC_DEVICE}p$( + echo "$RET_PARTX" | + "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' | + "$GREP" "rootfs" | "$SED" 's/^ //' | + "$CUT" -d ' ' -f 1) + PART_SYSTEM_DATA=${EMMC_DEVICE}p$( + echo "$RET_PARTX" | + "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' | + "$GREP" "system-data" | "$SED" 's/^ //' | + "$CUT" -d ' ' -f 1) + PART_USER=${EMMC_DEVICE}p$( + echo "$RET_PARTX" | + "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' | + "$GREP" "user" | "$SED" 's/^ //' | + "$CUT" -d ' ' -f 1) fi } @@ -110,15 +125,19 @@ do_create_part_table() { EMMC_DEVICE="/dev/mmcblk0" RET_PARTX=$("$PARTX" -s ${EMMC_DEVICE}) - TEST=$(IFS=; echo $RET_PARTX | "$AWK" 'NR>1' | "$AWK" '{print $6}') + TEST=$(echo "$RET_PARTX" | "$TR" -s ' ' | "$SED" -e '1d' -e 's/^ //' | "$CUT" -d ' ' -f 6) if [ "z$TEST" == "z" ]; then - RET_PARTX=$("$BLKID" -o full | "$GREP" ${EMMC_DEVICE}p | "$SED" 's/\/dev\/mmcblk0p//g' | - "$AWK" '{for (n=1;n<=NF;n++) if($n ~ "LABEL") print $1 " " toupper($n)}' | - "$SED" 's/LABEL=//g' | "$SED" 's/[\"\:]//g' | "$SORT" -k 1 -n) + RET_PARTX=$("$BLKID" -o full | "$GREP" ${EMMC_DEVICE}p | + "$SED" -e 's/\/dev\/mmcblk0p//g' -e 's/\ .*LABEL=\"\(.*\).*$/\1/' | + "$CUT" -d '"' -f 1 | "$SED" 's/\:/\ /' | + "$TR" '[:lower:]' '[:upper:]' | + "$SORT" -k 1 -n) else - RET_PARTX=$("$PARTX" -s ${EMMC_DEVICE} | "$AWK" 'NR>1' | "$AWK" '{print $1 " " toupper($6)}') + RET_PARTX=$("$PARTX" -s ${EMMC_DEVICE} | "$SED" -e '1d' -e 's/^ //' | + "$TR" -s ' ' | "$CUT" -d ' ' -f 1,6 | + "$TR" '[:lower:]' '[:upper:]') fi - PART_NUM=$(echo "$RET_PARTX" | "$AWK" 'END{print FNR}') + PART_NUM=$(echo "$RET_PARTX" | "$WC" -l) echo "$PART_NUM" > ${PART_TBL_PATH} echo "$RET_PARTX" >> ${PART_TBL_PATH} diff --git a/scripts/fus_rw-init.sh b/scripts/fus_rw-init.sh index 422d2aa..8eaa034 100755 --- a/scripts/fus_rw-init.sh +++ b/scripts/fus_rw-init.sh @@ -11,9 +11,11 @@ INT_LOG_FILE=${INT_LOG_DIR}/fota_internal.log MOUNT="/bin/mount" UMOUNT="/bin/umount" GREP="/bin/grep" -AWK="/usr/bin/awk" +CUT="/usr/bin/cut" +TR="/usr/bin/tr" PARTX="/usr/sbin/partx" BLKID="/usr/sbin/blkid" +SED="/usr/bin/sed" SYSTEM_DATA_MNT=opt USER_MNT=opt/usr @@ -24,15 +26,27 @@ USER_MNT=opt/usr get_partition_id() { EMMC_DEVICE="/dev/mmcblk0" RET_PARTX=$("$PARTX" -s ${EMMC_DEVICE}) - TEST=$(IFS=; echo $RET_PARTX | "$AWK" 'NR>1' | "$AWK" '{print $6}') + TEST=$(echo "$RET_PARTX" | "$TR" -s ' ' | "$SED" -e '1d' -e 's/^ //' | "$CUT" -d ' ' -f 6) if [ "z$TEST" == "z" ]; then PART_ROOTFS=$("$BLKID" -L "rootfs" -o device) PART_SYSTEM_DATA=$("$BLKID" -L "system-data" -o device) PART_USER=$("$BLKID" -L "user" -o device) else - PART_ROOTFS=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "rootfs" {print $1}') - PART_SYSTEM_DATA=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "system-data" {print $1}') - PART_USER=${EMMC_DEVICE}p$(IFS=; echo $RET_PARTX | "$AWK" 'tolower($6) == "user" {print $1}') + PART_ROOTFS=${EMMC_DEVICE}p$( + echo "$RET_PARTX" | + "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' | + "$GREP" "rootfs" | "$SED" 's/^ //' | + "$CUT" -d ' ' -f 1) + PART_SYSTEM_DATA=${EMMC_DEVICE}p$( + echo "$RET_PARTX" | + "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' | + "$GREP" "system-data" | "$SED" 's/^ //' | + "$CUT" -d ' ' -f 1) + PART_USER=${EMMC_DEVICE}p$( + echo "$RET_PARTX" | + "$TR" -s ' ' | "$TR" '[:upper:]' '[:lower:]' | + "$GREP" "user" | "$SED" 's/^ //' | + "$CUT" -d ' ' -f 1) fi }