Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 574654 - sys-fs/dosfstools fails to compile on armv7a-hardened-musl
Summary: sys-fs/dosfstools fails to compile on armv7a-hardened-musl
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: musl-porting
  Show dependency tree
 
Reported: 2016-02-13 20:14 UTC by Michael Jones
Modified: 2021-11-05 08:00 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Upstream patch (dosfstools-3.0.28-uint.patch,1.93 KB, patch)
2016-02-22 16:24 UTC, Felix Janda
Details | Diff
Suggested patch for ebuild (dosfstools-3.0.28.ebuild.patch,469 bytes, patch)
2016-02-22 16:25 UTC, Felix Janda
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Jones 2016-02-13 20:14:15 UTC
server-blade-one portage # zcat /var/lib/container/armv7a-hardfp-hardened-musl//var/tmp/portage/sys-fs/dosfstools-3.0.28/temp/build.log.gz
 * Package:    sys-fs/dosfstools-3.0.28
 * Repository: gentoo
 * Maintainer: base-system@gentoo.org
 * USE:        arm elibc_musl kernel_linux userland_GNU
 * FEATURES:   preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
>>> Unpacking dosfstools-3.0.28.tar.xz to /var/tmp/portage/sys-fs/dosfstools-3.0.28/work
>>> Source unpacked in /var/tmp/portage/sys-fs/dosfstools-3.0.28/work
>>> Preparing source in /var/tmp/portage/sys-fs/dosfstools-3.0.28/work/dosfstools-3.0.28 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sys-fs/dosfstools-3.0.28/work/dosfstools-3.0.28 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/sys-fs/dosfstools-3.0.28/work/dosfstools-3.0.28 ...
make -j30
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o fatlabel.o src/fatlabel.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o boot.o src/boot.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o check.o src/check.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o common.o src/common.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o fat.o src/fat.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o file.o src/file.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o io.o src/io.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o lfn.o src/lfn.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o charconv.o src/charconv.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o fsck.fat.o src/fsck.fat.c
armv7a-hardfloat-linux-musleabi-gcc -O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard  -Wall -Wextra -Wno-sign-compare -Wno-missing-field-initializers -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings   -D_FILE_OFFSET_BITS=6
4 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -c -o mkfs.fat.o src/mkfs.fat.c
src/io.c:33:0: warning: "_LARGEFILE64_SOURCE" redefined
 #define _LARGEFILE64_SOURCE
 ^
<command-line>:0:0: note: this is the location of the previous definition
In file included from src/boot.c:34:0:
src/fsck.fat.h:138:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
src/fsck.fat.h:139:5: error: unknown type name ‘loff_t’
     loff_t lfn_offset;
     ^
src/fsck.fat.h:152:5: error: unknown type name ‘loff_t’
     loff_t fat_start;
     ^
src/fsck.fat.h:157:5: error: unknown type name ‘loff_t’
     loff_t root_start;
     ^
src/fsck.fat.h:159:5: error: unknown type name ‘loff_t’
     loff_t data_start;
     ^
src/fsck.fat.h:162:5: error: unknown type name ‘loff_t’
     loff_t fsinfo_start; /* 0 if not present */
     ^
src/fsck.fat.h:164:5: error: unknown type name ‘loff_t’
     loff_t backupboot_start; /* 0 if not present */
     ^
In file included from src/boot.c:35:0:
src/fat.h:52:1: error: unknown type name ‘loff_t’
 loff_t cluster_start(DOS_FS * fs, uint32_t cluster);
 ^
In file included from src/boot.c:36:0:
src/io.h:32:1: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
 ^
src/io.h:32:23: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
                       ^
src/io.h:41:14: error: unknown type name ‘loff_t’
 void fs_read(loff_t pos, int size, void *data);
              ^
src/io.h:46:13: error: unknown type name ‘loff_t’
 int fs_test(loff_t pos, int size);
             ^
src/io.h:51:15: error: unknown type name ‘loff_t’
 void fs_write(loff_t pos, int size, void *data);
               ^
In file included from src/boot.c:37:0:
src/boot.h:28:1: error: unknown type name ‘loff_t’
 loff_t find_volume_de(DOS_FS * fs, DIR_ENT * de);
 ^
In file included from src/boot.c:38:0:
src/check.h:26:1: error: unknown type name ‘loff_t’
 loff_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern);
 ^
src/boot.c: In function ‘check_backup_boot’:
src/boot.c:157:6: warning: implicit declaration of function ‘fs_write’ [-Wimplicit-function-declaration]
      fs_write(fs->backupboot_start, sizeof(*b), b);
      ^
