[Mesa-dev] EGL on Windows
José Fonseca
jfonseca at vmware.com
Sun May 30 07:54:49 PDT 2010
On Sun, 2010-05-30 at 05:55 -0700, Jakob Bornecrantz wrote:
> On Sat, May 29, 2010 at 9:49 AM, Chia-I Wu <olvaffe at gmail.com> wrote:
> > On Sat, May 29, 2010 at 1:19 AM, Jakob Bornecrantz <wallbraker at gmail.com> wrote:
> >> On Fri, May 28, 2010 at 8:46 AM, Chia-I Wu <olvaffe at gmail.com> wrote:
> >>> I've got access to a Windows machine recently, and I've spent some time today
> >>> to add GDI backend to st/egl. The code can be found at
> >>> http://cgit.freedesktop.org/~olv/mesa/log/?h=egl-gdi
> >> Cool stuff! Nice work.
> > Thanks.
> >>>
> >>> The command options I use to build the DLLs are
> >>>
> >>> $ scons statetrackers=egl drivers=softpipe
> >> You can also crosscompile easily from Linux if you have
> >> mingw32/mingw-w64 packages installed with scons.
> > The last time I tried, the cross-compiled DLLs didn't load when I
> > tried them on a Windows box. No idea how to investigate that :(
> >>> The DLLs are able to run the "tiger" demo from the OpenVG reference
> >>> implementation (after fixing a bug in the demo) on Windows.
> >>>
> >>> I will clean up the branch as I find the time. It is mostly SConscript work.
> >>> The GDI backend itself is only slightly over 500 lines of code.
> >> I would recommend breaking out the fixes from the SConscript commits.
> >> Most of the fixes can probably be brought in directly. Especially the
> >> "st/vega: Use FREE" commit.
> > Sure. I will do that.
> >
> > About the portability issues. I have to do the following
> >
> > In EGL core,
> > #define snprintf _snprintf
> > #define strcasecmp _stricmp
> >
> > In st/vega,
> > #define isnan _isnanf
> > #define isfinite _finitef
> >
> > Everywhere,
> > #define PUBLIC __declspec(dllexport)
> >
> > Suggestions?
>
> Hey, for the st/vega stuff that should just be a matter of creating
> util_* functions and stuffing them somewhere inside aux/util/.
>
> For the other two I think that José and Kristian where talking about
> moving the aux/os stuff from gallium and into src/os so that it could
> be shared between mesa/gallium/egl. Should that be done I think the
> remaining two would fit into there.
>
> José, Kristian still plans for this?
Plans yes. Time not so much..
> Is this somebody with to much
> time on their hands can take care of?
Sure. It's essentially a janitorial task that anybody minimally familiar
with the code can undertake. My plan was to:
- create a new mesa/src/cgrt subtree (where cgrt stands for common
graphics runtime) which creates a libcgrt.a that will be used by all
mesa/gallium drivers and utilities
- migrate/fork src/gallium/include/pipe/p_config.h and p_compiler.h
into cgrt
- start migrating src/gallium/auxiliary/os -> src/cgrt/os
- migrate the gallium-independent debugging tools from
src/gallium/auxiliary/util into src/cgrt/debug
- migrate the gallium-independent abstract data types from
src/gallium/auxiliary/util into src/cgrt/adt
- etc
Jose
More information about the mesa-dev
mailing list