<div dir="ltr"><div>Hi,</div><div><br></div><div>1. If this happens, let's call it src/gallium/frontends/gl.</div><div><br></div><div>3. The src directory already has too much stuff.</div><div></div><div><br></div><div>Marek<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Dec 6, 2021 at 6:51 PM Dylan Baker <<a href="mailto:dylan@pnwbakers.com">dylan@pnwbakers.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Classic is gone, and the cleanups have begun, obviously. There is<br>
another cleanup that I had in mind, which is moving src/mesa into<br>
src/gallium/frontends/mesa. This makes the build system a little<br>
cleaner, as currently we do some bending over backwards to get gallium,<br>
mesa, and their tests built in the right order. But that's a big ol `git<br>
mv`, and when I proposed it Dave and Ilia suggested it would be best to<br>
do all of the post-classic code motion at once. So, let's talk about<br>
what we want to move, and where we want to move it.<br>
<br>
Among the suggestions we had were:<br>
<br>
1. Move src/mesa into src/gallium/frontends/mesa (I have patches for<br>
   this)<br>
<br>
   Seems like a pretty obvoius thing to do, given that all of the other<br>
   gallium state trackers live there (OpenCL, video, d3d9, etc)<br>
<br>
2. Move src/compiler/glsl into src/gallium/frontends/mesa as well<br>
<br>
    Given that there are now no? drivers that use GLSL-IR directly, it<br>
    might make sense to move the glsl compiler into the mesa<br>
    state_tracker, and just have that lower to TGSI or NIR, and treat<br>
    GLSL-IR as an implementation detail of the OpenGL frontend.<br>
<br>
    Unfortunately, there are a lot of code outside of glsl that uses the<br>
    linked list implementation in the glsl compiler, and not the on in<br>
    util.<br>
<br>
3. Move src/gallium* to src/<br>
<br>
    This was suggested, though given the existance of Vulkan, it wasn't<br>
    clear that this was a good idea or not<br>
<br>
4. What to do about the src/loader, src/glx, src/egl, src/mapi,<br>
   src/glapi<br>
<br>
    These are all part of OpenGL, but not really part of gallium, but if<br>
    we don't move src/gallium/* to src/ does it make sense to leave them<br>
    in the root?<br>
<br>
<br>
Cheers,<br>
Dylan</blockquote></div>