vgCreateFont

View: New views
4 Messages — Rating Filter:   Alert me  

vgCreateFont

by Jose Fonseca :: Rate this Message:

| View Threaded | Show Only this Message

Hi Olv,

Vega state tracker started failing to build on windows when I enabled
Win32 threads everywhere. The problem is that windows.h defines
CreateFont as CreateFontA.

I looked at the code, but it was very hard to understand how to tackle
this, due to the mixture of both C-preprocessor and Python scripted code
generation makes things very obfuscated.

Some ideas for the future:

- The point of APIs like OpenVG having unique prefixes like "vg" is to
prevent this sort of name collision, but these macros which concatenate
the prefix/suffix end up defeating it.

- Also given that we're using code generation, I think it would be
better if we just generate everything from the python script without the
c-preprocessor magic.

Anyway, pretty nice seeing the VG state tracker getting love!

Jose

-------- Forwarded Message --------

> mesa-mingw32 - Build # 4095 - Failure:
>
> Log:
> [...truncated 33 lines...]
>   Compiling src/mapi/mapi/u_thread.c ...
> src/mapi/mapi/u_thread.c: In function ‘InsteadOf_exit’:
> src/mapi/mapi/u_thread.c:118: warning: unused variable ‘dwErr’
>   Compiling src/gallium/state_trackers/wgl/stw_context.c ...
>   Linking build/windows-x86-debug/mapi/vgapi/libOpenVG.dll ...
>   Compiling src/gallium/state_trackers/wgl/stw_device.c ...
>   Compiling src/gallium/state_trackers/wgl/stw_ext_extensionsstring.c ...
>   Compiling src/gallium/state_trackers/wgl/stw_ext_gallium.c ...
>   Compiling src/gallium/state_trackers/wgl/stw_ext_pbuffer.c ...
>   Compiling src/gallium/state_trackers/wgl/stw_ext_pixelformat.c ...
>   Compiling src/gallium/state_trackers/wgl/stw_ext_swapinterval.c ...
>   Compiling src/gallium/state_trackers/wgl/stw_framebuffer.c ...
>   Compiling src/gallium/state_trackers/wgl/stw_getprocaddress.c ...
> Creating library file: build/windows-x86-debug/mapi/vgapi/liblibOpenVG.abuild/windows-x86-debug/mapi/vgapi/stub.o: In function `stub_fix_dynamic':
> /var/lib/hudson/jobs/mesa-mingw32/workspace/src/mapi/mapi/stub.c:180: undefined reference to `_vgCreateFontA'
> collect2: ld returned 1 exit status
>
> scons: *** [build/windows-x86-debug/mapi/vgapi/libOpenVG.dll] Error 1
> scons: building terminated because of errors.
> [WARNINGS] Skipping publisher since build result is FAILURE
> Archiving artifacts
> Recording fingerprints
> Email was triggered for: Failure
> Sending email for trigger: Failure
>
>
> Changes:
> Changes for Build #4095
> [José Fonseca] WIN32_THREADS -> WIN32



------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@...
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Re: vgCreateFont

by Chia-I Wu-2 :: Rate this Message:

| View Threaded | Show Only this Message

On Fri, Dec 3, 2010 at 3:39 AM, José Fonseca <jfonseca@...> wrote:

> Hi Olv,
>
> Vega state tracker started failing to build on windows when I enabled
> Win32 threads everywhere. The problem is that windows.h defines
> CreateFont as CreateFontA.
>
> I looked at the code, but it was very hard to understand how to tackle
> this, due to the mixture of both C-preprocessor and Python scripted code
> generation makes things very obfuscated.
>
> Some ideas for the future:
>
> - The point of APIs like OpenVG having unique prefixes like "vg" is to
> prevent this sort of name collision, but these macros which concatenate
> the prefix/suffix end up defeating it.
>
> - Also given that we're using code generation, I think it would be
> better if we just generate everything from the python script without the
> c-preprocessor magic.
> Anyway, pretty nice seeing the VG state tracker getting love!
I overlooked this issue while working on the dispatcher.  I will make
a switch to python scripts (or maybe simply use glapi).

