Rakefile
changeset 16 e135ccae6783
parent 15 a38e6916504c
child 17 23c7f5c8ee39
equal deleted inserted replaced
15:a38e6916504c 16:e135ccae6783
     1 #!/usr/bin/env rake
     1 #!/usr/bin/env rake
     2 # vim: set nosta noet ts=4 sw=4:
     2 # vim: set nosta noet ts=4 sw=4:
     3 
     3 
     4 require 'pathname'
     4 require 'pathname'
       
     5 
       
     6 begin
       
     7 	require 'rake/extensiontask'
       
     8 rescue LoadError
       
     9 	abort "This Rakefile requires rake-compiler (gem install rake-compiler)"
       
    10 end
     5 
    11 
     6 PROJECT = 'ezmlm'
    12 PROJECT = 'ezmlm'
     7 BASEDIR = Pathname.new( __FILE__ ).expand_path.dirname.relative_path_from( Pathname.getwd )
    13 BASEDIR = Pathname.new( __FILE__ ).expand_path.dirname.relative_path_from( Pathname.getwd )
     8 LIBDIR  = BASEDIR + 'lib'
    14 LIBDIR  = BASEDIR + 'lib'
     9 
    15 
    47 This is a ruby interface for interacting with ezmlm-idx, an email list
    53 This is a ruby interface for interacting with ezmlm-idx, an email list
    48 manager for use with the Qmail MTA, and the messages contained therein.
    54 manager for use with the Qmail MTA, and the messages contained therein.
    49 (The -idx provides an extended feature set over the original ezmlm
    55 (The -idx provides an extended feature set over the original ezmlm
    50 environment.)
    56 environment.)
    51 	EOF
    57 	EOF
       
    58 	s.extensions = FileList[ "ext/**/extconf.rb" ]
    52 	s.required_ruby_version = '>= 2.1'
    59 	s.required_ruby_version = '>= 2.1'
    53 
    60 
    54 	s.add_dependency 'mail', "~> 2.6"
    61 	s.add_dependency 'mail', "~> 2.6"
    55 	s.add_dependency 'rake-compiler', "~> 1.0"
    62 	s.add_dependency 'rake-compiler', "~> 1.0"
    56 end
    63 end
    57 
    64 
    58 Gem::PackageTask.new( spec ) do |pkg|
    65 Gem::PackageTask.new( spec ) do |pkg|
    59 	pkg.need_zip = true
    66 	pkg.need_zip = true
    60 	pkg.need_tar = true
    67 	pkg.need_tar = true
    61 end
    68 end
       
    69 
       
    70 # Build the C extension for hashing addresses.
       
    71 Rake::ExtensionTask.new( 'ezmlm/hash', spec )
    62 
    72 
    63 
    73 
    64 ########################################################################
    74 ########################################################################
    65 ### D O C U M E N T A T I O N
    75 ### D O C U M E N T A T I O N
    66 ########################################################################
    76 ########################################################################
    72 	RDoc::Task.new do |rdoc|
    82 	RDoc::Task.new do |rdoc|
    73 		rdoc.name       = :docs
    83 		rdoc.name       = :docs
    74 		rdoc.rdoc_dir   = 'docs'
    84 		rdoc.rdoc_dir   = 'docs'
    75 		rdoc.main       = "README.rdoc"
    85 		rdoc.main       = "README.rdoc"
    76 		# rdoc.options    = [ '-f', 'fivefish' ]
    86 		# rdoc.options    = [ '-f', 'fivefish' ]
    77 		rdoc.rdoc_files = [ 'lib', *FileList['*.rdoc'] ]
    87 		rdoc.rdoc_files = [ 'lib', *FileList['ext/*/*.c'], *FileList['*.rdoc'] ]
    78 	end
    88 	end
    79 
    89 
    80 	RDoc::Task.new do |rdoc|
    90 	RDoc::Task.new do |rdoc|
    81 		rdoc.name       = :doc_coverage
    91 		rdoc.name       = :doc_coverage
    82 		rdoc.options    = [ '-C1' ]
    92 		rdoc.options    = [ '-C1' ]
   114 
   124 
   115 ########################################################################
   125 ########################################################################
   116 ### M A N I F E S T
   126 ### M A N I F E S T
   117 ########################################################################
   127 ########################################################################
   118 __END__
   128 __END__
       
   129 ext/ezmlm/hash/hash.c
       
   130 ext/ezmlm/hash/hash.h
       
   131 ext/ezmlm/hash/extconf.rb
   119 lib/ezmlm/list.rb
   132 lib/ezmlm/list.rb
       
   133 lib/ezmlm/list/message.rb
       
   134 lib/ezmlm/list/thread.rb
       
   135 lib/ezmlm/list/author.rb
   120 lib/ezmlm.rb
   136 lib/ezmlm.rb
   121 
   137