use inc::Module::Install;

# requires: xlhtml (won't install on Deb9), libaspell-dev, libexpat-dev, libmagic-dev, libqrencode-dev, pkg-config, libssl-dev

name 'LIMS';
version 1; # for installdeps
#all_from 'lib/HMDS/Web.pm';

requires "autovivification";
requires "Algorithm::Diff";
requires "Array::Diff";
requires "Archive::Extract";
requires "Archive::Zip";
requires "Capture::Tiny";
requires "CGI";
requires "CGI::Ajax";
requiers "CGI::HTMLError";
requires "CGI::Fast";
requires "CGI::Pager";
requires "CGI::Session", 4.43; # uses find() to avoid updating atime()
requires "CGI::Session::ExpireSessions";
requires "CGI::Session::Flash";
requires "CGI::Session::ID::incr";
requires "CGI::Session::Serialize::yaml";
requires "CGI::Simple::Standard";
requires "Class::Std::Fast::Storable";
requires "Compress::Zlib";
requires "Config::Auto";
requires "Config::Tiny";
requires "Crypt::CBC";
requires "Crypt::DES";
requires "Data::Dump";
requires "Data::Dumper::Concise";
requires "Data::Printer";
requires "Data::Random"; # convert_hilis3
requires "Daemon::Control";
requires "DBD::mysql", 4.014; # bad things can happen <4.012 !!
requires "DBD::SQLite";
requires "DBIx::Simple";
requiers "DBIx::Simple::OO";
requires "DBIx::Profile";
requires "Data::FormValidator", 4.71; # 4.70 is broken
requires "Data::FormValidator::Constraints::DateTime";
requires "Data::FormValidator::Constraints::MethodsFactory";
requires "Data::Traverse";
requires "Date::Calc";
requires "DateTime";
requires "DateTime::HiRes";
requires "DateTime::Format::DateParse";
requires "Devel::Cycle";
requires "Devel::Declare";
requires "Digest::SHA1";
requires "Email::Stuff";
requires "Encode";
requires "Excel::Writer::XLSX"; # FileUploader
requires "FCGI::ProcManager";
requires "File::Path", 2.08;
requires "FormValidator::Simple";
requires "HTML::Barcode::DataMatrix";
requires "HTML::Barcode::Code128";
requires "HTML::Barcode::Code93";
requires "HTML::Barcode::QRCode";
requires "HTML::Escape";
requires "HTML::TreeBuilder::XPath";
#requires "HTML::HTMLDoc";
requires "HTTP::BrowserDetect";
requires "Image::Dot"; # for C::Roles::Chart
requires "IPC::Run";
requires "IPC::System::Simple";
requires "IO::All";
requires "IO::Compress::Gzip";
requires "IO::Socket::SSL";
requires "Import::Into";
requires "JavaScript::DataFormValidator";
requires "Lingua::EN::Words2Nums";
requires "List::Compare";
requires "Log::Dispatch";
requires "Log::Dispatch::File::Rolling";
requires "Log::Dispatch::FileRotate";
requires "Log::Dispatch::Email::MailSendmail";
#Log::Log4perl
requires "Logfile::Rotate";
requires "Math::Round";
requires "Math::SigFigs";
requires "Modern::Perl";
requires "Module::Find";
requires "Mail::Sendmail";
requires "Moose", 0.93; # for new native traits
requires "MooseX::AttributeHelpers", 0.23;
requires "MooseX::Role::Parameterized";
requires "Net::HL7::Request";
requires "Net::SCP::Expect";
requires "Net::SSLeay";
requires "Net::Telnet";
requires "namespace::clean", 0.13;
requires "namespace::autoclean", 0.09;
requires "Number::Format";
requires "parent";
requires "PadWalker";
requires "Path::Tiny";
requires "PDF::API2";
requires "PDF::WebKit";
requires "Rose::DB";
requires "Rose::DB::Object";
requires "Rose::DB::Object::Helpers";
requires "Rose::DB::Object::Loader";
requires "Silly::Werder";
requires "SOAP::Lite";
requires "SOAP::WSDL";
requires "Sort::Naturally";
requires "Sphinx::Search";
requires "Spreadsheet::ParseExcel_XLHTML"; # needs xlhtml package (apt-get)
requires "Spreadsheet::ParseExcel::Simple";
requires "Spreadsheet::WriteExcel::Simple";
requires "SQL::Abstract";
requires "SQL::Abstract::More";
requires "SQL::Abstract::Plugin::InsertMulti";
requires "SQL::Library";
requires "Statistics::Descriptive";
requires "Sub::Current";
requires "Sys::SigAction";
requires "Tie::DataDumper";
requires "Template::Plugin::DateTime"; # request-form
requires "Test::More";
requires "Test::WWW::Mechanize", 1.24;
requires "Test::WWW::Mechanize::CGIApp";
requires "Text::Aspell"; # cpan fails - needs Debian package libaspell-dev (maybe + libtext-aspell-perl)
requires "Text::CSV";
requires "Text::CSV_XS";
requires "Text::CSV::Simple";
requires "Text::CSV::Slurp", 0.901;
requires "Text::Wrap",
requires "Tie::DataDumper",
requires "Time::ParseDate";
requires "XML::Simple"; # requires libexpat-dev package (apt-get)
requires "YAML::Syck"; # essential if using CGI::Session::Serialize::yaml - YAML screws __CAP_MessageStack_Stack
requires "YAML::Tiny";
requires "Web::Simple";
requires "WWW::Mechanize", 1.60;
requires "WWW::Mechanize::TreeBuilder";
requires "XML::SAX::ParserFactory";
requires "XML::Validator::Schema";

requires "CGI::Application";
requires "CGI::Application::Server";
requires "CGI::Application::Dispatch"; # 2.14 has Apache::TestMM issue - installs OK with Build.PL
requires "CGI::Application::Plugin::ActionDispatch";
requires "CGI::Application::Plugin::AnyCGI";
requires "CGI::Application::Plugin::AnyTemplate";
requires "CGI::Application::Plugin::Authentication";
requires "CGI::Application::Plugin::Authorization";
requires "CGI::Application::Plugin::AutoRunmode";
requires "CGI::Application::Plugin::ConfigAuto";
requires "CGI::Application::Plugin::DBH", 4.00; # for FileUploader
requires "CGI::Application::Plugin::FillInForm";
requires "CGI::Application::Plugin::Flash";
requires "CGI::Application::Plugin::Forward";
requires "CGI::Application::Plugin::JSON";
requires "CGI::Application::Plugin::LogDispatch";
requires "CGI::Application::Plugin::Output::XSV";
requires "CGI::Application::Plugin::Redirect";
requires "CGI::Application::Plugin::RunmodeDeclare";
requires "CGI::Application::Plugin::Session";
requires "CGI::Application::Plugin::TT";
requires "CGI::Application::Plugin::Stash";
requires "CGI::Application::Plugin::Stream";
requires "CGI::Application::Plugin::ValidateRM";
requires "CGI::Application::Standard::Config";
requires "CGI::Application::Plugin::MessageStack";
requires "WWW::Trello::Lite";
requires "MooseX::Object::Pluggable";

#CGI::Application::Plugin::DBIProfile
#CGI::Application::Plugin::DebugScreen
#CGI::Application::Plugin::DevPopup
#CGI::Application::Plugin::DevPopup::Timing
#CGI::Application::Plugin::ErrorPage
#Titanium

install_script glob('script/*.pl');
auto_install;
WriteAll;
