Acme-MITHALDU-BleedingOpenGL
view release on metacpan or search on metacpan
Makefile.PL view on Meta::CPAN
{
$found_libs->{GLUT32} = $found_libs->{FREEGLUT32};
}
if ($found_libs->{GLUT})
{
delete($found_libs->{FREEGLUT});
}
if ($found_libs->{GLUT32})
{
delete($found_libs->{FREEGLUT32});
}
if (!$found_libs->{GLUT} && !$found_libs->{GLUT32})
{
print "GLUT interface requires GLUT or FreeGLUT but libs were not found\n";
next;
}
}
else
{
print "Error in interface argument processing\n";
next;
}
}
elsif ($interface eq 'GLX')
{
if (!$found_libs->{GL} && !$found_libs->{MESA} && !$found_libs->{GLX})
{
print "GLX interface requires GLX/X11 but the libraries were not found\n";
next;
}
}
elsif (!$found_libs->{$interface})
{
print "$interface interface not supported\n";
next;
}
push(@interface_opts,$interface);
}
}
my $interfaces = scalar(@interface_opts);
if (!$interfaces)
{
die "ERROR: no supported interfaces found.\n";
}
elsif ($interfaces > 1)
{
die "ERROR: multiple opengl interfaces requested: @interface_opts.\n";
}
($interface_lib) = @interface_opts;
print "User set interface to $interface_lib\n" if ($verbose && !$fallback);
# Strip out interface args
@ARGV = grep { !m/^interface=/i } @ARGV;
}
# Otherwise use available defaults
elsif ($IS_CYGWIN)
{
if ($found_libs->{FREEGLUT})
{
$interface_lib = 'FREEGLUT'; # CYGWIN will use X11 interface by default
}
elsif($found_libs->{GLUT})
{
$interface_lib = 'GLUT';
}
elsif($found_libs->{GLUT32} || $found_libs->{FREEGLUT32})
{
$interface_lib = 'W32API';
}
else
{
die "No suitable OpenGL+GLUT interface found for CYGWIN\n";
}
}
elsif ($^O eq 'darwin' && $found_libs->{GLUT} && !$found_libs->{FREEGLUT})
{
$interface_lib = 'AGL';
}
elsif ($found_libs->{FREEGLUT} || $found_libs->{FREEGLUT32})
{
$interface_lib = 'FREEGLUT';
}
elsif ($found_libs->{GLUT} || $found_libs->{GLUT32})
{
$interface_lib = 'GLUT';
}
else
{
die "FreeGLUT or GLUT libraries were not found, won't build OpenGL module.";
}
print "\nUsing interface: $interface_lib\n\n";
# Marshall compiler defines
our $DEFS = $DIST_DEFS;
if ($IS_STRAWBERRY)
{
delete($found_libs->{'GLX'});
delete($found_libs->{'MESA'});
$found_libs->{'GLU'} = $found_libs->{'GLU32'};
$found_libs->{'GL'} = $found_libs->{'OPENGL32'};
$DEFS .= " -DIS_STRAWBERRY";
}
elsif (($^O eq 'MSWin32') || $IS_W32API || $IS_MINGW)
{
delete($found_libs->{'GLX'});
delete($found_libs->{'MESA'});
$found_libs->{'FREEGLUT'} = $found_libs->{'FREEGLUT32'};
$found_libs->{'GLUT'} = $found_libs->{'GLUT32'};
$found_libs->{'GLU'} = $found_libs->{'GLU32'};
$found_libs->{'GL'} = $found_libs->{'OPENGL32'};
}
elsif($IS_CYGWIN)
{
delete($found_libs->{'FREEGLUT32'});
delete($found_libs->{'GLUT32'});
delete($found_libs->{'GLU32'});
delete($found_libs->{'OPENGL32'});
}
( run in 0.495 second using v1.01-cache-2.11-cpan-39bf76dae61 )