File: install.rb

# install.rb

Path: | dl/install.rb
Last Update: | Tue Apr 02 20:56:13 AUS Eastern Standard Time 2002

### Required files

mkmf ftools

### Methods

find install

### Constants

SO_LIBS | = | ["dl.so"]

### Public Instance methods

find(dir, match = /./)

[Source]

    # File dl/install.rb, line 13
    def find(dir, match = /./)
      Dir.chdir(dir)
      files = []
      Dir.new(".").each{|file|
        if( file != "." && file != ".." )
          case File.ftype(file)
          when "file"
            if( file =~ match )
              files.push(File.join(dir,file))
            end
          when "directory"
            files += find(file, match).collect{|f| File.join(dir,f)}
          end
        end
      }
      Dir.chdir("..")
      return files
    end

install()

[Source]

    # File dl/install.rb, line 32
    def install()
      rb_files = find(File.join(".","lib"), /.rb$/)

      SO_LIBS.each{|f|
        File.makedirs($rubylibdir, "#{$archdir}")
        File.install(f, File.join($archdir,f), 0555, true)
      }

      rb_files.each{|f|
        origfile = f
        instfile = File.join($rubylibdir, origfile.sub("./lib/",""))
        instdir  = File.dirname(instfile)
        File.makedirs(instdir)
        File.install(origfile, instfile, 0644, true)
      }
    end

[Validate]