(trv) Grant CREATE VIEW to Oracle test user
[dbsrgits/DBIx-Class-Schema-Loader.git] / Makefile.PL
1 use warnings;
2 use strict;
3
4 use 5.008001;
5 use inc::Module::Install 1.00;
6
7 use Getopt::Long();
8
9 my $getopt = Getopt::Long::Parser->new(
10     config => [qw/gnu_getopt bundling_override no_ignore_case pass_through/]
11 );
12 my $args = {
13     skip_author_deps => undef,
14 };
15 $getopt->getoptions($args, 'skip_author_deps');
16 if (@ARGV) {
17     warn "\nIgnoring unrecognized option(s): @ARGV\n\n";
18 }
19
20 use FindBin;
21 use lib "$FindBin::Bin/lib";
22
23 perl_version '5.008001';
24 name           'DBIx-Class-Schema-Loader';
25 all_from       'lib/DBIx/Class/Schema/Loader.pm';
26
27 # temporary, needs to be thrown out
28 test_requires 'DBIx::Class::IntrospectableM2M' => 0;
29
30 # core, but specific versions not available on older perls
31 test_requires 'File::Temp'      => '0.16';
32 test_requires 'File::Path'      => '2.07';
33
34 test_requires 'DBD::SQLite'     => '1.29';
35 test_requires 'Test::Exception' => '0.31';
36 test_requires 'Test::More'      => '0.94';
37 test_requires 'Test::Warn'      => '0.21';
38 test_requires 'Test::Deep'      => '0.107';
39 test_requires 'Test::Differences' => '0.60';
40
41 requires 'Carp::Clan'                  => 0;
42 requires 'Class::Accessor::Grouped'    => '0.10008';
43 requires 'Class::C3::Componentised'    => '1.0008';
44 requires 'Class::Inspector'            => '1.27';
45 requires 'Class::Unload'               => '0.07';
46 requires 'Data::Dump'                  => '1.06';
47 requires 'DBIx::Class'                 => '0.08127';
48 requires 'Hash::Merge'                 => '0.12';
49 requires 'Lingua::EN::Inflect::Number' => '1.1';
50 requires 'Lingua::EN::Tagger'          => '0.23';
51 requires 'Lingua::EN::Inflect::Phrase' => '0.15';
52 requires 'List::Util'                  => '1.33';
53 requires 'MRO::Compat'                 => '0.09';
54 requires 'namespace::clean'            => '0.23';
55 requires 'Scope::Guard'                => '0.20';
56 requires 'String::ToIdentifier::EN'    => '0.05';
57 requires 'String::CamelCase'           => '0.02';
58 requires 'Sub::Util'                   => '1.40';
59 requires 'Try::Tiny'                   => 0;
60
61 # core, but specific versions not available on older perls
62 requires 'Digest::MD5'                 => '2.36';
63 requires 'Exporter'                    => '5.63';
64
65 print <<"EOF";
66 ******************* DBIx::Class::Schema::Loader WARNING ***********************
67 The default attributes for belongs_to relationships for foreign keys with no
68 rules has been changed for most databases, and is soon changing for the rest,
69 as ON DELETE/UPDATE and DEFERRABLE clauses for foreign keys are now being
70 introspected.
71
72 THIS MAY AFFECT YOUR DDL DIFFS WHEN DEPLOYING
73
74 YOUR GENERATED CODE WILL ALMOST CERTAINLY CHANGE
75
76 Read more about the changes in "relationship_attrs" in:
77
78 perldoc DBIx::Class::Schema::Loader::Base
79
80 https://metacpan.org/module/DBIx::Class::Schema::Loader::Base#relationship_attrs
81
82 See also the "Changes" file for the last few revisions.
83 *******************************************************************************
84 EOF
85
86 if ($Module::Install::AUTHOR && ! $args->{skip_author_deps}) {
87     eval { require Module::Install::ReadmeFromPod }
88         or die "\nYou need Module::Install::ReadmeFromPod installed to run this Makefile.PL in author mode:\n\n$@\n";
89
90     warn "\n*** AUTHOR MODE: some optional dependencies converted to hard requires.\n\n";
91
92     require DBIx::Class::Schema::Loader::Optional::Dependencies;
93
94     test_requires %{DBIx::Class::Schema::Loader::Optional::Dependencies
95         ->modreq_list_for([
96             grep { !/rdbms/ }
97             keys %{ DBIx::Class::Schema::Loader::Optional::Dependencies
98                 ->req_group_list
99             }
100         ])};
101
102     DBIx::Class::Schema::Loader::Optional::Dependencies->_gen_pod(undef, 'lib');
103
104     author_tests( 'xt' );
105     readme_from( 'lib/DBIx/Class/Schema/Loader.pm' );
106     realclean_files( qw[README MANIFEST lib/DBIx/Class/Schema/Loader/Optional/Dependencies.pod] );
107 }
108
109 tests_recursive;
110
111 install_script 'script/dbicdump';
112
113 resources 'IRC'         => 'irc://irc.perl.org/#dbix-class';
114 resources 'license'     => 'http://dev.perl.org/licenses/';
115 resources 'repository'  => 'https://github.com/dbsrgits/dbix-class-schema-loader';
116 resources 'MailingList' => 'http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class';
117
118 auto_install;
119 WriteAll;
120
121 # vim:et sts=4 sw=4 tw=0: