aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/install.rb
blob: 26abbd96780b716aa13db9642e5d834dddb42c0e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
require 'rbconfig'
require 'find'
require 'ftools'

include Config

# this was adapted from rdoc's install.rb by ways of Log4r

$sitedir = CONFIG["sitelibdir"]
unless $sitedir
  version = CONFIG["MAJOR"] + "." + CONFIG["MINOR"]
  $libdir = File.join(CONFIG["libdir"], "ruby", version)
  $sitedir = $:.find {|x| x =~ /site_ruby/ }
  if !$sitedir
    $sitedir = File.join($libdir, "site_ruby")
  elsif $sitedir !~ Regexp.quote(version)
    $sitedir = File.join($sitedir, version)
  end
end

makedirs = %w{ active_record/associations active_record/connection_adapters active_record/support active_record/vendor active_record/acts }
makedirs.each {|f| File::makedirs(File.join($sitedir, *f.split(/\//)))}

# deprecated files that should be removed
# deprecated = %w{ }

# files to install in library path
files = %w-
 active_record.rb
 active_record/aggregations.rb
 active_record/associations.rb
 active_record/associations/association_collection.rb
 active_record/associations/has_and_belongs_to_many_association.rb
 active_record/associations/has_many_association.rb
 active_record/base.rb
 active_record/callbacks.rb
 active_record/connection_adapters/abstract_adapter.rb
 active_record/connection_adapters/mysql_adapter.rb
 active_record/connection_adapters/postgresql_adapter.rb
 active_record/connection_adapters/sqlite_adapter.rb
 active_record/deprecated_associations.rb
 active_record/fixtures.rb
 active_record/observer.rb
 active_record/reflection.rb
 active_record/mixins/list.rb
 active_record/mixins/touch.rb
 active_record/support/class_attribute_accessors.rb
 active_record/support/class_inheritable_attributes.rb
 active_record/support/clean_logger.rb
 active_record/support/inflector.rb
 active_record/transactions.rb
 active_record/validations.rb
 active_record/vendor/mysql.rb
 active_record/vendor/simple.rb
-

# the acual gruntwork
Dir.chdir("lib")
# File::safe_unlink *deprecated.collect{|f| File.join($sitedir, f.split(/\//))}
files.each {|f| 
  File::install(f, File.join($sitedir, *f.split(/\//)), 0644, true)
}