Summary: | sys-fs/dosfstools fails to compile on armv7a-hardened-musl | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Michael Jones <gentoo> |
Component: | Current packages | Assignee: | Gentoo's Team for Core System packages <base-system> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | musl, tsmksubc |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 430702 | ||
Attachments: |
Upstream patch
Suggested patch for ebuild |
Description
Michael Jones
2016-02-13 20:14:15 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; ^ 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; ^ 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 # Should probably be linked to: https://bugs.gentoo.org/show_bug.cgi?id=430702 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 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.) Created attachment 426230 [details, diff]
Upstream patch
Created attachment 426232 [details, diff]
Suggested patch for ebuild
New version sys-fs/dosfstools-4.0-r1 builds fine. 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 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. fixed upstream and in tree, please close :) |