add sparse support for f2fs

Description:
modify I/O operations to support writing in sparse format
build host executable for making sparse image

Tests:
Using host executable:
./make_f2fs_host -S2000000000 userdata.img
fastboot flash userdata userdata.img

Using target executable:
adb push $OUT/system/bin/make_f2fs /system/bin
fastboot erase userdata

Analyzing the output image:
./make_f2fs_host -S2000000000 userdata.img
./make_f2fs_host test.img
simg2img userdata.img output.img
hexdump -C output.img >> output.txt
hexdump -C test.img >> test.txt

Bug: 62493641

Change-Id: I7589e1ee4ae597523d32c214944b40c8f7df07b6
Merged-In: I7589e1ee4ae597523d32c214944b40c8f7df07b6
5 files changed