Making all in magic make[2]: Entering directory `/usr/opt/portage/var/tmp/portage/sys-apps/file-4.23/work/file-4.23/magic' cat ./Header ./Localstuff > magic for frag in Magdir/acorn Magdir/adi Magdir/adventure Magdir/allegro Magdir/alliant Magdir/alpha Magdir/amanda Magdir/amigaos Magdir/animation Magdir/apl Magdir/apple Magdir/applix Magdir/archive Magdir/asterix Magdir/att3b Magdir/audio Magdir/basis Magdir/bflt Magdir/blender Magdir/blit Magdir/bout Magdir/bsdi Magdir/btsnoop Magdir/cad Magdir/cafebabe Magdir/c-lang Magdir/c64 Magdir/cddb Magdir/chord Magdir/cisco Magdir/citrus Magdir/claris Magdir/clipper Magdir/cracklib Magdir/spec Magdir/commands Magdir/communications Magdir/compress Magdir/console Magdir/convex Magdir/ctags Magdir/dact Magdir/database Magdir/diamond Magdir/diff Magdir/digital Magdir/dolby Magdir/dump Magdir/editors Magdir/efi Magdir/elf Magdir/encore Magdir/epoc Magdir/esri Magdir/fcs Magdir/filesystems Magdir/flash Magdir/fonts Magdir/fortran Magdir/frame Magdir/freebsd Magdir/fsav Magdir/games Magdir/geos Magdir/gcc Magdir/gimp Magdir/gnu Magdir/grace Magdir/gringotts Magdir/hitachi-sh Magdir/hp Magdir/human68k Magdir/ibm370 Magdir/ibm6000 Magdir/iff Magdir/images Magdir/intel Magdir/interleaf Magdir/island Magdir/ispell Magdir/java Magdir/jpeg Magdir/karma Magdir/lecter Magdir/lex Magdir/lif Magdir/linux Magdir/lisp Magdir/mach Magdir/macintosh Magdir/magic Magdir/mail.news Magdir/maple Magdir/mathematica Magdir/matroska Magdir/mcrypt Magdir/mime Magdir/mips Magdir/mirage Magdir/misctools Magdir/mkid Magdir/mlssa Magdir/mmdf Magdir/modem Magdir/motorola Magdir/msdos Magdir/msvc Magdir/mup Magdir/natinst Magdir/ncr Magdir/netbsd Magdir/netscape Magdir/news Magdir/nitpicker Magdir/ocaml Magdir/octave Magdir/olf Magdir/os2 Magdir/os400 Magdir/os9 Magdir/osf1 Magdir/palm Magdir/parix Magdir/pbm Magdir/pdf Magdir/pdp Magdir/perl Magdir/pgp Magdir/pkgadd Magdir/plan9 Magdir/plus5 Magdir/printer Magdir/project Magdir/psdbms Magdir/psion Magdir/pulsar Magdir/pyramid Magdir/python Magdir/revision Magdir/riff Magdir/rpm Magdir/rtf Magdir/sc Magdir/sccs Magdir/sendmail Magdir/sequent Magdir/sgi Magdir/sgml Magdir/sharc Magdir/sinclair Magdir/sketch Magdir/smalltalk Magdir/sniffer Magdir/dyadic Magdir/scientific Magdir/softquad Magdir/spectrum Magdir/sql Magdir/sun Magdir/sysex Magdir/teapot Magdir/terminfo Magdir/tex Magdir/tgif Magdir/ti-8x Magdir/timezone Magdir/troff Magdir/tuxedo Magdir/typeset Magdir/unknown Magdir/unicode Magdir/uuencode Magdir/varied.out Magdir/varied.script Magdir/vax Magdir/vicar Magdir/virtutech Magdir/visx Magdir/vms Magdir/vmware Magdir/vorbis Magdir/vxl Magdir/wordprocessors Magdir/xdelta Magdir/xenix Magdir/xo65 Magdir/xwindows Magdir/zilog Magdir/zyxel; do \ if test -f ./$frag; then \ f=./$frag; \ else \ f=$frag; \ fi; \ cat $f; \ done >> magic ../src/file -C -m magic magic, 983: Warning type `ledouble x \baspect:%.2f,' invalid magic, 984: Warning type `ledouble x \bfps:%.2f' invalid lt-file: could not find any magic files! make[2]: *** [magic.mgc] Error 255 make[2]: Leaving directory `/usr/opt/portage/var/tmp/portage/sys-apps/file-4.23/work/file-4.23/magic' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/opt/portage/var/tmp/portage/sys-apps/file-4.23/work/file-4.23' make: *** [all] Error 2 * ERROR: sys-apps/file-4.23 failed: * emake failed * * Call stack: * ebuild.sh: 46: <call src_compile> * environment:3097: emake || die "emake failed"; Manually running lt-file against the magic file results in the same output: $ ./lt-file -C -m ../../magic/magic ../../magic/magic, 983: Warning type `ledouble x \baspect:%.2f,' invalid ../../magic/magic, 984: Warning type `ledouble x \bfps:%.2f' invalid lt-file: could not find any magic files! However, if those two lines are removed, then lt-file completes successfully, and the build completes.
can this be an endian problem that was misdetected or something? sparc and ppc do work fine here
From memory, these two lines were the only instances of 'ledouble' in the file... Is there anything I can do to help clarify the situation?
I'm still in the dark as to what ledouble is and why IRIX doesn't like it
according to bug #209627 this works with USE="-python"?
I ran into this very bug when trying to emerge something else (this was a dependency) for a ppc on a x86.
I'm getting a similar error when crosscompiling for arm on my amd64 machine, not sure if it's a different bug: file -C -m ./magic.mime for frag in Magdir/acorn Magdir/adi Magdir/adventure Magdir/allegro Magdir/alliant Magdir/alpha Magdir/amanda Magdir/amigaos Magdir/animation Magdir/apl Magdir/apple Magdir/applix Magdir/archive Magdir/asterix Magdir/att3b Magdir/audio Magdir/basis Magdir/bflt Magdir/blender Magdir/blit Magdir/bout Magdir/bsdi Magdir/btsnoop Magdir/cad Magdir/cafebabe Magdir/c-lang Magdir/c64 Magdir/cddb Magdir/chord Magdir/cisco Magdir/citrus Magdir/claris Magdir/clipper Magdir/cracklib Magdir/spec Magdir/commands Magdir/communications Magdir/compress Magdir/console Magdir/convex Magdir/ctags Magdir/dact Magdir/database Magdir/diamond Magdir/diff Magdir/digital Magdir/dolby Magdir/dump Magdir/editors Magdir/efi Magdir/elf Magdir/encore Magdir/epoc Magdir/esri Magdir/fcs Magdir/filesystems Magdir/flash Magdir/fonts Magdir/fortran Magdir/frame Magdir/freebsd Magdir/fsav Magdir/games Magdir/geos Magdir/gcc Magdir/gimp Magdir/gnu Magdir/grace Magdir/gringotts Magdir/hitachi-sh Magdir/hp Magdir/human68k Magdir/ibm370 Magdir/ibm6000 Magdir/iff Magdir/images Magdir/intel Magdir/interleaf Magdir/island Magdir/ispell Magdir/java Magdir/jpeg Magdir/karma Magdir/lecter Magdir/lex Magdir/lif Magdir/linux Magdir/lisp Magdir/mach Magdir/macintosh Magdir/magic Magdir/mail.news Magdir/maple Magdir/mathematica Magdir/matroska Magdir/mcrypt Magdir/mime Magdir/mips Magdir/mirage Magdir/misctools Magdir/mkid Magdir/mlssa Magdir/mmdf Magdir/modem Magdir/motorola Magdir/msdos Magdir/msvc Magdir/mup Magdir/natinst Magdir/ncr Magdir/netbsd Magdir/netscape Magdir/news Magdir/nitpicker Magdir/ocaml Magdir/octave Magdir/olf Magdir/os2 Magdir/os400 Magdir/os9 Magdir/osf1 Magdir/palm Magdir/parix Magdir/pbm Magdir/pdf Magdir/pdp Magdir/perl Magdir/pgp Magdir/pkgadd Magdir/plan9 Magdir/plus5 Magdir/printer Magdir/project Magdir/psdbms Magdir/psion Magdir/pulsar Magdir/pyramid Magdir/python Magdir/revision Magdir/riff Magdir/rpm Magdir/rtf Magdir/sc Magdir/sccs Magdir/sendmail Magdir/sequent Magdir/sgi Magdir/sgml Magdir/sharc Magdir/sinclair Magdir/sketch Magdir/smalltalk Magdir/sniffer Magdir/dyadic Magdir/scientific Magdir/softquad Magdir/spectrum Magdir/sql Magdir/sun Magdir/sysex Magdir/teapot Magdir/terminfo Magdir/tex Magdir/tgif Magdir/ti-8x Magdir/timezone Magdir/troff Magdir/tuxedo Magdir/typeset Magdir/unknown Magdir/unicode Magdir/uuencode Magdir/varied.out Magdir/varied.script Magdir/vax Magdir/vicar Magdir/virtutech Magdir/visx Magdir/vms Magdir/vmware Magdir/vorbis Magdir/vxl Magdir/wordprocessors Magdir/xdelta Magdir/xenix Magdir/xo65 Magdir/xwindows Magdir/zilog Magdir/zyxel; do \ if test -f ./$frag; then \ f=./$frag; \ else \ f=$frag; \ fi; \ cat $f; \ done >> magic file -C -m magic magic, 2252: Warning: <= not supported magic, 3910: Warning: <= not supported magic, 5963: Warning: <= not supported magic, 5966: Warning: <= not supported magic, 7880: Warning: >= not supported file: could not find any magic files! make[2]: *** [magic.mgc] Error 1 make[2]: Leaving directory `/var/tmp/portage/sys-apps/file-4.23/work/file-4.23/magic' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/sys-apps/file-4.23/work/file-4.23' make: *** [all] Error 2
how about file-5.00 by the way?
(In reply to comment #7) > how about file-5.00 by the way? > sys-apps/file-5.00-r2 installed fine for me (again, I'm not using Gentoo Prefix, I'm crosscompiling for arm, so it might be unrelated to the original bug)
Unfortunately, file-4.23 was the last version to compile on IRIX :( file-5.00-r2 fails with: cc-1204 cc: WARNING File = getopt_long.c, Line = 360 The indicated declaration is not visible outside of the function. const struct option *long_options; ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 408 The expression must be a pointer to a complete object type. for (i = 0; long_options[i].name; i++) { ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 410 The expression must be a pointer to a complete object type. if (strncmp(current_argv, long_options[i].name, ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 414 The expression must be a pointer to a complete object type. if (strlen(long_options[i].name) == ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 423 The expression must be a pointer to a complete object type. else if (!IDENTICAL_INTERPRETATION(i, match)) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 423 The expression must be a pointer to a complete object type. else if (!IDENTICAL_INTERPRETATION(i, match)) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 423 The expression must be a pointer to a complete object type. else if (!IDENTICAL_INTERPRETATION(i, match)) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 423 The expression must be a pointer to a complete object type. else if (!IDENTICAL_INTERPRETATION(i, match)) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 423 The expression must be a pointer to a complete object type. else if (!IDENTICAL_INTERPRETATION(i, match)) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 423 The expression must be a pointer to a complete object type. else if (!IDENTICAL_INTERPRETATION(i, match)) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 435 The expression must be a pointer to a complete object type. if (long_options[match].has_arg == no_argument ^ cc-1020 cc: ERROR File = getopt_long.c, Line = 435 The identifier "no_argument" is undefined. if (long_options[match].has_arg == no_argument ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 444 The expression must be a pointer to a complete object type. if (long_options[match].flag == NULL) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 445 The expression must be a pointer to a complete object type. optopt = long_options[match].val; ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 450 The expression must be a pointer to a complete object type. if (long_options[match].has_arg == required_argument || ^ cc-1020 cc: ERROR File = getopt_long.c, Line = 450 The identifier "required_argument" is undefined. if (long_options[match].has_arg == required_argument || ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 451 The expression must be a pointer to a complete object type. long_options[match].has_arg == optional_argument) { ^ cc-1020 cc: ERROR File = getopt_long.c, Line = 451 The identifier "optional_argument" is undefined. long_options[match].has_arg == optional_argument) { ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 454 The expression must be a pointer to a complete object type. else if (long_options[match].has_arg == ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 463 The expression must be a pointer to a complete object type. if ((long_options[match].has_arg == required_argument) ^ cc-1020 cc: ERROR File = getopt_long.c, Line = 463 The identifier "required_argument" is undefined. if ((long_options[match].has_arg == required_argument) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 475 The expression must be a pointer to a complete object type. if (long_options[match].flag == NULL) ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 476 The expression must be a pointer to a complete object type. optopt = long_options[match].val; ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 488 The expression must be a pointer to a complete object type. if (long_options[match].flag) { ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 489 The expression must be a pointer to a complete object type. *long_options[match].flag = long_options[match].val; ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 489 The expression must be a pointer to a complete object type. *long_options[match].flag = long_options[match].val; ^ cc-3316 cc: ERROR File = getopt_long.c, Line = 492 The expression must be a pointer to a complete object type. retval = long_options[match].val; ^ 26 errors detected in the compilation of "getopt_long.c". make[2]: *** [getopt_long.lo] Error 1 make[2]: Leaving directory `/usr/opt/gentoo/var/tmp/portage/sys-apps/file-5.00-r2/work/file-5.00/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/opt/gentoo/var/tmp/portage/sys-apps/file-5.00-r2/work/file-5.00' make: *** [all] Error 2 * ERROR: sys-apps/file-5.00-r2 failed: * emake failed * * Call stack: * ebuild.sh: 49: <call src_compile> * environment:3396: emake || die "emake failed";
(In reply to comment #9) > Unfortunately, file-4.23 was the last version to compile on IRIX :( so how did you fix it then?
duping it on 232737, both versions aren't in the tree any more *** This bug has been marked as a duplicate of bug 232737 ***
> > Unfortunately, file-4.23 was the last version to compile on IRIX :( > so how did you fix it then? > file-4.23 built but failed when trying to process the 'magic' file (as per comment #1), which can be manually altered to allow it to complete. Anything later fails to even compile (as per comment #9) - but it's possible that gnulib might be able to provide a suitable getopt_long implementation which will allow it to succeed.