6 use inc::Module::Install 1.00;
10 my $getopt = Getopt::Long::Parser->new(
11 config => [qw/gnu_getopt bundling_override no_ignore_case pass_through/]
14 skip_author_deps => undef,
16 $getopt->getoptions($args, 'skip_author_deps');
18 warn "\nIgnoring unrecognized option(s): @ARGV\n\n";
22 use lib "$FindBin::Bin/lib";
24 perl_version '5.008001';
25 name 'DBIx-Class-Schema-Loader';
26 all_from 'lib/DBIx/Class/Schema/Loader.pm';
28 # temporary, needs to be thrown out
29 test_requires 'DBIx::Class::IntrospectableM2M' => 0;
31 # core, but specific versions not available on older perls
32 test_requires 'File::Temp' => '0.16';
33 test_requires 'File::Path' => '2.07';
35 test_requires 'DBD::SQLite' => '1.29';
36 test_requires 'Test::Exception' => '0.31';
37 test_requires 'Test::More' => '0.94';
38 test_requires 'Test::Warn' => '0.21';
39 test_requires 'Test::Deep' => '0.107';
40 test_requires 'Test::Differences' => '0.60';
42 requires 'Carp::Clan' => 0;
43 requires 'Class::Accessor::Grouped' => '0.10008';
44 requires 'Class::C3::Componentised' => '1.0008';
45 requires 'Class::Inspector' => '1.27';
46 requires 'Class::Unload' => '0.07';
47 requires 'Data::Dump' => '1.06';
48 requires 'DBIx::Class' => '0.08127';
49 requires 'Hash::Merge' => '0.12';
50 requires 'Lingua::EN::Inflect::Number' => '1.1';
51 requires 'Lingua::EN::Tagger' => '0.23';
52 requires 'Lingua::EN::Inflect::Phrase' => '0.15';
53 requires 'List::Util' => '1.33';
54 requires 'MRO::Compat' => '0.09';
55 requires 'namespace::clean' => '0.23';
56 requires 'Scope::Guard' => '0.20';
57 requires 'String::ToIdentifier::EN' => '0.05';
58 requires 'String::CamelCase' => '0.02';
59 requires 'Sub::Util' => '1.40';
60 requires 'Try::Tiny' => 0;
62 # core, but specific versions not available on older perls
63 requires 'Digest::MD5' => '2.36';
64 requires 'Exporter' => '5.63';
67 ******************* DBIx::Class::Schema::Loader WARNING ***********************
68 The default attributes for belongs_to relationships for foreign keys with no
69 rules has been changed for most databases, and is soon changing for the rest,
70 as ON DELETE/UPDATE and DEFERRABLE clauses for foreign keys are now being
73 THIS MAY AFFECT YOUR DDL DIFFS WHEN DEPLOYING
75 YOUR GENERATED CODE WILL ALMOST CERTAINLY CHANGE
77 Read more about the changes in "relationship_attrs" in:
79 perldoc DBIx::Class::Schema::Loader::Base
81 https://metacpan.org/module/DBIx::Class::Schema::Loader::Base#relationship_attrs
83 See also the "Changes" file for the last few revisions.
84 *******************************************************************************
87 if ($Module::Install::AUTHOR && ! $args->{skip_author_deps}) {
89 for my $plugin (qw(ReadmeFromPod AuthorTests)) {
90 eval "require Module::Install::$plugin" and next;
91 push @missing_plugins, "Module::Install::$plugin";
93 $missing_plugins[-1] .= " ($err)"
94 unless $err =~ m{^Can't locate Module/Install/$plugin.pm in \@INC};
96 die "\nYou need to install the following modules to run this Makefile.PL in author mode:\n\n", join("\n", @missing_plugins), "\n\n"
99 warn "\n*** AUTHOR MODE: some optional dependencies converted to hard requires.\n\n";
101 require DBIx::Class::Schema::Loader::Optional::Dependencies;
103 test_requires %{DBIx::Class::Schema::Loader::Optional::Dependencies
106 keys %{ DBIx::Class::Schema::Loader::Optional::Dependencies
111 DBIx::Class::Schema::Loader::Optional::Dependencies->_gen_pod(undef, 'lib');
113 author_tests( 'xt' );
114 readme_from( 'lib/DBIx/Class/Schema/Loader.pm' );
115 realclean_files( qw[README MANIFEST lib/DBIx/Class/Schema/Loader/Optional/Dependencies.pod] );
117 create_distdir: author_stop_distdir_creation
118 author_stop_distdir_creation:
119 \t\$(NOECHO) \$(ECHO) Creation of dist with author mode deps not allowed
120 \t\$(NOECHO) \$(ECHO) Please re-run Makefile.PL with --skip_author_deps
121 \t\$(NOECHO) \$(FALSE)
128 install_script 'script/dbicdump';
130 resources 'IRC' => 'irc://irc.perl.org/#dbix-class';
131 resources 'license' => 'http://dev.perl.org/licenses/';
132 resources 'repository' => 'https://github.com/dbsrgits/dbix-class-schema-loader';
133 resources 'MailingList' => 'http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class';
138 # vim:et sts=4 sw=4 tw=0: