Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 381339 - app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:11:16: error: unexpected token in '.macro' directive
Summary: app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:11:16: error: unexpected to...
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo QEMU Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-31 17:48 UTC by Aleksander Balicki
Modified: 2012-01-25 04:54 UTC (History)
1 user (show)

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


Attachments
emerge --info (emerge-info,6.80 KB, text/plain)
2011-09-03 18:30 UTC, Aleksander Balicki
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Aleksander Balicki 2011-08-31 17:48:18 UTC
Compilation crashes with the log:

[32;01m * [39;49;00mPackage:    app-emulation/qemu-kvm-0.14.1-r2
[32;01m * [39;49;00mRepository: gentoo
[32;01m * [39;49;00mMaintainer: qemu@gentoo.org
[32;01m * [39;49;00mUSE:        aio alsa curl elibc_glibc jpeg kernel_linux ncurses png qemu_softmmu_targets_x86_64 sasl sdl ssl threads userland_GNU vhost-net x86
[32;01m * [39;49;00mFEATURES:   ccache sandbox
>>> [1m[37mcfg-update-1.8.2-r1[0m[0m: Checksum index is up-to-date ...
 [32;01m*[0m Determining the location of the kernel source code
 [32;01m*[0m Found kernel source directory:
 [32;01m*[0m     /usr/src/linux
 [32;01m*[0m Found kernel object directory:
 [32;01m*[0m     /lib/modules/3.0.1-gentoo/build
 [32;01m*[0m Found sources for kernel version:
 [32;01m*[0m     3.0.1-gentoo
>>> Unpacking source...
>>> Unpacking qemu-kvm-0.14.1.tar.gz to /var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/work
>>> Unpacking qemu-kvm-0.14.1-backports-2.tar.bz2 to /var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/work
>>> Source unpacked in /var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/work
>>> Preparing source in /var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/work/qemu-kvm-0.14.1 ...
 [32;01m*[0m Applying qemu-0.11.0-mips64-user-fix.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m Applying various patches (bugfixes/updates) ...
 [32;01m*[0m   0001-Ignore-pci-unplug-requests-for-unpluggable-devices-C.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0002-qxl-spice-display-move-pipe-to-ssd.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0003-qxl-implement-get_command-in-vga-mode-without-locks.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0004-qxl-spice-remove-qemu_mutex_-un-lock_iothread-around.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0005-hw-qxl-render-drop-cursor-locks-replace-with-pipe.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0006-char-Split-out-tcp-socket-close-code-in-a-separate-f.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0007-char-Add-a-QemuChrHandlers-struct-to-initialise-char.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0008-iohandlers-Add-enable-disable_write_fd_handler-funct.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0009-char-Add-framework-for-a-write-unblocked-callback.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0010-char-Update-send_all-to-handle-nonblocking-chardev-w.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0011-char-Equip-the-unix-tcp-backend-to-handle-nonblockin.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0012-char-Throttle-when-host-connection-is-down.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0013-virtio-console-Enable-port-throttling-when-chardev-i.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0014-spice-qemu-char.c-add-throttling.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0015-spice-qemu-char.c-remove-intermediate-buffer.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0016-chardev-Allow-frontends-to-notify-backends-of-guest-.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0017-virtio-console-notify-backend-of-guest-open-close.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0018-spice-chardev-listen-to-frontend-guest-open-close.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0019-spice-qemu-char-Fix-flow-control-in-client-guest-dir.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m   0020-virtqueue-Sanity-check-the-length-of-indirect-descri.patch ...
[A[133C [34;01m[ [32;01mok[34;01m ][0m
 [32;01m*[0m Done with patching
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/work/qemu-kvm-0.14.1 ...
 [32;01m*[0m Building the following softmmu targets:  x86_64-softmmu
Install prefix    /usr
BIOS directory    /usr/share/qemu
binary directory  /usr/bin
config directory  /etc
Manual directory  /usr/share/man
ELF interp prefix /usr/gnemul/qemu-%M
Source path       /var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/work/qemu-kvm-0.14.1
C compiler        clang
Host C compiler   i686-pc-linux-gnu-gcc
CFLAGS            -O2 -g -O2 -march=i686 -pipe
QEMU_CFLAGS       -m32 -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wendif-labels -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing  -fstack-protector-all -Wmissing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-definition -Wtype-limits
LDFLAGS           -Wl,--warn-common -m32 -g -Wl,-z,execheap -Wl,-O1 -Wl,--as-needed
make              make
install           install
host CPU          i386
host big endian   no
target list        x86_64-softmmu 
tcg debug enabled no
Mon debug enabled no
gprof enabled     no
sparse enabled    no
strip binaries    no
profiler          no
static build      no
-Werror enabled   no
SDL support       yes
curses support    yes
curl support      yes
check support     no
mingw32 support   no
Audio drivers     sdl alsa oss
Extra audio cards ac97 es1370 sb16 hda
Block whitelist   
Mixer emulation   no
VNC TLS support   yes
VNC SASL support  yes
VNC JPEG support  yes
VNC PNG support   yes
VNC thread        yes
xen support       no
CPU emulation     yes
brlapi support    no
bluez  support    no
Documentation     yes
NPTL support      yes
GUEST_BASE        yes
PIE user targets  no
vde support       no
IO thread         no
Linux AIO support yes
ATTR/XATTR support yes
Install blobs     yes
KVM support       yes
KVM PIT support   yes
KVM device assig. yes
fdt support       no
preadv support    yes
fdatasync         yes
madvise           yes
posix_madvise     yes
uuid support      yes
vhost-net support yes
Trace backend     nop
Trace output file trace-<pid>
spice support     no
rbd support       no
xfsctl support    no
>>> Source configured.
>>> Compiling source in /var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/work/qemu-kvm-0.14.1 ...
make -j3 
  GEN   x86_64-softmmu/config-devices.mak
  GEN   config-all-devices.mak
  GEN   qemu-options.texi
  GEN   qemu-monitor.texi
  GEN   qemu-img-cmds.texi
  GEN   qemu-tech.html
  GEN   qemu-img.1
  GEN   qemu-nbd.8
  GEN   QMP/qmp-commands.txt
  GEN   config-host.h
  GEN   trace.h
  GEN   qemu-options.def
  GEN   trace.c
  GEN   qemu-img-cmds.h
  GEN   qemu-doc.html
  AS    optionrom/multiboot.o
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:11:16: error: unexpected token in '.macro' directive
.macro read_fw VAR
               ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:12:7: error: invalid character in input
 mov $\VAR, %ax
      ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:12:7: error: unknown token in expression
 mov $\VAR, %ax
      ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:24:6: error: unexpected '.endm' in file, no current macro definition
.endm
     ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:33:8: error: .code16 not supported yet
.code16; .text; .global _start; _start:; .short 0xaa55; .byte (_end - _start) / 512; push %eax; push %ds; xor %ax, %ax; mov %ax, %ds; movw $int19_handler, (0x19*4); mov %cs, (0x19*4 +2); pop %ds; pop %eax; lret; int19_handler:; movw %cs, %ax; movw %ax, %ds;
       ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:73:2: error: invalid instruction mnemonic 'read_fw'
 read_fw 0x0a; mov %eax, %edi; read_fw 0x0b; mov %eax, %ecx; mov $0x12, %ax; mov $0x510, %edx; outw %ax, (%dx); mov $0x511, %dx; cld; .dc.b 0xf3,0x6c
 ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:73:32: error: invalid instruction mnemonic 'read_fw'
 read_fw 0x0a; mov %eax, %edi; read_fw 0x0b; mov %eax, %ecx; mov $0x12, %ax; mov $0x510, %edx; outw %ax, (%dx); mov $0x511, %dx; cld; .dc.b 0xf3,0x6c
                               ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:73:135: warning: ignoring directive for now
 read_fw 0x0a; mov %eax, %edi; read_fw 0x0b; mov %eax, %ecx; mov $0x12, %ax; mov $0x510, %edx; outw %ax, (%dx); mov $0x511, %dx; cld; .dc.b 0xf3,0x6c
                                                                                                                                      ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:76:2: error: invalid instruction mnemonic 'read_fw'
 read_fw 0x0a
 ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:97:2: warning: ignoring directive for now
 .dc.b 0x26,0x67,0x66,0x89,0x4f,0xfc
 ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:125:17: error: unexpected token in argument list
 data32 lgdt %gs:6
                ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:133:15: error: unknown token in expression
 data32 ljmp *%gs:0
              ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:136:8: error: .code32 not supported yet
.code32
       ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:147:2: error: invalid instruction mnemonic 'read_fw'
 read_fw 0x07; mov %eax, %edi; read_fw 0x08; mov %eax, %ecx; mov $0x11, %ax; mov $0x510, %edx; outw %ax, (%dx); mov $0x511, %dx; cld; .dc.b 0xf3,0x6c
 ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:147:32: error: invalid instruction mnemonic 'read_fw'
 read_fw 0x07; mov %eax, %edi; read_fw 0x08; mov %eax, %ecx; mov $0x11, %ax; mov $0x510, %edx; outw %ax, (%dx); mov $0x511, %dx; cld; .dc.b 0xf3,0x6c
                               ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:147:135: warning: ignoring directive for now
 read_fw 0x07; mov %eax, %edi; read_fw 0x08; mov %eax, %ecx; mov $0x11, %ax; mov $0x510, %edx; outw %ax, (%dx); mov $0x511, %dx; cld; .dc.b 0xf3,0x6c
                                                                                                                                      ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:150:2: error: invalid instruction mnemonic 'read_fw'
 read_fw 0x10
 ^
/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/cc-CMNca1.s:154:2: error: invalid instruction mnemonic 'read_fw'
 read_fw 0x0a
 ^
make[1]: *** [multiboot.o] Error 1
make: *** [romsubdir-optionrom] Error 2
make: *** Waiting for unfinished jobs....
emake failed
 [31;01m*[0m ERROR: app-emulation/qemu-kvm-0.14.1-r2 failed (compile phase):
 [31;01m*[0m   emake failed
 [31;01m*[0m 
 [31;01m*[0m Call stack:
 [31;01m*[0m     ebuild.sh, line   56:  Called src_compile
 [31;01m*[0m   environment, line 3503:  Called _eapi2_src_compile
 [31;01m*[0m     ebuild.sh, line  669:  Called die
 [31;01m*[0m The specific snippet of code:
 [31;01m*[0m   		emake || die "emake failed"
 [31;01m*[0m 
 [31;01m*[0m If you need support, post the output of 'emerge --info =app-emulation/qemu-kvm-0.14.1-r2',
 [31;01m*[0m the complete build log and the output of 'emerge -pqv =app-emulation/qemu-kvm-0.14.1-r2'.
 [31;01m*[0m The complete build log is located at '/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/build.log'.
 [31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/temp/environment'.
 [31;01m*[0m S: '/var/tmp/portage/app-emulation/qemu-kvm-0.14.1-r2/work/qemu-kvm-0.14.1'

after asking on #llvm:

19:39:33   zygoloid> alistra_: looks like you need -no-integrated-as
19:39:53   alistra_> as a clang parameter? zygoloid 
19:40:30  zygoloid> yeah. that .s file is using some gas features which llvm's assembler doesn't (currently) support


Reproducible: Always

Steps to Reproduce:
1. CC=clang CXX=clang++ emerge qemu-kvm
Actual Results:  
crash pasted above

Expected Results:  
compile normally like gcc does
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2011-09-03 16:52:23 UTC
Please post your `emerge --info' output too.
Comment 2 Aleksander Balicki 2011-09-03 18:30:42 UTC
Created attachment 285445 [details]
emerge --info
Comment 3 Doug Goldstein (RETIRED) gentoo-dev 2012-01-25 04:54:10 UTC
Please retest with a newer clang and qemu-kvm.