31.05.2017 15:00, Kamil Rytarowski wrote: > Currently ivshmem requires eventfd() which is Linux specific. > Do not and build it unconditionally on every Linux/BSD/Solaris. > > This patch indirectly fixes build failure on NetBSD, where these tools > additionally require -lrt for shm_open(3). In future there should be > added support for NetBSD and the linking addressed appropriately.
Unfortunately this breaks static build. $ ../configure --disable-system --disable-linux-user --static $ make V=1 ... c++ -I/usr/include/pixman-1 -Werror -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/include/libpng16 -I/build/qemu/git/tests -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -g -Wl,--warn-common -m64 -static -g -o ivshmem-server libqemuutil.a libqemustub.a -lm -lgthread-2.0 -pthread -lglib-2.0 -pthread -lpcre -pthread -lz -lrt -lz -lnettle -lutil /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/crt1.o: In function `_start': (.text+0x20): undefined reference to `main' collect2: error: ld returned 1 exit status Makefile:475: error building «ivshmem-server» $ _ I'll take a look at this later. reverting it for now. Thanks, /mjt