+diff -u -r ../coreutils-8.26/lib/stat-size.h ./lib/stat-size.h
+--- ../coreutils-8.26/lib/stat-size.h 2016-07-15 15:47:39.000000000 -0400
++++ ./lib/stat-size.h 2017-01-09 16:49:31.758957157 -0500
+@@ -71,9 +71,13 @@
+ suffice, since "cat" sometimes multiplies the result by 4.) If
+ anyone knows of a system for which this limit is too small, please
+ report it as a bug in this code. */
+-# define ST_BLKSIZE(statbuf) ((0 < (statbuf).st_blksize \
++/* Termux patch: Cast to long since on 32-bit Android this otherwise
++ results in an unsigned long, which breaks comparison with e.g.
++ signed off_t in tail.c, see:
++ https://github.com/termux/termux-app/issues/233 */
++# define ST_BLKSIZE(statbuf) ((long) ((0 < (statbuf).st_blksize \
+ && (statbuf).st_blksize <= ((size_t)-1) / 8 + 1) \
+- ? (statbuf).st_blksize : DEV_BSIZE)
++ ? (statbuf).st_blksize : DEV_BSIZE))
+ # if defined hpux || defined __hpux__ || defined __hpux
+ /* HP-UX counts st_blocks in 1024-byte units.
+ This loses when mixing HP-UX and BSD file systems with NFS. */