Change soft-fail to use the config, rather than env
[rbx.git] / stdlib / ext / zlib / extconf.rb
blobddab597429bfa8f6cfcee565bd82527132dddf5f
2 # extconf.rb
4 # $Id: extconf.rb 11708 2007-02-12 23:01:19Z shyouhei $
7 require 'mkmf'
8 require 'rbconfig'
10 dir_config 'zlib'
13 if %w'z libz zlib zdll'.find {|z| have_library(z, 'deflateReset')} and
14     have_header('zlib.h') then
16   defines = []
18   message 'checking for kind of operating system... '
19   os_code = with_config('os-code') ||
20     case RUBY_PLATFORM.split('-',2)[1]
21     when 'amigaos' then
22       os_code = 'AMIGA'
23     when /\Aos2[\-_]emx\z/ then
24       os_code = 'OS2'
25     when 'mswin32', 'mingw32', 'bccwin32' then
26       # NOTE: cygwin should be regarded as Unix.
27       os_code = 'WIN32'
28     else
29       os_code = 'UNIX'
30     end
31   os_code = 'OS_' + os_code.upcase
33   OS_NAMES = {
34     'OS_MSDOS'   => 'MS-DOS',
35     'OS_AMIGA'   => 'Amiga',
36     'OS_VMS'     => 'VMS',
37     'OS_UNIX'    => 'Unix',
38     'OS_ATARI'   => 'Atari',
39     'OS_OS2'     => 'OS/2',
40     'OS_MACOS'   => 'MacOS',
41     'OS_TOPS20'  => 'TOPS20',
42     'OS_WIN32'   => 'Win32',
43     'OS_VMCMS'   => 'VM/CMS',
44     'OS_ZSYSTEM' => 'Z-System',
45     'OS_CPM'     => 'CP/M',
46     'OS_QDOS'    => 'QDOS',
47     'OS_RISCOS'  => 'RISCOS',
48     'OS_UNKNOWN' => 'Unknown',
49   }
50   unless OS_NAMES.key? os_code then
51     puts "invalid OS_CODE `#{os_code}'"
52     exit
53   end
54   message "#{OS_NAMES[os_code]}\n"
55   defines << "OS_CODE=#{os_code}"
57   $defs.concat(defines.collect{|d|' -D'+d})
59   create_makefile('zlib')
61 end