src/boot.c:158:16: error: ‘loff_t’ undeclared (first use in this function)
      fs_write((loff_t) offsetof(struct boot_sector, backup_boot),
                ^
src/boot.c:158:16: note: each undeclared identifier is reported only once for each function it appears in
In file included from src/fsck.fat.h:31:0,
                 from src/boot.c:34:
src/boot.c:158:24: error: expected ‘)’ before ‘__builtin_offsetof’
      fs_write((loff_t) offsetof(struct boot_sector, backup_boot),
                        ^
src/boot.c:166:5: warning: implicit declaration of function ‘fs_read’ [-Wimplicit-function-declaration]
     fs_read(fs->backupboot_start, sizeof(b2), &b2);
     ^
Comment 1 Michael Jones 2016-02-13 20:15:00 UTC
src/boot.c: In function ‘read_fsinfo’:
src/boot.c:236:13: error: ‘loff_t’ undeclared (first use in this function)
   fs_write((loff_t) s * lss, sizeof(i), &i);
             ^
src/boot.c:236:21: error: expected ‘)’ before ‘s’
   fs_write((loff_t) s * lss, sizeof(i), &i);
                     ^
In file included from src/fsck.fat.h:31:0,
                 from src/boot.c:34:
src/boot.c:238:21: error: expected ‘)’ before ‘__builtin_offsetof’
   fs_write((loff_t) offsetof(struct boot_sector, info_sector),
                     ^
src/boot.c: In function ‘read_boot’:
src/boot.c:330:5: error: unknown type name ‘loff_t’
     loff_t data_size;
     ^
src/boot.c:355:5: warning: implicit declaration of function ‘fs_test’ [-Wimplicit-function-declaration]
     fs_test((loff_t) ((total_sectors & ~1) - 1) * (loff_t) logical_sector_size,
     ^
src/boot.c:355:14: error: ‘loff_t’ undeclared (first use in this function)
     fs_test((loff_t) ((total_sectors & ~1) - 1) * (loff_t) logical_sector_size,
              ^
src/boot.c:355:60: error: expected ‘)’ before ‘logical_sector_size’
     fs_test((loff_t) ((total_sectors & ~1) - 1) * (loff_t) logical_sector_size,
                                                            ^
In file included from src/fsck.fat.h:33:0,
                 from src/boot.c:34:
src/boot.c:359:30: error: expected expression before ‘uint16_t’
     fs->fat_start = (loff_t) le16toh(b.reserved) * logical_sector_size;
                              ^
In file included from src/check.c:34:0:
src/fsck.fat.h:138:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
src/boot.c:360:32: error: expected expression before ‘uint16_t’
     fs->root_start = ((loff_t) le16toh(b.reserved) + b.fats * fat_length) *
                                ^
src/fsck.fat.h:139:5: error: unknown type name ‘loff_t’
     loff_t lfn_offset;
     ^
src/fsck.fat.h:152:5: error: unknown type name ‘loff_t’
     loff_t fat_start;
     ^
src/fsck.fat.h:157:5: error: unknown type name ‘loff_t’
     loff_t root_start;
     ^
src/fsck.fat.h:159:5: error: unknown type name ‘loff_t’
     loff_t data_start;
     ^
src/fsck.fat.h:162:5: error: unknown type name ‘loff_t’
     loff_t fsinfo_start; /* 0 if not present */
     ^
src/boot.c:366:26: error: expected ‘;’ before ‘total_sectors’
     data_size = (loff_t) total_sectors *logical_sector_size - fs->data_start;
                          ^
src/fsck.fat.h:164:5: error: unknown type name ‘loff_t’
     loff_t backupboot_start; /* 0 if not present */
     ^
In file included from src/lfn.c:31:0:
src/io.h:32:1: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
 ^
src/io.h:32:23: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
                       ^
src/io.h:41:14: error: unknown type name ‘loff_t’
 void fs_read(loff_t pos, int size, void *data);
              ^
In file included from src/check.c:35:0:
src/io.h:32:1: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
 ^
src/io.h:32:23: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
                       ^
src/io.h:41:14: error: unknown type name ‘loff_t’
 void fs_read(loff_t pos, int size, void *data);
              ^
src/io.h:46:13: error: unknown type name ‘loff_t’
 int fs_test(loff_t pos, int size);
             ^
src/io.h:46:13: error: unknown type name ‘loff_t’
 int fs_test(loff_t pos, int size);
             ^
In file included from src/fatlabel.c:36:0:
src/fsck.fat.h:138:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
src/io.h:51:15: error: unknown type name ‘loff_t’
 void fs_write(loff_t pos, int size, void *data);
               ^
src/io.h:51:15: error: unknown type name ‘loff_t’
 void fs_write(loff_t pos, int size, void *data);
               ^
src/fsck.fat.h:139:5: error: unknown type name ‘loff_t’
     loff_t lfn_offset;
     ^
src/fsck.fat.h:152:5: error: unknown type name ‘loff_t’
     loff_t fat_start;
     ^
src/fsck.fat.h:157:5: error: unknown type name ‘loff_t’
     loff_t root_start;
     ^
In file included from src/check.c:36:0:
src/fat.h:52:1: error: unknown type name ‘loff_t’
 loff_t cluster_start(DOS_FS * fs, uint32_t cluster);
 ^
src/fsck.fat.h:159:5: error: unknown type name ‘loff_t’
     loff_t data_start;
     ^
src/fsck.fat.h:162:5: error: unknown type name ‘loff_t’
     loff_t fsinfo_start; /* 0 if not present */
     ^
src/fsck.fat.h:164:5: error: unknown type name ‘loff_t’
     loff_t backupboot_start; /* 0 if not present */
     ^
In file included from src/check.c:38:0:
src/lfn.h:29:33: error: unknown type name ‘loff_t’
 void lfn_add_slot(DIR_ENT * de, loff_t dir_offset);
                                 ^
src/lfn.h:32:29: error: unknown type name ‘loff_t’
 char *lfn_get(DIR_ENT * de, loff_t * lfn_offset);
                             ^
src/lfn.h:37:23: error: unknown type name ‘loff_t’
 void lfn_fix_checksum(loff_t from, loff_t to, const char *short_name);
                       ^
In file included from src/fatlabel.c:37:0:
src/io.h:32:1: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
 ^
src/io.h:32:23: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
                       ^
src/lfn.h:37:36: error: unknown type name ‘loff_t’
 void lfn_fix_checksum(loff_t from, loff_t to, const char *short_name);
                                    ^
In file included from src/check.c:39:0:
src/check.h:26:1: error: unknown type name ‘loff_t’
 loff_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern);
 ^
src/io.h:41:14: error: unknown type name ‘loff_t’
 void fs_read(loff_t pos, int size, void *data);
              ^
In file included from src/fat.c:33:0:
src/fsck.fat.h:138:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
src/io.h:46:13: error: unknown type name ‘loff_t’
 int fs_test(loff_t pos, int size);
             ^
src/io.h:51:15: error: unknown type name ‘loff_t’
 void fs_write(loff_t pos, int size, void *data);
               ^
src/fsck.fat.h:139:5: error: unknown type name ‘loff_t’
     loff_t lfn_offset;
     ^
src/fsck.fat.h:152:5: error: unknown type name ‘loff_t’
     loff_t fat_start;
     ^
src/check.c:78:1: error: unknown type name ‘loff_t’
 loff_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern)
 ^
src/boot.c: At top level:
In file included from src/fatlabel.c:38:0:
src/boot.h:28:1: error: unknown type name ‘loff_t’
 loff_t find_volume_de(DOS_FS * fs, DIR_ENT * de);
 ^
src/boot.c:494:1: error: unknown type name ‘loff_t’
 loff_t find_volume_de(DOS_FS * fs, DIR_ENT * de)
 ^
src/boot.c: In function ‘find_volume_de’:
src/boot.c:497:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
src/fsck.fat.h:157:5: error: unknown type name ‘loff_t’
     loff_t root_start;
     ^
In file included from src/fatlabel.c:39:0:
src/fat.h:52:1: error: unknown type name ‘loff_t’
 loff_t cluster_start(DOS_FS * fs, uint32_t cluster);
 ^
src/fsck.fat.h:159:5: error: unknown type name ‘loff_t’
     loff_t data_start;
     ^
src/fsck.fat.h:162:5: error: unknown type name ‘loff_t’
     loff_t fsinfo_start; /* 0 if not present */
     ^
src/check.c: In function ‘alloc_rootdir_entry’:
src/fsck.fat.h:164:5: error: unknown type name ‘loff_t’
     loff_t backupboot_start; /* 0 if not present */
     ^
In file included from src/fsck.fat.c:37:0:
src/fsck.fat.h:138:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
src/boot.c: In function ‘write_volume_label’:
src/check.c:81:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
src/fsck.fat.h:139:5: error: unknown type name ‘loff_t’
     loff_t lfn_offset;
     ^
src/fsck.fat.h:152:5: error: unknown type name ‘loff_t’
     loff_t fat_start;
     ^
src/fsck.fat.h:157:5: error: unknown type name ‘loff_t’
     loff_t root_start;
     ^
src/boot.c:528:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
In file included from src/fat.c:34:0:
src/io.h:32:1: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
 ^
src/fsck.fat.h:159:5: error: unknown type name ‘loff_t’
     loff_t data_start;
     ^
src/check.c:87:2: error: unknown type name ‘loff_t’
  loff_t offset2;
  ^
In file included from src/fatlabel.c:41:0:
src/check.h:26:1: error: unknown type name ‘loff_t’
 loff_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern);
 ^
In file included from src/lfn.c:32:0:
src/fsck.fat.h:138:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
In file included from src/io.c:44:0:
src/fsck.fat.h:138:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
<builtin>: recipe for target 'boot.o' failed
src/fsck.fat.h:139:5: error: unknown type name ‘loff_t’
     loff_t lfn_offset;
     ^
make: *** [boot.o] Error 1
src/fsck.fat.h:162:5: error: unknown type name ‘loff_t’
     loff_t fsinfo_start; /* 0 if not present */
     ^
src/io.h:32:23: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
                       ^
src/fsck.fat.h:139:5: error: unknown type name ‘loff_t’
     loff_t lfn_offset;
     ^
Comment 2 Michael Jones 2016-02-13 20:15:13 UTC
make: *** Waiting for unfinished jobs....
src/fsck.fat.h:164:5: error: unknown type name ‘loff_t’
     loff_t backupboot_start; /* 0 if not present */
     ^
src/fsck.fat.h:152:5: error: unknown type name ‘loff_t’
     loff_t fat_start;
     ^
src/fsck.fat.h:152:5: error: unknown type name ‘loff_t’
     loff_t fat_start;
     ^
src/io.h:41:14: error: unknown type name ‘loff_t’
 void fs_read(loff_t pos, int size, void *data);
              ^
src/fsck.fat.h:157:5: error: unknown type name ‘loff_t’
     loff_t root_start;
     ^
src/fsck.fat.h:157:5: error: unknown type name ‘loff_t’
     loff_t root_start;
     ^
src/io.h:46:13: error: unknown type name ‘loff_t’
 int fs_test(loff_t pos, int size);
             ^
src/fsck.fat.h:159:5: error: unknown type name ‘loff_t’
     loff_t data_start;
     ^
src/fsck.fat.h:159:5: error: unknown type name ‘loff_t’
     loff_t data_start;
     ^
In file included from src/fsck.fat.c:38:0:
src/io.h:32:1: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
 ^
src/io.h:32:23: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
                       ^
src/io.h:51:15: error: unknown type name ‘loff_t’
 void fs_write(loff_t pos, int size, void *data);
               ^
src/fsck.fat.h:162:5: error: unknown type name ‘loff_t’
     loff_t fsinfo_start; /* 0 if not present */
     ^
src/fsck.fat.h:162:5: error: unknown type name ‘loff_t’
     loff_t fsinfo_start; /* 0 if not present */
     ^
src/mkfs.fat.c:277:33: error: unknown type name ‘loff_t’
 static int valid_offset(int fd, loff_t offset);
                                 ^
src/io.h:41:14: error: unknown type name ‘loff_t’
 void fs_read(loff_t pos, int size, void *data);
              ^
src/check.c:92:6: warning: implicit declaration of function ‘fs_read’ [-Wimplicit-function-declaration]
      fs_read(offset, sizeof(DIR_ENT), &d2);
      ^
In file included from src/fat.c:35:0:
src/check.h:26:1: error: unknown type name ‘loff_t’
 loff_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern);
 ^
src/fsck.fat.h:164:5: error: unknown type name ‘loff_t’
     loff_t backupboot_start; /* 0 if not present */
     ^
src/fsck.fat.h:164:5: error: unknown type name ‘loff_t’
     loff_t backupboot_start; /* 0 if not present */
     ^
src/io.h:46:13: error: unknown type name ‘loff_t’
 int fs_test(loff_t pos, int size);
             ^
src/io.h:51:15: error: unknown type name ‘loff_t’
 void fs_write(loff_t pos, int size, void *data);
               ^
In file included from src/lfn.c:33:0:
src/lfn.h:29:33: error: unknown type name ‘loff_t’
 void lfn_add_slot(DIR_ENT * de, loff_t dir_offset);
                                 ^
In file included from src/io.c:46:0:
src/io.h:32:1: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
 ^
src/lfn.h:32:29: error: unknown type name ‘loff_t’
 char *lfn_get(DIR_ENT * de, loff_t * lfn_offset);
                             ^
In file included from src/fat.c:36:0:
src/fat.h:52:1: error: unknown type name ‘loff_t’
 loff_t cluster_start(DOS_FS * fs, uint32_t cluster);
 ^
In file included from src/fsck.fat.c:39:0:
src/boot.h:28:1: error: unknown type name ‘loff_t’
 loff_t find_volume_de(DOS_FS * fs, DIR_ENT * de);
 ^
src/lfn.h:37:23: error: unknown type name ‘loff_t’
 void lfn_fix_checksum(loff_t from, loff_t to, const char *short_name);
                       ^
src/io.h:32:23: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence);
                       ^
src/lfn.h:37:36: error: unknown type name ‘loff_t’
 void lfn_fix_checksum(loff_t from, loff_t to, const char *short_name);
                                    ^
src/io.h:41:14: error: unknown type name ‘loff_t’
 void fs_read(loff_t pos, int size, void *data);
              ^
