Bug 93628 - Exception: attempt to use unavailable module DRM when building MesaGL 11.1.0 on windows
Summary: Exception: attempt to use unavailable module DRM when building MesaGL 11.1.0 ...
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Other (show other bugs)
Version: 11.0
Hardware: x86-64 (AMD64) Windows (All)
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-01-07 13:14 UTC by Maurits
Modified: 2016-01-22 15:58 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Maurits 2016-01-07 13:14:12 UTC
downloaded MesaGL 11.1.0

simply running scons, even scons -h will result in:
C:\source\mesa-11.1.0>scons
scons: Reading SConscript files ...
Checking for MSVC ...  yes
Checking for win_flex ...  yes
Checking for win_bison ...  yes
Checking for X11 (x11 xext xdamage xfixes glproto >= 1.4.13)... no
Checking for XCB (x11-xcb xcb-glx >= 1.8.1 xcb-dri2 >= 1.8)... no
Checking for XF86VIDMODE (xxf86vm)... no
Checking for DRM (libdrm >= 2.4.38)... no
Checking for UDEV (libudev >= 151)... no
Exception: Attempt to use unavailable module DRM:
  File "C:\source\mesa-11.1.0\SConstruct", line 138:
    duplicate = 0 # http://www.scons.org/doc/0.97/HTML/scons-user/x2261.html
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 614:
    return method(*args, **kw)
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 551:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 260:
    exec _file_ in call_stack[-1].globals
  File "C:\source\mesa-11.1.0\src\SConscript", line 40:
    SConscript('gallium/SConscript')
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 614:
    return method(*args, **kw)
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 551:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 260:
    exec _file_ in call_stack[-1].globals
  File "C:\source\mesa-11.1.0\src\gallium\SConscript", line 8:
    SConscript('auxiliary/pipe-loader/SConscript')
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 614:
    return method(*args, **kw)
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 551:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Script\SConscript.py", line 260:
    exec _file_ in call_stack[-1].globals
  File "C:\source\mesa-11.1.0\src\gallium\auxiliary\pipe-loader\SConscript", line 23:
    env.PkgUseModules('DRM')
  File "C:\Python27_32\Scripts\..\Lib\site-packages\scons-2.4.0\SCons\Environment.py", line 224:
    return self.method(*nargs, **kwargs)
  File "C:\source\mesa-11.1.0\scons\custom.py", line 218:
    raise Exception('Attempt to use unavailable module %s' % name)


This was working fine for me in for instance 11.0.4. I believe DRM is not available for windows, so this exceptions seems to make it impossible to build 11.1 under windows.
Comment 1 Emil Velikov 2016-01-08 14:20:32 UTC
The following commit should fix it. I'll scoop it up for the next 11.1 release.

commit 02afbd247620bd51a5b1661ced9b01a865136484
Author: Jose Fonseca <jfonseca@vmware.com>
Date:   Sat Nov 21 21:19:57 2015 +0000

    scons: Conditionally use DRM module on pipe-loader.
    
    Fixes non Linux builds.
    
    Trivial.
Comment 2 Maurits 2016-01-14 16:24:20 UTC
After I apply the changes of that patch to the src/gallium/auxiliary/pipe-loader/SConscript file, scons starts, but ends in a compile error:

rc\gallium\auxiliary\pipe-loader\pipe_loader.c(83) : error C2065: 'PATH_MAX' : undeclared identifier
rc\gallium\auxiliary\pipe-loader\pipe_loader.c(83) : error C2057: expected constant expression
rc\gallium\auxiliary\pipe-loader\pipe_loader.c(83) : error C2466: cannot allocate an array of constant size 0
rc\gallium\auxiliary\pipe-loader\pipe_loader.c(83) : error C2133: 'path' : unknown size
rc\gallium\auxiliary\pipe-loader\pipe_loader.c(91) : warning C4034: sizeof returns 0
rc\gallium\auxiliary\pipe-loader\pipe_loader.c(95) : warning C4034: sizeof returns 0
rc\gallium\auxiliary\pipe-loader\pipe_loader.c(98) : warning C4034: sizeof returns 0
Comment 3 Emil Velikov 2016-01-22 15:58:05 UTC
Looks like the we also need commit 4befd82a649 "pipe-loader: Fix PATH_MAX define on MSVC.". I've scooped both for 11.1.2 which should be out in a few days.


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.