> Jose
>
> -------- Forwarded Message --------
>> mesa-mingw32 - Build # 4095 - Failure:
>>
>> Log:
>> [...truncated 33 lines...]
>>   Compiling src/mapi/mapi/u_thread.c ...
>> src/mapi/mapi/u_thread.c: In function ‘InsteadOf_exit’:
>> src/mapi/mapi/u_thread.c:118: warning: unused variable ‘dwErr’
>>   Compiling src/gallium/state_trackers/wgl/stw_context.c ...
>>   Linking build/windows-x86-debug/mapi/vgapi/libOpenVG.dll ...
>>   Compiling src/gallium/state_trackers/wgl/stw_device.c ...
>>   Compiling src/gallium/state_trackers/wgl/stw_ext_extensionsstring.c ...
>>   Compiling src/gallium/state_trackers/wgl/stw_ext_gallium.c ...
>>   Compiling src/gallium/state_trackers/wgl/stw_ext_pbuffer.c ...
>>   Compiling src/gallium/state_trackers/wgl/stw_ext_pixelformat.c ...
>>   Compiling src/gallium/state_trackers/wgl/stw_ext_swapinterval.c ...
>>   Compiling src/gallium/state_trackers/wgl/stw_framebuffer.c ...
>>   Compiling src/gallium/state_trackers/wgl/stw_getprocaddress.c ...
>> Creating library file: build/windows-x86-debug/mapi/vgapi/liblibOpenVG.abuild/windows-x86-debug/mapi/vgapi/stub.o: In function `stub_fix_dynamic':
>> /var/lib/hudson/jobs/mesa-mingw32/workspace/src/mapi/mapi/stub.c:180: undefined reference to `_vgCreateFontA'
>> collect2: ld returned 1 exit status
>>
>> scons: *** [build/windows-x86-debug/mapi/vgapi/libOpenVG.dll] Error 1
>> scons: building terminated because of errors.
>> [WARNINGS] Skipping publisher since build result is FAILURE
>> Archiving artifacts
>> Recording fingerprints
>> Email was triggered for: Failure
>> Sending email for trigger: Failure
>>
>>
>> Changes:
>> Changes for Build #4095
>> [José Fonseca] WIN32_THREADS -> WIN32
>
>
>



--
olv@...

------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@...
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Re: vgCreateFont

by Chia-I Wu-2 :: Rate this Message:

| View Threaded | Show Only this Message

On Fri, Dec 3, 2010 at 2:21 PM, Chia-I Wu <olvaffe@...> wrote:

> On Fri, Dec 3, 2010 at 3:39 AM, José Fonseca <jfonseca@...> wrote:
>> Hi Olv,
>>
>> Vega state tracker started failing to build on windows when I enabled
>> Win32 threads everywhere. The problem is that windows.h defines
>> CreateFont as CreateFontA.
>>
>> I looked at the code, but it was very hard to understand how to tackle
>> this, due to the mixture of both C-preprocessor and Python scripted code
>> generation makes things very obfuscated.
>>
>> Some ideas for the future:
>>
>> - The point of APIs like OpenVG having unique prefixes like "vg" is to
>> prevent this sort of name collision, but these macros which concatenate
>> the prefix/suffix end up defeating it.
>>
>> - Also given that we're using code generation, I think it would be
>> better if we just generate everything from the python script without the
>> c-preprocessor magic.
>> Anyway, pretty nice seeing the VG state tracker getting love!
> I overlooked this issue while working on the dispatcher.  I will make
> a switch to python scripts (or maybe simply use glapi).
This should be fixed by 8f2a974cf2c9.  The python script is rewritten
to generate real C code.

--
olv@...

------------------------------------------------------------------------------
What happens now with your Lotus Notes apps - do you make another costly
upgrade, or settle for being marooned without product support? Time to move
off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
use, and manage than apps on traditional platforms. Sign up for the Lotus
Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@...
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Re: vgCreateFont

by Jose Fonseca :: Rate this Message:

| View Threaded | Show Only this Message

On Mon, 2010-12-06 at 00:09 -0800, Chia-I Wu wrote:

> On Fri, Dec 3, 2010 at 2:21 PM, Chia-I Wu <olvaffe@...> wrote:
> > On Fri, Dec 3, 2010 at 3:39 AM, José Fonseca <jfonseca@...> wrote:
> >> Hi Olv,
> >>
> >> Vega state tracker started failing to build on windows when I enabled
> >> Win32 threads everywhere. The problem is that windows.h defines
> >> CreateFont as CreateFontA.
> >>
> >> I looked at the code, but it was very hard to understand how to tackle
> >> this, due to the mixture of both C-preprocessor and Python scripted code
> >> generation makes things very obfuscated.
> >>
> >> Some ideas for the future:
> >>
> >> - The point of APIs like OpenVG having unique prefixes like "vg" is to
> >> prevent this sort of name collision, but these macros which concatenate
> >> the prefix/suffix end up defeating it.
> >>
> >> - Also given that we're using code generation, I think it would be
> >> better if we just generate everything from the python script without the
> >> c-preprocessor magic.
> >> Anyway, pretty nice seeing the VG state tracker getting love!
> > I overlooked this issue while working on the dispatcher.  I will make
> > a switch to python scripts (or maybe simply use glapi).
> This should be fixed by 8f2a974cf2c9.  The python script is rewritten
> to generate real C code.

Excellent!

Much easier to read and understand what the mapi_abi.py's output.
Thanks.

Jose



------------------------------------------------------------------------------
What happens now with your Lotus Notes apps - do you make another costly
upgrade, or settle for being marooned without product support? Time to move
off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
use, and manage than apps on traditional platforms. Sign up for the Lotus
Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@...
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev