Hello As the title says, tar 1.28 fails to build on Darwin 14.0. The error messages seem to indicate that this is related to xattrs, but using ./configure --without-xattrs results in the same output. This also seems unrelated to the use of clang (as opposed to gcc): using clang works fine on a GNU/Linux system. The output of make follows.
Firas /Library/Developer/CommandLineTools/usr/bin/make all-recursive Making all in doc make[2]: Nothing to be done for `all'. Making all in gnu GEN alloca.h GEN configmake.h GEN c++defs.h GEN arg-nonnull.h GEN warn-on-use.h GEN dirent.h GEN fcntl.h GEN fnmatch.h GEN getopt.h GEN inttypes.h GEN langinfo.h GEN locale.h GEN unused-parameter.h GEN selinux/selinux.h GEN selinux/context.h GEN signal.h GEN stdint.h GEN stdio.h GEN stdlib.h GEN string.h GEN strings.h GEN sys/stat.h GEN sys/time.h GEN sys/types.h GEN time.h GEN unistd.h GEN unitypes.h GEN uniwidth.h GEN wchar.h GEN wctype.h /Library/Developer/CommandLineTools/usr/bin/make all-recursive CC copy-acl.o CC set-acl.o CC allocator.o CC areadlink.o CC areadlinkat.o CC argmatch.o CC argp-ba.o CC argp-eexst.o CC argp-fmtstream.o CC argp-fs-xinl.o CC argp-help.o CC argp-parse.o CC argp-pin.o CC argp-pv.o CC argp-pvh.o CC argp-xinl.o CC argp-version-etc.o CC backupfile.o CC bitrotate.o CC c-ctype.o CC c-strcasecmp.o CC c-strncasecmp.o CC careadlinkat.o CC cloexec.o CC close-stream.o CC closeout.o CC opendir-safer.o CC dirname.o CC basename.o CC dirname-lgpl.o CC basename-lgpl.o CC stripslash.o CC exclude.o CC exitfail.o CC chmodat.o CC chownat.o CC fd-hook.o CC fdutimensat.o CC filenamecat-lgpl.o CC fprintftime.o CC full-write.o CC gettime.o CC hash.o CC human.o CC imaxtostr.o CC inttostr.o CC offtostr.o CC uinttostr.o CC umaxtostr.o CC localcharset.o CC malloca.o CC mbchar.o CC mbscasecmp.o CC mbuiter.o CC modechange.o CC openat-die.o CC parse-datetime.o CC priv-set.o CC progname.o CC acl-errno-valid.o CC file-has-acl.o CC qcopy-acl.o CC qset-acl.o CC quotearg.o CC safe-read.o CC safe-write.o CC save-cwd.o CC savedir.o CC se-context.o CC se-selinux.o CC stat-time.o CC statat.o CC strftime.o CC strnlen1.o CC tempname.o CC timespec.o CC unistd.o CC dup-safer.o CC fd-safer.o CC pipe-safer.o CC uniwidth/width.o CC unlinkdir.o CC utimens.o CC version-etc.o CC version-etc-fsf.o CC wctype-h.o CC xmalloc.o CC xalloc-die.o CC xgetcwd.o CC xsize.o CC xstrndup.o CC xstrtol.o CC xstrtoul.o CC xstrtol-error.o CC xstrtoumax.o CC xvasprintf.o CC xasprintf.o CC acl_entries.o CC asnprintf.o CC canonicalize-lgpl.o CC chdir-long.o CC chown.o CC error.o error.c:383:12: warning: data argument not used by format string [-Wformat-extra-args] file_name, line_number); ^ 1 warning generated. CC euidaccess.o CC fchownat.o CC fnmatch.o CC fpending.o CC fstatat.o CC futimens.o CC getcwd.o CC getcwd-lgpl.o CC getgroups.o CC getopt.o CC getopt1.o CC group-member.o CC lchown.o CC link.o CC lstat.o CC mempcpy.o CC memrchr.o CC mkfifo.o CC mkfifoat.o CC mknod.o CC mknodat.o CC mktime.o CC obstack.o CC open.o CC openat.o CC openat-proc.o CC printf-args.o CC printf-parse.o CC ptsname_r.o CC rawmemchr.o CC readlink.o CC regex.o In file included from regex.c:72: ./regex_internal.c:1394:11: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare] if (idx < 0 || idx >= set->nelem) ~~~ ^ ~ 1 warning generated. CC rename.o CC renameat.o CC rpmatch.o CC secure_getenv.o CC selinux-at.o CC setenv.o CC stat.o CC strchrnul.o CC strerror.o CC strerror-override.o CC symlink.o CC unlink.o CC unlinkat.o CC utimensat.o CC vasnprintf.o CC wcwidth.o AR libgnu.a /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(argp-fs-xinl.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(argp-xinl.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(bitrotate.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(chmodat.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(chownat.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(fd-hook.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(mbuiter.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(priv-set.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(se-context.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(se-selinux.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(stat-time.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(statat.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(timespec.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(unistd.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(wctype-h.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(xsize.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(getcwd-lgpl.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(argp-fs-xinl.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(argp-xinl.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(bitrotate.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(chmodat.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(chownat.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(fd-hook.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(mbuiter.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(priv-set.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(se-context.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(se-selinux.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(stat-time.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(statat.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(timespec.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(unistd.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(wctype-h.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(xsize.o) has no symbols /Library/Developer/CommandLineTools/usr/bin/ranlib: file: libgnu.a(getcwd-lgpl.o) has no symbols GEN charset.alias GEN ref-add.sed GEN ref-del.sed Making all in lib GEN rmt-command.h /Library/Developer/CommandLineTools/usr/bin/make all-am CC paxerror.o CC paxexit-status.o CC paxnames.o CC prepargs.o CC rtapelib.o CC stdopen.o CC wordsplit.o CC xattr-at.o In file included from xattr-at.c:40: ../gnu/at-func.c:77:12: error: too few arguments to function call, expected 6, have 5 return CALL_FUNC (file); ^~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:65:1: note: 'setxattr' declared here int setxattr(const char *path, const char *name, const void *value, siz... ^ In file included from xattr-at.c:40: ../gnu/at-func.c:95:35: error: too few arguments to function call, expected 6, have 5 FUNC_RESULT proc_result = CALL_FUNC (proc_file); ^~~~~~~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:65:1: note: 'setxattr' declared here int setxattr(const char *path, const char *name, const void *value, siz... ^ In file included from xattr-at.c:40: ../gnu/at-func.c:132:9: error: too few arguments to function call, expected 6, have 5 err = CALL_FUNC (file); ^~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:65:1: note: 'setxattr' declared here int setxattr(const char *path, const char *name, const void *value, siz... ^ In file included from xattr-at.c:52: ../gnu/at-func.c:77:12: warning: implicit declaration of function 'lsetxattr' is invalid in C99 [-Wimplicit-function-declaration] return CALL_FUNC (file); ^ ../gnu/at-func.c:46:24: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ^ xattr-at.c:48:20: note: expanded from macro 'AT_FUNC_F1' #define AT_FUNC_F1 lsetxattr ^ In file included from xattr-at.c:65: ../gnu/at-func.c:77:12: error: too few arguments to function call, expected 6, have 4 return CALL_FUNC (file); ^~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:61:1: note: 'getxattr' declared here ssize_t getxattr(const char *path, const char *name, void *value, size_... ^ In file included from xattr-at.c:65: ../gnu/at-func.c:95:35: error: too few arguments to function call, expected 6, have 4 FUNC_RESULT proc_result = CALL_FUNC (proc_file); ^~~~~~~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:61:1: note: 'getxattr' declared here ssize_t getxattr(const char *path, const char *name, void *value, size_... ^ In file included from xattr-at.c:65: ../gnu/at-func.c:132:9: error: too few arguments to function call, expected 6, have 4 err = CALL_FUNC (file); ^~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:61:1: note: 'getxattr' declared here ssize_t getxattr(const char *path, const char *name, void *value, size_... ^ In file included from xattr-at.c:79: ../gnu/at-func.c:77:12: warning: implicit declaration of function 'lgetxattr' is invalid in C99 [-Wimplicit-function-declaration] return CALL_FUNC (file); ^ ../gnu/at-func.c:46:24: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ^ xattr-at.c:75:20: note: expanded from macro 'AT_FUNC_F1' #define AT_FUNC_F1 lgetxattr ^ In file included from xattr-at.c:92: ../gnu/at-func.c:77:12: error: too few arguments to function call, expected 4, have 3 return CALL_FUNC (file); ^~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:73:1: note: 'listxattr' declared here ssize_t listxattr(const char *path, char *namebuff, size_t size, int options); ^ In file included from xattr-at.c:92: ../gnu/at-func.c:95:35: error: too few arguments to function call, expected 4, have 3 FUNC_RESULT proc_result = CALL_FUNC (proc_file); ^~~~~~~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:73:1: note: 'listxattr' declared here ssize_t listxattr(const char *path, char *namebuff, size_t size, int options); ^ In file included from xattr-at.c:92: ../gnu/at-func.c:132:9: error: too few arguments to function call, expected 4, have 3 err = CALL_FUNC (file); ^~~~~~~~~~~~~~~~ ../gnu/at-func.c:46:60: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ~~~~~~~~~~ ^ /usr/include/sys/xattr.h:73:1: note: 'listxattr' declared here ssize_t listxattr(const char *path, char *namebuff, size_t size, int options); ^ In file included from xattr-at.c:105: ../gnu/at-func.c:77:12: warning: implicit declaration of function 'llistxattr' is invalid in C99 [-Wimplicit-function-declaration] return CALL_FUNC (file); ^ ../gnu/at-func.c:46:24: note: expanded from macro 'CALL_FUNC' # define CALL_FUNC(F) (AT_FUNC_F1 (F AT_FUNC_POST_FILE_ARGS)) ^ xattr-at.c:102:20: note: expanded from macro 'AT_FUNC_F1' #define AT_FUNC_F1 llistxattr ^ 3 warnings and 9 errors generated. make[3]: *** [xattr-at.o] Error 1 make[2]: *** [all] Error 2 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2