diff options
Diffstat (limited to 'squashfs_utils')
-rwxr-xr-x | squashfs_utils/mksquashfsimage.sh | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/squashfs_utils/mksquashfsimage.sh b/squashfs_utils/mksquashfsimage.sh index 7f96cb1f..c1eec7b5 100755 --- a/squashfs_utils/mksquashfsimage.sh +++ b/squashfs_utils/mksquashfsimage.sh @@ -5,7 +5,7 @@ function usage() { cat<<EOT Usage: -${0##*/} SRC_DIR OUTPUT_FILE [-m MOUNT_POINT] [-c FILE_CONTEXTS] [-b BLOCK_SIZE] +${0##*/} SRC_DIR OUTPUT_FILE [-s] [-m MOUNT_POINT] [-c FILE_CONTEXTS] [-b BLOCK_SIZE] EOT } @@ -24,6 +24,12 @@ fi OUTPUT_FILE=$2 shift; shift +SPARSE=false +if [[ "$1" == "-s" ]]; then + SPARSE=true + shift; +fi + MOUNT_POINT= if [[ "$1" == "-m" ]]; then MOUNT_POINT=$2 @@ -56,6 +62,17 @@ fi MAKE_SQUASHFS_CMD="mksquashfs $SRC_DIR $OUTPUT_FILE -no-progress -comp lz4 -Xhc -no-exports -noappend -no-recovery -android-fs-config $OPT" echo $MAKE_SQUASHFS_CMD $MAKE_SQUASHFS_CMD + if [ $? -ne 0 ]; then exit 4 fi + +SPARSE_SUFFIX=".sparse" +if [ "$SPARSE" = true ]; then + img2simg $OUTPUT_FILE $OUTPUT_FILE$SPARSE_SUFFIX + if [ $? -ne 0 ]; then + exit 4 + fi + mv $OUTPUT_FILE$SPARSE_SUFFIX $OUTPUT_FILE +fi + |