Patched kmx's patch from here http://rt.cpan.org/Ticket/Display.html?id=49000
[sdlgit/SDL_perl.git] / Build.PL
old mode 100644 (file)
new mode 100755 (executable)
index ad3925a..b822271
--- a/Build.PL
+++ b/Build.PL
@@ -2,27 +2,28 @@
 #
 # Copyright (C) 2003 chromatic 
 # Copyright (C) 2004 David J. Goehrig
-#
+# Copyright (C) 2009 Kartik Thakore
 
 use strict;
-
+use warnings;
+use Carp;
 use lib  'make/lib';
 
+use Data::Dumper;
 use SDL::Build;
+use SDL::Utility;
 use YAML;
+use YAML::Node;
 
-my $sdl_compile_flags = `sdl-config --cflags`;
-my $sdl_link_flags    = `sdl-config --libs`;
-
-if ($? >> 8)
-{
-       die "SDL doesn't appear to be installed.\n" .
-               "Please check that sdl-config is in your path and try again.\n";
-}
-
-chomp( $sdl_compile_flags );
-chomp( $sdl_link_flags );
+print STDERR <<BROKENWIN if ($^O =~ /MSWin.*|cygwin/ );
+******************************** !!!WARNING!!! ******************************** 
+Windows support is currently broken - you can continue, but you've been warned! 
+If you are interested in helping please contact us at sdl-devel\@perl.org.
+*******************************************************************************
+BROKENWIN
 
+my $sdl_compile_flags = SDL::Utility->sdl_c_flags();
+my $sdl_link_flags    = SDL::Utility->sdl_libs();
 # subsystem to build
 #      file
 #              location of source file => location of build file to get name right
@@ -35,7 +36,7 @@ my %subsystems =
        SDL => {
                file      => {
                        from  => 'src/SDL.xs',
-                       to    => './SDL.xs',
+                       to    => 'lib/SDL_perl.xs',
                },
                libraries => [qw( SDL SDL_image SDL_mixer SDL_net SDL_ttf SDL_gfx
                                  png jpeg smpeg )],
@@ -43,14 +44,14 @@ my %subsystems =
        OpenGL => {
                file      => {
                        from => 'src/OpenGL.xs',
-                       to   => 'SDL/OpenGL.xs', 
+                       to   => 'lib/SDL/OpenGL.xs', 
                },
                libraries => [qw( SDL GL GLU )],
        },
        SFont => {
                file    => {
                        from => 'src/SFont.xs',
-                       to   => 'SDL/SFont.xs',
+                       to   => 'lib/SDL/SFont.xs',
                },
                libraries => [qw( SDL SDL_image )],
        },      
@@ -122,6 +123,7 @@ my $links         = $arch->build_links( \%libraries, $build_systems );
 my %xs = map { $subsystems{$_}{file}{from} => $subsystems{$_}{file}{to} }
             keys %subsystems;
 my $build   = SDL::Build->new(
+       module_name          => 'SDL',
        dist_name            => 'SDL_Perl', 
        license              => 'lgpl',
        dist_version_from    => 'lib/SDL.pm',
@@ -129,6 +131,7 @@ my $build   = SDL::Build->new(
        {
                'Test::Simple' => '0.47',
                'Module::Build' => '0.22',
+               'YAML'  => '0.68'
        },
        build_recommends     =>
        {
@@ -136,6 +139,10 @@ my $build   = SDL::Build->new(
        },
        c_source             => 'src',
        xs_files             => \%xs,
+       meta_add             =>      
+       {
+               no_index =>  { file => [ <make/lib/SDL/*.pm>, <make/lib/SDL/Build/*.pm> ] },
+       },
        dist_author          => 'David J. Goehrig <DGOEHRIG@cpan.org>',
 );
 
@@ -149,6 +156,5 @@ $build->set_flags(
        $sdl_compile_flags,
        $sdl_link_flags,
 );
-
 # now we're ready to go!
 $build->create_build_script();