File: extconf.rb

package info (click to toggle)
ruby-grib 0.4.0-8
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 448 kB
  • sloc: ansic: 708; ruby: 708; makefile: 4
file content (60 lines) | stat: -rw-r--r-- 1,447 bytes parent folder | download | duplicates (6)
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
require "mkmf"

na_path = RbConfig::CONFIG["sitearchdir"]
begin
  require "rubygems"
  gem = true
rescue LoadError
  gem = false
end
if gem
  if ( na_type = ENV["NARRAY_TYPE"] )
    nas = [na_type]
  else
    nas = %w(narray numru-narray)
  end
  if Gem::Specification.respond_to?(:find_by_name)
    nas.each do |na|
      begin
        if ( spec = Gem::Specification.find_by_name(na) )
          na_type = na
          na_path = spec.full_gem_path
          case na_type
          when "narray"
            na_path = File.join(na_path, "src")
          when "numru-narray"
            na_path = File.join(na_path, "ext", "numru", "narray")
          end
          break
        end
      rescue LoadError
      end
    end
  else
    nas.each do |na|
      if ( spec = Gem.source_index.find_name(na) ).any?
        na_type = na
        na_path = spec[0].full_gem_path
        case na_type
        when "narray"
          na_path = File.join(na_path, "src")
        when "numru-narray"
          na_path = File.join(na_path, "ext", "numru", "narray")
        end
        break
      end
    end
  end
end

dir_config("narray", na_path, na_path)
unless have_header("narray.h")
  $stderr.print "narray.h does not found. Specify the path.\n"
  $stderr.print "e.g., gem install rb-grib -- --with-narray-include=path\n"
  exit(-1)
end

dir_config("grib_api")
if have_header("grib_api.h") && have_library("grib_api")
  create_makefile("numru/grib")
end