If set USE="sna", following message is displayed and fails to compile. libtool: compile: x86_64-gentoo-freebsd10.0-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/src/sna -I../.. -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wcast-qual -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=array-bounds -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -fno-strict-aliasing -I/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/src -I/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/src/render_program -fvisibility=hidden -D_THREAD_SAFE -I/usr/include/xorg -I/usr/include/X11/dri -I/usr/include/libdrm -I/usr/include/pixman-1 -I/usr/include/libdrm -Wno-cast-qual -Wno-redundant-decls -Wno-maybe-uninitialized -O2 -pipe -ggdb -c /var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/src/sna/kgem.c -fPIC -DPIC -o .libs/kgem.o /var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/src/sna/kgem.c: In function 'cpu_cache_size': /var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/src/sna/kgem.c:781:3: error: implicit declaration of function 'getline' [-Werror=implicit-function-declaration] while (getline(&line, &len, file) != -1) { ^ /var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/src/sna/kgem.c:781:3: warning: nested extern declaration of 'getline' [-Wnested-externs] cc1: some warnings being treated as errors Makefile:527: recipe for target 'kgem.lo' failed gmake[4]: *** [kgem.lo] Error 1 gmake[4]: Leaving directory '/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906_build/src/sna' Makefile:542: recipe for target 'all-recursive' failed gmake[3]: *** [all-recursive] Error 1 gmake[3]: Leaving directory '/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906_build/src/sna' Makefile:508: recipe for target 'all-recursive' failed gmake[2]: *** [all-recursive] Error 1 gmake[2]: Leaving directory '/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906_build/src' Makefile:384: recipe for target 'all-recursive' failed gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory '/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906_build' Makefile:315: recipe for target 'all' failed gmake: *** [all] Error 2 * ERROR: x11-drivers/xf86-video-intel-2.99.906::gentoo failed (compile phase): * emake failed If set USE="uxa -sna", different issues occurs. gmake[2]: Leaving directory '/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906_build/src' Making all in tools gmake[2]: Entering directory '/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906_build/tools' x86_64-gentoo-freebsd10.0-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/tools -I.. -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wcast-qual -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=array-bounds -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -fno-strict-aliasing -D_THREAD_SAFE -I/usr/include/pixman-1 -Wno-cast-qual -Wno-redundant-decls -Wno-maybe-uninitialized -O2 -pipe -ggdb -c /var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/tools/virtual.c /var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906/tools/virtual.c:52:25: fatal error: sys/timerfd.h: No such file or directory #include <sys/timerfd.h> ^ compilation terminated. Makefile:423: recipe for target 'virtual.o' failed gmake[2]: *** [virtual.o] Error 1 gmake[2]: Leaving directory '/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906_build/tools' Makefile:384: recipe for target 'all-recursive' failed gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory '/var/tmp/portage/x11-drivers/xf86-video-intel-2.99.906/work/xf86-video-intel-2.99.906_build' Makefile:315: recipe for target 'all' failed gmake: *** [all] Error 2 * ERROR: x11-drivers/xf86-video-intel-2.99.906::gentoo failed (compile phase): * emake failed
Created attachment 364700 [details, diff] sample patch for configure.ac sys/timerfd.h does not exist on Gentoo/FreeBSD. On Gentoo/FreeBSD) $ equery b timerfd.h * Searching for timerfd.h ... $ On Gentoo/Linux) $ equery b timerfd.h * Searching for timerfd.h ... sys-libs/glibc-2.15-r3 (/usr/include/sys/timerfd.h) $ also, please add "x11-drivers/xf86-video-intel sna" to profiles/default/bsd/package.use.mask "x11-drivers/xf86-video-intel uxa" to profiles/default/bsd/package.use.force Compile pass with these fixes...
I've tested with Intel HD Graphics 4000. Results, I found that some work is required for correct operation. * need this patch to x11-libs/libdrm. http://svnweb.freebsd.org/ports/head/graphics/libdrm/files/extra-xf86drmMode.c?revision=300896&view=co * need this patch to x11-drivers/xf86-video-intel http://svnweb.freebsd.org/ports/head/x11-drivers/xf86-video-intel/files/extra-i915kms?revision=328711&view=co * need <media-libs/mesa-9.2 glxinfo does not work mesa-9.2 or later. $ glxinfo name of display: :0 Gen6+ requires Kernel 3.6 or later. Assertion failed: (newCtx->Version > 0), function _mesa_make_current, file ../../../src/mesa/main/context.c, line 1501. Abort trap
Created attachment 364702 [details] Test steps xf86-video-intel-2.99.906 to work correctly
Created attachment 364704 [details] Results glxinfo, glxgears, xvinfo with mesa-9.1.6
These patches should definitely go upstream. Did you try sending them to the Intel maintainers?
I see configure.ac tests for sys/timerfd.h now. I think it's very likely this is fixed in a new version of the driver. If it's not, please file a bug upstream at bugs.freedesktop.org. We're not prepared to fix driver issues that aren't fixed upstream.