5 use inc::Module::Install 1.00;
9 my $getopt = Getopt::Long::Parser->new(
10 config => [qw/gnu_getopt bundling_override no_ignore_case pass_through/]
13 skip_author_deps => undef,
15 $getopt->getoptions($args, 'skip_author_deps');
17 warn "\nIgnoring unrecognized option(s): @ARGV\n\n";
21 use lib "$FindBin::Bin/lib";
23 perl_version '5.008001';
24 name 'DBIx-Class-Schema-Loader';
25 all_from 'lib/DBIx/Class/Schema/Loader.pm';
27 # temporary, needs to be thrown out
28 test_requires 'DBIx::Class::IntrospectableM2M' => 0;
30 # core, but specific versions not available on older perls
31 test_requires 'File::Temp' => '0.16';
32 test_requires 'File::Path' => '2.07';
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';
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;
61 # core, but specific versions not available on older perls
62 requires 'Digest::MD5' => '2.36';
63 requires 'Exporter' => '5.63';
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
72 THIS MAY AFFECT YOUR DDL DIFFS WHEN DEPLOYING
74 YOUR GENERATED CODE WILL ALMOST CERTAINLY CHANGE
76 Read more about the changes in "relationship_attrs" in:
78 perldoc DBIx::Class::Schema::Loader::Base
80 https://metacpan.org/module/DBIx::Class::Schema::Loader::Base#relationship_attrs
82 See also the "Changes" file for the last few revisions.
83 *******************************************************************************
86 if ($Module::Install::AUTHOR && ! $args->{skip_author_deps}) {
88 for my $plugin (qw(ReadmeFromPod AuthorTests)) {
89 eval "require Module::Install::$plugin" and next;
90 push @missing_plugins, "Module::Install::$plugin";
92 $missing_plugins[-1] .= " ($err)"
93 unless $err =~ m{^Can't locate Module/Install/$plugin.pm in \@INC};
95 die "\nYou need to install the following modules to run this Makefile.PL in author mode:\n\n", join("\n", @missing_plugins), "\n\n"
98 warn "\n*** AUTHOR MODE: some optional dependencies converted to hard requires.\n\n";
100 require DBIx::Class::Schema::Loader::Optional::Dependencies;
102 test_requires %{DBIx::Class::Schema::Loader::Optional::Dependencies
105 keys %{ DBIx::Class::Schema::Loader::Optional::Dependencies
110 DBIx::Class::Schema::Loader::Optional::Dependencies->_gen_pod(undef, 'lib');
112 author_tests( 'xt' );
113 readme_from( 'lib/DBIx/Class/Schema/Loader.pm' );
114 realclean_files( qw[README MANIFEST lib/DBIx/Class/Schema/Loader/Optional/Dependencies.pod] );
116 create_distdir: author_stop_distdir_creation
117 author_stop_distdir_creation:
118 \t\$(NOECHO) \$(ECHO) Creation of dist with author mode deps not allowed
119 \t\$(NOECHO) \$(ECHO) Please re-run Makefile.PL with --skip_author_deps
120 \t\$(NOECHO) \$(FALSE)
127 install_script 'script/dbicdump';
129 resources 'IRC' => 'irc://irc.perl.org/#dbix-class';
130 resources 'license' => 'http://dev.perl.org/licenses/';
131 resources 'repository' => 'https://github.com/dbsrgits/dbix-class-schema-loader';
132 resources 'MailingList' => 'http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class';
137 # vim:et sts=4 sw=4 tw=0: