Summary: | NameError: name 'libloader' is not defined: | ||
---|---|---|---|
Product: | Mesa | Reporter: | Vinson Lee <vlee> |
Component: | Mesa core | Assignee: | mesa-dev |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | blocker | ||
Priority: | medium | CC: | emil.l.velikov, idr, krh, pedretti.fabio, robclark |
Version: | git | Keywords: | regression |
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
See Also: | https://bugs.freedesktop.org/show_bug.cgi?id=73777 | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | handle builds whenever libdrm is not installed |
Description
Vinson Lee
2014-01-18 21:44:56 UTC
Created attachment 92372 [details] [review] handle builds whenever libdrm is not installed As mentioned in bug 73777 I've folded all three possible fixes in a single patch, to minimise disruption, but if you prefer I can split them apart. Patch identical to the one in bug 73777 attached. The latest git version of mesa fails to build: ----- make[3]: Entering directory `/home/jos/src/xorg/git/mesa/src/gallium/auxiliary/pipe-loader' CC pipe_loader_drm.lo pipe_loader_drm.c: In function 'pipe_loader_drm_probe_fd': pipe_loader_drm.c:120:4: error: implicit declaration of function 'loader_get_pci_id_for_fd' [-Werror=implicit-function-declaration] if (loader_get_pci_id_for_fd(fd, &vendor_id, &chip_id)) { ^ pipe_loader_drm.c:132:4: error: implicit declaration of function 'loader_get_driver_for_fd' [-Werror=implicit-function-declaration] ddev->base.driver_name = loader_get_driver_for_fd(fd, _LOADER_GALLIUM); ^ pipe_loader_drm.c:132:58: error: '_LOADER_GALLIUM' undeclared (first use in this function) ddev->base.driver_name = loader_get_driver_for_fd(fd, _LOADER_GALLIUM); ^ pipe_loader_drm.c:132:58: note: each undeclared identifier is reported only once for each function it appears in cc1: some warnings being treated as errors make[3]: *** [pipe_loader_drm.lo] Error 1 make[3]: Leaving directory `/home/jos/src/xorg/git/mesa/src/gallium/auxiliary/pipe-loader' make[2]: *** [all-recursive] Error 1 ----- > make[3]: Entering directory
> `/home/jos/src/xorg/git/mesa/src/gallium/auxiliary/pipe-loader'
> CC pipe_loader_drm.lo
> pipe_loader_drm.c: In function 'pipe_loader_drm_probe_fd':
> pipe_loader_drm.c:120:4: error: implicit declaration of function
> 'loader_get_pci_id_for_fd' [-Werror=implicit-function-declaration]
> if (loader_get_pci_id_for_fd(fd, &vendor_id, &chip_id)) {
> ^
Same error here on current git.
Interesting... where you guys when I've asked people to test the patches :) Jos van Wolput, Fabio Pedretti Rather than throwing random fragments of the build log, I would appreciate if you guys give us at least the configure options that you're using. Did you guys checked the attached patch ? Might be worth attaching the build log before/after applying it. ./configure --host=i586-suse-linux-gnu --build=i586-suse-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/lib --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking --prefix=/usr --with-gallium-drivers=r600,r300,swrast,nouveau,radeonsi,svga,ilo --with-dri-drivers=i965,i915,r200,radeon --disable-debug --enable-gallium-egl --enable-shared-glapi --enable-glx-tls --enable-texture-float --enable-gles1 --enable-gles2 --with-egl-platforms=x11,drm --enable-opencl --with-llvm-shared-libs --with-egl-platforms=x11,wayland,drm --enable-openvg --enable-xa --enable-vdpau --enable-xvmc --enable-gbm --enable-gallium-gbm --enable-gles1 --enable-gles2 [ 413s] gmake[3]: Entering directory `/home/abuild/rpmbuild/BUILD/mesa/src/egl/main' [ 413s] CC eglapi.lo [ 413s] CC eglarray.lo [ 413s] CC eglconfig.lo [ 413s] CC eglcontext.lo [ 414s] CC eglcurrent.lo [ 414s] CC egldisplay.lo [ 414s] CC egldriver.lo [ 414s] CC eglfallbacks.lo [ 414s] CC eglglobals.lo [ 414s] CC eglimage.lo [ 414s] CC egllog.lo [ 414s] CC eglmisc.lo [ 415s] CC eglmode.lo [ 415s] CC eglscreen.lo [ 415s] CC eglstring.lo [ 415s] CC eglsurface.lo [ 415s] CC eglsync.lo [ 415s] CCLD libEGL.la [ 416s] /usr/bin/mkdir -p ../../../lib; [ 416s] ln -f .libs/libEGL.so.1.0.0 ../../../lib/libEGL.so.1 [ 416s] ln -sf libEGL.so.1 ../../../lib/libEGL.so [ 416s] gmake[3]: Leaving directory `/home/abuild/rpmbuild/BUILD/mesa/src/egl/main' [ 416s] gmake[3]: Entering directory `/home/abuild/rpmbuild/BUILD/mesa/src/egl' [ 416s] gmake[3]: Nothing to be done for `all-am'. [ 416s] gmake[3]: Leaving directory `/home/abuild/rpmbuild/BUILD/mesa/src/egl' [ 416s] gmake[2]: Leaving directory `/home/abuild/rpmbuild/BUILD/mesa/src/egl' [ 416s] Making all in gallium/auxiliary [ 416s] gmake[2]: Entering directory `/home/abuild/rpmbuild/BUILD/mesa/src/gallium/auxiliary' [ 416s] Making all in pipe-loader [ 416s] gmake[3]: Entering directory `/home/abuild/rpmbuild/BUILD/mesa/src/gallium/auxiliary/pipe-loader' [ 416s] CC pipe_loader.lo [ 416s] CC pipe_loader_sw.lo [ 416s] CC pipe_loader_drm.lo [ 416s] pipe_loader_drm.c: In function 'pipe_loader_drm_probe_fd': [ 416s] pipe_loader_drm.c:120:4: error: implicit declaration of function 'loader_get_pci_id_for_fd' [-Werror=implicit-function-declaration] [ 416s] if (loader_get_pci_id_for_fd(fd, &vendor_id, &chip_id)) { [ 416s] ^ [ 416s] pipe_loader_drm.c:132:4: error: implicit declaration of function 'loader_get_driver_for_fd' [-Werror=implicit-function-declaration] [ 416s] ddev->base.driver_name = loader_get_driver_for_fd(fd, _LOADER_GALLIUM); [ 416s] ^ [ 416s] pipe_loader_drm.c:132:58: error: '_LOADER_GALLIUM' undeclared (first use in this function) [ 416s] ddev->base.driver_name = loader_get_driver_for_fd(fd, _LOADER_GALLIUM); [ 416s] ^ [ 416s] pipe_loader_drm.c:132:58: note: each undeclared identifier is reported only once for each function it appears in [ 416s] cc1: some warnings being treated as errors [ 416s] gmake[3]: *** [pipe_loader_drm.lo] Error 1 [ 416s] gmake[3]: *** Waiting for unfinished jobs.... [ 416s] gmake[3]: Leaving directory `/home/abuild/rpmbuild/BUILD/mesa/src/gallium/auxiliary/pipe-loader' [ 416s] gmake[2]: *** [all-recursive] Error 1 [ 416s] gmake[2]: Leaving directory `/home/abuild/rpmbuild/BUILD/mesa/src/gallium/auxiliary' [ 416s] gmake[1]: *** [all-recursive] Error 1 [ 416s] gmake[1]: Leaving directory `/home/abuild/rpmbuild/BUILD/mesa/src' [ 416s] make: *** [all-recursive] Error 1 [ 416s] error: Bad exit status from /var/tmp/rpm-tmp.H3SoeV (%build) I've sent a patch for this not 5 minutes ago. Just pushed a couple of fixes that should address all the reported issues. Namely - bug 73776, bug 73777 and the pipe-loader issue reported via irc and here. Vinson, please update the bugs when you have the chance to check the fix. commit 26d380da69d3fc3a4ced291028c105c0ac0f1a92 Author: Emil Velikov <emil.l.velikov@gmail.com> Date: Sun Jan 19 03:09:03 2014 +0000 loader: ifdef libdrm specific code and include Mesa provides the flexibility of building without the need to have libdrm present on the system. The situation has regressed with the recent commit commit 8c2e7fd8460750543367053b1be9368cc38e1d6a Author: Emil Velikov <emil.l.velikov@gmail.com> Date: Fri Jan 10 23:36:16 2014 +0000 loader: introduce the loader util lib By isolating libdrm code by #ifndef __NOT_HAVE_DRM_H we can have libdrm-less builds on across all build systems. This patch converts Android's _EGL_NO_DRM to __NOT_HAVE_DRM_H to provide consistency with the other cases within mesa, allows compilation of libloader on libdrm-less scons and conditionally links against libdrm if present under automake. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73776 BUgzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73777 Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.