In file included from src/fsck.fat.c:40:0:
src/fat.h:52:1: error: unknown type name ‘loff_t’
 loff_t cluster_start(DOS_FS * fs, uint32_t cluster);
 ^
src/io.h:46:13: error: unknown type name ‘loff_t’
 int fs_test(loff_t pos, int size);
             ^
src/io.h:51:15: error: unknown type name ‘loff_t’
 void fs_write(loff_t pos, int size, void *data);
               ^
src/io.c:50:5: error: unknown type name ‘loff_t’
     loff_t pos;
     ^
src/io.c:74:1: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence)
 ^
src/fatlabel.c: In function ‘main’:
src/fatlabel.c:95:5: error: unknown type name ‘loff_t’
     loff_t offset;
     ^
src/io.c:74:23: error: unknown type name ‘loff_t’
 loff_t llseek(int fd, loff_t offset, int whence)
                       ^
In file included from src/fsck.fat.c:42:0:
src/check.h:26:1: error: unknown type name ‘loff_t’
 loff_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern);
 ^
src/check.c:129:3: warning: implicit declaration of function ‘fs_write’ [-Wimplicit-function-declaration]
   fs_write(offset + i, sizeof(d2), &d2);
   ^
src/lfn.c:56:1: error: unknown type name ‘loff_t’
 loff_t *lfn_offsets = NULL;
 ^
src/io.c:120:14: error: unknown type name ‘loff_t’
 void fs_read(loff_t pos, int size, void *data)
              ^
src/io.c:147:13: error: unknown type name ‘loff_t’
 int fs_test(loff_t pos, int size)
             ^
src/io.c:160:15: error: unknown type name ‘loff_t’
 void fs_write(loff_t pos, int size, void *data)
               ^
src/io.c: In function ‘fs_flush’:
src/io.c:194:2: warning: implicit declaration of function ‘llseek’ [-Wimplicit-function-declaration]
  if (llseek(fd, this->pos, 0) != this->pos)
  ^
src/fat.c: In function ‘read_fat’:
src/fat.c:108:5: warning: implicit declaration of function ‘fs_read’ [-Wimplicit-function-declaration]
     fs_read(fs->fat_start, eff_size, first);
     ^
src/mkfs.fat.c:454:33: error: unknown type name ‘loff_t’
 static int valid_offset(int fd, loff_t offset)
                                 ^
src/mkfs.fat.c: In function ‘count_blocks’:
src/fat.c:121:6: warning: implicit declaration of function ‘fs_write’ [-Wimplicit-function-declaration]
      fs_write(fs->fat_start + fs->fat_size, eff_size, first);
      ^
src/mkfs.fat.c:469:5: error: unknown type name ‘loff_t’
     loff_t high, low;
     ^
src/mkfs.fat.c:480:2: warning: implicit declaration of function ‘valid_offset’ [-Wimplicit-function-declaration]
  for (high = 1; valid_offset(fd, high); high *= 2)
  ^
src/mkfs.fat.c:483:12: error: unknown type name ‘loff_t’
      const loff_t mid = (low + high) / 2;
            ^
src/fat.c: In function ‘set_fat’:
<builtin>: recipe for target 'io.o' failed
make: *** [io.o] Error 1
src/lfn.c: In function ‘clear_lfn_slots’:
src/fat.c:191:5: error: unknown type name ‘loff_t’
     loff_t offs;
     ^
src/lfn.c:170:2: warning: implicit declaration of function ‘fs_write’ [-Wimplicit-function-declaration]
  fs_write(lfn_offsets[i], sizeof(LFN_ENT), &empty);
  ^
src/lfn.c: At top level:
src/lfn.c:174:23: error: unknown type name ‘loff_t’
 void lfn_fix_checksum(loff_t from, loff_t to, const char *short_name)
                       ^
src/lfn.c:174:36: error: unknown type name ‘loff_t’
 void lfn_fix_checksum(loff_t from, loff_t to, const char *short_name)
                                    ^
src/lfn.c:199:33: error: unknown type name ‘loff_t’
 void lfn_add_slot(DIR_ENT * de, loff_t dir_offset)
                                 ^
src/check.c: At top level:
src/check.c:335:24: error: unknown type name ‘loff_t’
 static void lfn_remove(loff_t from, loff_t to)
                        ^
src/check.c:335:37: error: unknown type name ‘loff_t’
 static void lfn_remove(loff_t from, loff_t to)
                                     ^
src/check.c: In function ‘drop_file’:
src/check.c:357:2: warning: implicit declaration of function ‘lfn_remove’ [-Wimplicit-function-declaration]
  lfn_remove(file->lfn_offset, file->offset);
  ^
src/lfn.c:410:29: error: unknown type name ‘loff_t’
 char *lfn_get(DIR_ENT * de, loff_t * lfn_offset)
                             ^
src/fat.c: At top level:
src/fat.c:275:1: error: unknown type name ‘loff_t’
 loff_t cluster_start(DOS_FS * fs, uint32_t cluster)
 ^
src/fat.c: In function ‘cluster_start’:
src/check.c: In function ‘truncate_file’:
src/fat.c:277:31: error: ‘loff_t’ undeclared (first use in this function)
     return fs->data_start + ((loff_t) cluster -
                               ^
src/fat.c:277:31: note: each undeclared identifier is reported only once for each function it appears in
src/check.c:67:12: error: ‘loff_t’ undeclared (first use in this function)
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
            ^
src/check.c:371:2: note: in expansion of macro ‘MODIFY_START’
  MODIFY_START(file, 0, fs);
  ^
src/fat.c:277:39: error: expected ‘)’ before ‘cluster’
     return fs->data_start + ((loff_t) cluster -
                                       ^
src/check.c:67:12: note: each undeclared identifier is reported only once for each function it appears in
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
            ^
src/check.c:371:2: note: in expansion of macro ‘MODIFY_START’
  MODIFY_START(file, 0, fs);
  ^
src/fat.c:275:44: warning: unused parameter ‘cluster’ [-Wunused-parameter]
 loff_t cluster_start(DOS_FS * fs, uint32_t cluster)
                                            ^
In file included from src/fsck.fat.h:31:0,
                 from src/check.c:34:
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:371:2: note: in expansion of macro ‘MODIFY_START’
  MODIFY_START(file, 0, fs);
  ^
src/lfn.c:150:13: warning: ‘copy_lfn_part’ defined but not used [-Wunused-function]
 static void copy_lfn_part(unsigned char *dst, LFN_ENT * lfn)
             ^
src/fat.c: In function ‘fix_bad’:
src/fat.c:320:6: warning: implicit declaration of function ‘fs_test’ [-Wimplicit-function-declaration]
      if (!fs_test(cluster_start(fs, i), fs->cluster_size)) {
      ^
<builtin>: recipe for target 'fatlabel.o' failed
make: *** [fatlabel.o] Error 1
src/check.c: In function ‘auto_rename’:
src/check.c:414:3: warning: implicit declaration of function ‘lfn_fix_checksum’ [-Wimplicit-function-declaration]
   lfn_fix_checksum(file->lfn_offset, file->offset,
   ^
src/fat.c: In function ‘reclaim_file’:
src/fat.c:486:6: error: unknown type name ‘loff_t’
      loff_t offset;
      ^
Comment 3 Michael Jones 2016-02-13 20:15:21 UTC
src/check.c: In function ‘check_file’:
src/check.c:67:12: error: ‘loff_t’ undeclared (first use in this function)
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
            ^
src/check.c:523:3: note: in expansion of macro ‘MODIFY_START’
   MODIFY_START(file, expect, fs);
   ^
In file included from src/fsck.fat.h:31:0,
                 from src/check.c:34:
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:523:3: note: in expansion of macro ‘MODIFY_START’
   MODIFY_START(file, expect, fs);
   ^
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:537:3: note: in expansion of macro ‘MODIFY_START’
   MODIFY_START(file, expect, fs);
   ^
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:553:2: note: in expansion of macro ‘MODIFY_START’
  MODIFY_START(file, 0, fs);
  ^
<builtin>: recipe for target 'fsck.fat.o' failed
make: *** [fsck.fat.o] Error 1
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:562:2: note: in expansion of macro ‘MODIFY_START’
  MODIFY_START(file, 0, fs);
  ^
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:578:3: note: in expansion of macro ‘MODIFY_START’
   MODIFY_START(file, 0, fs);
   ^
src/mkfs.fat.c: In function ‘write_tables’:
src/check.c:588:4: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘long long unsigned int’ [-Wformat=]
    le32toh(file->dir_ent.size));
    ^
src/mkfs.fat.c:1280:5: error: unknown type name ‘loff_t’
     loff_t __pos = (pos);      \
     ^
src/mkfs.fat.c:1300:5: note: in expansion of macro ‘seekto’
     seekto(0, "start of device");
     ^
<builtin>: recipe for target 'lfn.o' failed
make: *** [lfn.o] Error 1
src/mkfs.fat.c:1280:5: error: unknown type name ‘loff_t’
     loff_t __pos = (pos);      \
     ^
src/mkfs.fat.c:1305:5: note: in expansion of macro ‘seekto’
     seekto(0, "boot sector");
     ^
src/mkfs.fat.c:1280:5: error: unknown type name ‘loff_t’
     loff_t __pos = (pos);      \
     ^
src/mkfs.fat.c:1309:2: note: in expansion of macro ‘seekto’
  seekto(le16toh(bs.fat32.info_sector) * sector_size, "info sector");
  ^
In file included from src/fsck.fat.h:31:0,
                 from src/check.c:34:
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:634:8: note: in expansion of macro ‘MODIFY_START’
        MODIFY_START(owner, 0, fs);
        ^
src/mkfs.fat.c:1280:5: error: unknown type name ‘loff_t’
     loff_t __pos = (pos);      \
     ^
src/mkfs.fat.c:1312:6: note: in expansion of macro ‘seekto’
      seekto(backup_boot * sector_size, "backup boot sector");
      ^
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:657:7: note: in expansion of macro ‘MODIFY_START’
       MODIFY_START(file, 0, fs);
       ^
src/mkfs.fat.c:1280:5: error: unknown type name ‘loff_t’
     loff_t __pos = (pos);      \
     ^
src/mkfs.fat.c:1318:5: note: in expansion of macro ‘seekto’
     seekto(reserved_sectors * sector_size, "first FAT");
     ^
src/mkfs.fat.c: In function ‘main’:
src/mkfs.fat.c:1415:18: error: ‘u_int32_t’ undeclared (first use in this function)
     volume_id = (u_int32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); /* Default volume ID = creation time, fudged for more uniqueness */
                  ^
src/mkfs.fat.c:1415:18: note: each undeclared identifier is reported only once for each function it appears in
src/fat.c: In function ‘cluster_start’:
src/fat.c:279:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
src/check.c: In function ‘test_file’:
src/check.c:67:12: error: ‘loff_t’ undeclared (first use in this function)
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
            ^
src/check.c:865:7: note: in expansion of macro ‘MODIFY_START’
       MODIFY_START(file, 0, fs);
       ^
In file included from src/fsck.fat.h:31:0,
                 from src/check.c:34:
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:865:7: note: in expansion of macro ‘MODIFY_START’
       MODIFY_START(file, 0, fs);
       ^
src/check.c:872:6: warning: implicit declaration of function ‘fs_test’ [-Wimplicit-function-declaration]
      if (fs_test(cluster_start(fs, walk), fs->cluster_size)) {
      ^
In file included from src/fsck.fat.h:31:0,
                 from src/check.c:34:
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:881:7: note: in expansion of macro ‘MODIFY_START’
       MODIFY_START(file, next_cluster(fs, walk), fs);
       ^
src/check.c: In function ‘undelete’:
src/check.c:67:12: error: ‘loff_t’ undeclared (first use in this function)
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
            ^
src/check.c:925:2: note: in expansion of macro ‘MODIFY_START’
  MODIFY_START(file, 0, fs);
  ^
In file included from src/fsck.fat.h:31:0,
                 from src/check.c:34:
src/check.c:67:19: error: expected ‘)’ before ‘__builtin_offsetof’
  fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \
                   ^
src/check.c:925:2: note: in expansion of macro ‘MODIFY_START’
  MODIFY_START(file, 0, fs);
  ^
src/check.c: At top level:
src/check.c:951:8: error: unknown type name ‘loff_t’
        loff_t offset, FDSC ** cp)
        ^
src/check.c: In function ‘scan_dir’:
src/check.c:1018:2: warning: implicit declaration of function ‘add_file’ [-Wimplicit-function-declaration]
  add_file(fs, &chain, this,
  ^
src/check.c: At top level:
src/check.c:841:13: warning: ‘test_file’ defined but not used [-Wunused-function]
 static void test_file(DOS_FS * fs, DOS_FILE * file, int read_test)
             ^
src/check.c:898:13: warning: ‘undelete’ defined but not used [-Wunused-function]
 static void undelete(DOS_FS * fs, DOS_FILE * file)
             ^
<builtin>: recipe for target 'fat.o' failed
make: *** [fat.o] Error 1
<builtin>: recipe for target 'check.o' failed
make: *** [check.o] Error 1
<builtin>: recipe for target 'mkfs.fat.o' failed
make: *** [mkfs.fat.o] Error 1
 * ERROR: sys-fs/dosfstools-3.0.28::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=sys-fs/dosfstools-3.0.28::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sys-fs/dosfstools-3.0.28::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/sys-fs/dosfstools-3.0.28/temp/build.log.gz'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-fs/dosfstools-3.0.28/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-fs/dosfstools-3.0.28/work/dosfstools-3.0.28'
 * S: '/var/tmp/portage/sys-fs/dosfstools-3.0.28/work/dosfstools-3.0.28'
ebuild-ipc timed out during read after 15 seconds, retrying...
ebuild-ipc timed out during read after 30 seconds, retrying...
ebuild-ipc timed out during read after 45 seconds, retrying...
server-blade-one portage #
Comment 4 Michael Jones 2016-02-13 20:16:38 UTC
Should probably be linked to: https://bugs.gentoo.org/show_bug.cgi?id=430702
Comment 5 Michael Jones 2016-02-13 20:18:00 UTC
armv7a-hardfp-hardened-musl ~ # emerge --info dosfstools
Portage 2.2.26 (python 2.7.10-final-0, hardened/linux/musl/arm/armv7a, gcc-4.9.3, musl-1.1.12, 4.3.3-hardened-r4 armv7l)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.3.3-hardened-r4-armv7l-with-gentoo-2.2
KiB Mem:    41198476 total,  26861492 free
KiB Swap:   52428796 total,  52409404 free
Timestamp of repository gentoo: Fri, 12 Feb 2016 06:42:24 +0000
sh bash 4.3_p42-r1
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
app-shells/bash:          4.3_p42-r1::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.10-r1::gentoo, 3.4.3-r1::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.19.1::gentoo
sys-apps/sandbox:         2.10-r99::musl
sys-devel/autoconf:       2.69::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo
sys-devel/gcc:            4.9.3-r99::musl
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.16::musl (virtual/os-headers)
sys-libs/musl:            1.1.12::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo
    priority: -1000

musl
    location: /usr/portage-overlays/musl
    masters: gentoo
    priority: 0

Installed sets: @arm-base-system, @portage
ACCEPT_KEYWORDS="arm"
ACCEPT_LICENSE="* -@EULA"
CBUILD="armv7a-hardfloat-linux-musleabi"
CFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard"
CHOST="armv7a-hardfloat-linux-musleabi"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard"
DISTDIR="/usr/portage-distfiles"
EMERGE_DEFAULT_OPTS=" --jobs --keep-going --newuse --deep --backtrack=3000 --complete-graph --with-bdeps=y"
FCFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard"
FEATURES="assume-digests binpkg-logs buildpkg clean-logs compress-build-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms split-elog split-log strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
INSTALL_MASK="charset.alias"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j30"
PKGDIR="/usr/portage-packages"
PORTAGE_COMPRESS="xz"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="a52 aac acpi alsa apng arm autoipd avahi bindist branding cairo cdda cdr cli cracklib crypt cxx dbus dconf dri dts dvd dvdr egl emboss encode exif fam ffmpeg firefox flac fortran gcj gd gif gnome-keyring gpm gstreamer gtk gudev hardened iconv icu ipv6 jpeg lcms libnotify libsecret lm_sensors mad mdnsresponder-compat minizip mng modules mp3 mp4 mpeg ncurses networkmanager nls nptl ogg opengl openmp pango pax_kernel pcre pdf pic png policykit ppds pulseaudio python qt4 qt5 readline samba sdl seccomp session sound spell sqlite ssl startup-notification svg tcpd theora threads tiff truetype udev udisks unicode upower usb vorbis wayland wifi xattr xcb xinerama xml xv xvid zeroconf zlib" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="musl" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="coreboot efi-32 efi-64 emu qemu pc" INPUT_DEVICES="evdev mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_US" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="arm aarch64 i386 x86_64" QEMU_USER_TARGETS="arm aarch64 i386 x86_64" RUBY_TARGETS="ruby20 ruby21 ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="vesa modesetting fbdev" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 6 Felix Janda 2016-02-17 11:08:56 UTC
The loff_t problem would go away if the ebuild didn't remove
_GNU_SOURCE from OPTFLAGS in the Makefile. The use of loff_t has also
been removed upstream:

https://github.com/dosfstools/dosfstools/commit/64486adef77167b67894f3d1c04cf57c9f60bcea

For the musl overlay I would suggest to append_cppflags -DGNU_SOURCE.
(and maybe add a <sys/types.h> include to mkfs.fat.c to fix u_int32_t problem.)
Comment 7 Felix Janda 2016-02-22 16:24:54 UTC
Created attachment 426230 [details, diff]
Upstream patch
Comment 8 Felix Janda 2016-02-22 16:25:59 UTC
Created attachment 426232 [details, diff]
Suggested patch for ebuild
Comment 9 Felix Janda 2016-10-10 22:36:37 UTC
New version sys-fs/dosfstools-4.0-r1 builds fine.
Comment 10 Felix Janda 2016-10-15 14:54:12 UTC
Actually dosfstools-4.0-r1 still doesn't build if the udev USE flag is
enabled. There is a pending upstream pull request for this:

https://github.com/dosfstools/dosfstools/pull/36
Comment 11 tt_1 2016-10-15 18:21:54 UTC
I think that the upstream pull request is not needed, because the relevant inclusion of limits.h has already been commited 

https://github.com/dosfstools/dosfstools/commit/69ac2b0706ff01ea7a8b6efd9f9efa2481895261

This fix is now included into the overlay and fixed for amd64 and x86. The udev useflag works fine here too.
Comment 12 tt_1 2019-03-04 20:30:16 UTC
fixed upstream and in tree, please close :)