Ticket #1362 (closed bug: fixed)

Opened 5 years ago

Last modified 5 years ago

parrot does not build if library glfw is installed

Reported by: wagnerf Owned by: japhb
Priority: normal Milestone:
Component: configure Version: trunk
Severity: medium Keywords:
Cc: infinoid, japhb Language:
Patch status: Platform:

Description

i'm building parrot (for rakudo) on my machine.

i'm running :

git clone  git://github.com/rakudo/rakudo.git

perl Configure.pl --gen-parrot

it then fails with :

gen::opengl - Generating OpenGL bindings... step gen::opengl died during execution: 'GLFW_KEY_LAST' is defined as 'GLFW_KEY_KP_ENTER', but no 'GLFW_KEY_KP_ENTER' has been defined at config/gen/opengl.pm line 596.

at Configure.pl line 75

I grepped in /usr/include for GLFW_KEY_LAST which is defined in /usr/include/GL/glfw.h

removing this library enables me to build everything correctly

so I think there are 2 problems here : a) this header file should not be parsed ? b) this header file is correct but somehow is not parsed correctly

Change History

Changed 5 years ago by jkeenan

  • cc infinoid, japhb added
  • component changed from none to configure

cc-ing some Parrot developers who have worked on config/gen/opengl.pm.

Changed 5 years ago by japhb

  • owner set to japhb
  • status changed from new to assigned

wagnerf, please attach a tarball of your /usr/include/GL/ ... I can usually diagnose and correct the parsing problem from that.

As background, the GL header files are not parsed using a real C header parser -- so even though everything works most of the time, whenever a vendor does something really tricky, the "parser" has to be manually tweaked not to trip over it. :-(

-'f

Changed 5 years ago by wagnerf

here is the header file causing problems :

 http://glfw.svn.sourceforge.net/viewvc/glfw/trunk/include/GL/glfw.h?revision=938&view=markup

I guess fixing the parser should not be too hard but i'm not sure this file should be parsed

Fred

Changed 5 years ago by japhb

  • status changed from assigned to closed
  • resolution set to fixed

As of r42952:

1. The parser has been improved to handle the define errors, so only warnings remain. 2. But I'm force-skipping glfw.h anyway. It's a GLUT "replacement", and really requires a whole pile of work to actually support (as opposed to merely not error out on).

Please open a new ticket if you actually need to *use* GLFW from Parrot; I'm closing this one as the original problem (inability to configure parrot when GLFW is merely installed on the system) has been fixed.

-'f

Note: See TracTickets for help on using tickets.