Top Level Namespace

Defined Under Namespace

Modules: ActiveRecord, Enumerable, Kernel, LibXML, Math, ObjectSpace, RMTools Classes: Array, Bignum, Binding, Class, Dir, Exception, FalseClass, File, Fixnum, Hash, IO, Integer, Method, Module, NilClass, Numeric, Object, Proc, Range, Regexp, Set, String, StringScanner, Symbol, TrueClass, UnboundMethod, Void, XRange

Constant Summary collapse

SCRIPT_LINES__ =
{}
BlackHole =
Void
Inf =
1.0/0

Instance Method Summary collapse

Instance Method Details

#compile_manifest(exc = %w(pkg))) ⇒ Object



14
15
16
17
# File 'lib/rmtools/install.rb', line 14

def compile_manifest(exc=%w(pkg))
  fs = Dir.new('.').recursive_content
  RMTools.rw 'Manifest.txt', (exc ? fs.reject {|i| i[/^(#{exc*'|'})\//]} : fs)*"\n"
end

#ext_files_not_modified(ext_name, version) ⇒ Object



5
6
7
8
9
10
11
12
# File 'lib/rmtools/install.rb', line 5

def ext_files_not_modified(ext_name, version)
  spec = Gem::Specification.find_all_by_name(ext_name).find {|s| s.version.version == version}
  return unless spec
  path = spec.full_gem_path
  !spec.files.grep(/^ext\//).find {|f|
    !(File.file?(installed=File.join(path, f)) and IO.read(f) == IO.read(installed))
  }
end