local minor=${version[1]}
local sfdisk_new=0
local support_delete=0
+ local sfdisk_37=0
if [ $major -gt 2 ]; then
sfdisk_new=1
if [ $major -eq 2 -a $minor -ge 28 ]; then
support_delete=1
fi
+ if [ $major -eq 2 -a $minor -ge 37 ]; then
+ sfdisk_37=1
+ fi
fi
fi
if [ $support_delete == 1 ]; then
sfdisk --delete $DISK
fi
-
- sfdisk $DISK <<-__EOF__
- 4MiB,${BOOT_SZ}MiB,0xE,*
- 8MiB,${ROOTFS_SZ}MiB,,-
- 8MiB,${DATA_SZ}MiB,,-
- 8MiB,,E,-
- ,${USER_SZ}MiB,,-
- ,${MODULE_SZ}MiB,,-
- ,${RAMDISK_SZ}MiB,,-
- ,${RAMDISK_RECOVERY_SZ}MiB,,-
- ,${INFORM_SZ}MiB,,-
- ,${HAL_SZ}MiB,,-
- ,${RESERVED2_SZ}MiB,,-
- __EOF__
+ if [ $sfdisk_37 == 1 ] ; then
+ sfdisk $DISK <<-__EOF__
+ 4MiB,${BOOT_SZ}MiB,0xE,*
+ ,${ROOTFS_SZ}MiB,,-
+ ,${DATA_SZ}MiB,,-
+ 12MiB,,E,-
+ ,${USER_SZ}MiB,,-
+ ,${MODULE_SZ}MiB,,-
+ ,${RAMDISK_SZ}MiB,,-
+ ,${RAMDISK_RECOVERY_SZ}MiB,,-
+ ,${INFORM_SZ}MiB,,-
+ ,${HAL_SZ}MiB,,-
+ ,${RESERVED2_SZ}MiB,,-
+ __EOF__
+ else
+ sfdisk $DISK <<-__EOF__
+ 4MiB,${BOOT_SZ}MiB,0xE,*
+ 8MiB,${ROOTFS_SZ}MiB,,-
+ 8MiB,${DATA_SZ}MiB,,-
+ 12MiB,,E,-
+ ,${USER_SZ}MiB,,-
+ ,${MODULE_SZ}MiB,,-
+ ,${RAMDISK_SZ}MiB,,-
+ ,${RAMDISK_RECOVERY_SZ}MiB,,-
+ ,${INFORM_SZ}MiB,,-
+ ,${HAL_SZ}MiB,,-
+ ,${RESERVED2_SZ}MiB,,-
+ __EOF__
+ fi
else
# calculate start positions for alignment for extended partitions
let "USER_START = 4 + $BOOT_SZ + $ROOTFS_SZ + $DATA_SZ + 1"