1 # $Id: Build.PL,v 1.9 2006-01-20 15:04:55 grommit Exp $
5 use SQL::Translator::Module::Build;
7 my $builder = SQL::Translator::Module::Build->new(
9 dist_abstract => 'SQL DDL transformations and more',
10 dist_author => 'Ken Y. Clark <kclark@cpan.org>',
11 dist_version_from => 'lib/SQL/Translator.pm',
13 module_name => 'SQL::Translator',
24 'Class::Data::Inheritable' => 0.02,
25 'Class::MakeMethods' => 0,
29 'Parse::RecDescent' => 1.94,
37 'Spreadsheet::ParseExcel' => 0.2602,
38 'Text::ParseWords' => 0,
39 'Text::RecordParser' => 0.02,
40 'XML::Writer' => 0.500,
45 'File::Basename' => 0,
48 'Test::Exception' => 0,
49 'Test::Differences' => 0,
53 # Where to store additional files such as templates.
54 # TODO: Should be OS dependant. See Module::Build::os_type()
55 install_dir => { type=>'=s', default=>'/usr/local/share/sqlfairy' },
59 my $install_dir = $builder->args('install_dir');
60 print "SqlFairy needs to install some additional files such as templates.\n";
61 $install_dir = $builder->prompt( "Where should they go?", $install_dir );
64 # Add the install (and template) dir to the config data. They will then be
65 # available via the (Module::Build) generated SQL::Translator::ConfigData.
66 # During build time they are availiable from $builder->config_data( NAME )
67 my $template_dir = "$install_dir/template";
68 $builder->config_data( install_dir => $install_dir );
69 $builder->config_data( template_dir => $template_dir );
71 # Add build element for templates, these are processed by
72 # SQL::Translator::Module::Build::process_template_files
73 $builder->add_build_element('template');
74 $builder->install_path->{template} = $template_dir;
77 $builder->create_build_script;
78 print "Now run './Build', './Build test', and './Build install'\n";