r2corba 1.6.1-x64-mingw-ucrt

Sign up to get free protection for your applications and to get access to all the features.
Files changed (237) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGES +173 -0
  3. data/LICENSE +59 -0
  4. data/README.rdoc +62 -0
  5. data/THANKS +54 -0
  6. data/bin/r2corba +8 -0
  7. data/bin/r2corba.bat +20 -0
  8. data/bin/ridlc +11 -0
  9. data/bin/ridlc.bat +23 -0
  10. data/bin/rins +7 -0
  11. data/bin/rins.bat +19 -0
  12. data/ext/.keep +0 -0
  13. data/lib/corba/cbase/IORMap.rb +32 -0
  14. data/lib/corba/cbase/ORB.rb +239 -0
  15. data/lib/corba/cbase/Request.rb +133 -0
  16. data/lib/corba/cbase/Streams.rb +128 -0
  17. data/lib/corba/cbase/Stub.rb +18 -0
  18. data/lib/corba/cbase/Typecode.rb +440 -0
  19. data/lib/corba/cbase/Values.rb +130 -0
  20. data/lib/corba/cbase/exception.rb +67 -0
  21. data/lib/corba/cbase/poa.rb +22 -0
  22. data/lib/corba/cbase/policies.rb +77 -0
  23. data/lib/corba/cbase/post_require.rb +13 -0
  24. data/lib/corba/cbase/require.rb +36 -0
  25. data/lib/corba/cmds/base.rb +84 -0
  26. data/lib/corba/cmds/test.rb +29 -0
  27. data/lib/corba/common/Any.rb +91 -0
  28. data/lib/corba/common/IDL.rb +100 -0
  29. data/lib/corba/common/ORB.rb +367 -0
  30. data/lib/corba/common/Object.rb +211 -0
  31. data/lib/corba/common/Request.rb +19 -0
  32. data/lib/corba/common/Servant.rb +107 -0
  33. data/lib/corba/common/Struct.rb +21 -0
  34. data/lib/corba/common/Stub.rb +78 -0
  35. data/lib/corba/common/Typecode.rb +1147 -0
  36. data/lib/corba/common/Union.rb +60 -0
  37. data/lib/corba/common/Values.rb +92 -0
  38. data/lib/corba/common/const.rb +21 -0
  39. data/lib/corba/common/exception.rb +68 -0
  40. data/lib/corba/common/require.rb +34 -0
  41. data/lib/corba/common/version.rb +21 -0
  42. data/lib/corba/idl/BiDirPolicyC.rb +62 -0
  43. data/lib/corba/idl/CosNamingC.rb +460 -0
  44. data/lib/corba/idl/CosNamingS.rb +308 -0
  45. data/lib/corba/idl/IDL.rb +20 -0
  46. data/lib/corba/idl/IORTable.pidl +61 -0
  47. data/lib/corba/idl/IORTableC.rb +116 -0
  48. data/lib/corba/idl/MessagingC.rb +903 -0
  49. data/lib/corba/idl/POAC.rb +929 -0
  50. data/lib/corba/idl/TAO_Ext.pidl +45 -0
  51. data/lib/corba/idl/TAO_ExtC.rb +178 -0
  52. data/lib/corba/idl/r2c_orb.rb +571 -0
  53. data/lib/corba/idl/require.rb +19 -0
  54. data/lib/corba/jbase/Any.rb +274 -0
  55. data/lib/corba/jbase/IORMap.rb +35 -0
  56. data/lib/corba/jbase/ORB.rb +111 -0
  57. data/lib/corba/jbase/Object.rb +98 -0
  58. data/lib/corba/jbase/Request.rb +225 -0
  59. data/lib/corba/jbase/Servant.rb +247 -0
  60. data/lib/corba/jbase/ServerRequest.rb +127 -0
  61. data/lib/corba/jbase/Streams.rb +734 -0
  62. data/lib/corba/jbase/Stub.rb +37 -0
  63. data/lib/corba/jbase/Typecode.rb +520 -0
  64. data/lib/corba/jbase/Values.rb +174 -0
  65. data/lib/corba/jbase/exception.rb +106 -0
  66. data/lib/corba/jbase/poa.rb +228 -0
  67. data/lib/corba/jbase/policies.rb +299 -0
  68. data/lib/corba/jbase/post_require.rb +13 -0
  69. data/lib/corba/jbase/require.rb +92 -0
  70. data/lib/corba/naming.rb +13 -0
  71. data/lib/corba/naming_service.rb +14 -0
  72. data/lib/corba/poa.rb +14 -0
  73. data/lib/corba/policies.rb +17 -0
  74. data/lib/corba/require.rb +16 -0
  75. data/lib/corba/svcs/ins/cos_naming.rb +432 -0
  76. data/lib/corba/svcs/ins/ins.rb +525 -0
  77. data/lib/corba/svcs/ins/naming_service.rb +118 -0
  78. data/lib/corba.rb +15 -0
  79. data/lib/ridlbe/ruby/config.rb +340 -0
  80. data/lib/ridlbe/ruby/orb.pidlc +0 -0
  81. data/lib/ridlbe/ruby/require.rb +15 -0
  82. data/lib/ridlbe/ruby/walker.rb +1605 -0
  83. data/mkrf_conf_bingem.rb +149 -0
  84. data/rakelib/bin.rake +79 -0
  85. data/rakelib/bin.rb +145 -0
  86. data/rakelib/build.rake +87 -0
  87. data/rakelib/config.rake +51 -0
  88. data/rakelib/config.rb +542 -0
  89. data/rakelib/ext.rake +183 -0
  90. data/rakelib/ext.rb +277 -0
  91. data/rakelib/ext_r2tao.rb +208 -0
  92. data/rakelib/gem.rake +251 -0
  93. data/rakelib/gem.rb +145 -0
  94. data/rakelib/package.rake +25 -0
  95. data/rakelib/test.rake +22 -0
  96. data/test/BiDirectional/Test.idl +33 -0
  97. data/test/BiDirectional/client.rb +131 -0
  98. data/test/BiDirectional/run_test.rb +67 -0
  99. data/test/BiDirectional/server.rb +167 -0
  100. data/test/CORBA_Services/Naming/BindingIterator/Test.idl +26 -0
  101. data/test/CORBA_Services/Naming/BindingIterator/client.rb +120 -0
  102. data/test/CORBA_Services/Naming/BindingIterator/run_test.rb +81 -0
  103. data/test/CORBA_Services/Naming/BindingIterator/server.rb +108 -0
  104. data/test/CORBA_Services/Naming/Corbaname/Test.idl +26 -0
  105. data/test/CORBA_Services/Naming/Corbaname/client.rb +84 -0
  106. data/test/CORBA_Services/Naming/Corbaname/run_test.rb +87 -0
  107. data/test/CORBA_Services/Naming/Corbaname/server.rb +134 -0
  108. data/test/CORBA_Services/Naming/Simple/Test.idl +26 -0
  109. data/test/CORBA_Services/Naming/Simple/client.rb +83 -0
  110. data/test/CORBA_Services/Naming/Simple/run_test.rb +81 -0
  111. data/test/CORBA_Services/Naming/Simple/server.rb +108 -0
  112. data/test/Collocation/Diamond.idl +38 -0
  113. data/test/Collocation/run_test.rb +51 -0
  114. data/test/Collocation/test.rb +201 -0
  115. data/test/Connect_Timeout/Test.idl +26 -0
  116. data/test/Connect_Timeout/client.rb +109 -0
  117. data/test/Connect_Timeout/run_test.rb +51 -0
  118. data/test/DII/Test.idl +26 -0
  119. data/test/DII/client.rb +114 -0
  120. data/test/DII/run_test.rb +68 -0
  121. data/test/DII/server.rb +94 -0
  122. data/test/DSI/Test.idl +26 -0
  123. data/test/DSI/client.rb +65 -0
  124. data/test/DSI/run_test.rb +68 -0
  125. data/test/DSI/server.rb +105 -0
  126. data/test/Exceptions/Test.idl +47 -0
  127. data/test/Exceptions/client.rb +117 -0
  128. data/test/Exceptions/run_test.rb +68 -0
  129. data/test/Exceptions/server.rb +130 -0
  130. data/test/Hello/Test.idl +26 -0
  131. data/test/Hello/client.rb +77 -0
  132. data/test/Hello/run_test.rb +70 -0
  133. data/test/Hello/server.rb +94 -0
  134. data/test/IDL_Test/Test.idl +116 -0
  135. data/test/IDL_Test/Test_inc.idl +17 -0
  136. data/test/IDL_Test/client.rb +103 -0
  137. data/test/IDL_Test/run_test.rb +68 -0
  138. data/test/IDL_Test/server.rb +103 -0
  139. data/test/IORMap/Test.idl +26 -0
  140. data/test/IORMap/client.rb +72 -0
  141. data/test/IORMap/run_test.rb +68 -0
  142. data/test/IORMap/server.rb +113 -0
  143. data/test/IORTable/Test.idl +26 -0
  144. data/test/IORTable/client.rb +74 -0
  145. data/test/IORTable/run_test.rb +68 -0
  146. data/test/IORTable/server.rb +129 -0
  147. data/test/Implicit_Conversion/Test.idl +30 -0
  148. data/test/Implicit_Conversion/client.rb +112 -0
  149. data/test/Implicit_Conversion/run_test.rb +68 -0
  150. data/test/Implicit_Conversion/server.rb +98 -0
  151. data/test/Multi_Threading/Multiple_ORB/Test.idl +26 -0
  152. data/test/Multi_Threading/Multiple_ORB/client.rb +81 -0
  153. data/test/Multi_Threading/Multiple_ORB/run_test.rb +70 -0
  154. data/test/Multi_Threading/Multiple_ORB/server.rb +107 -0
  155. data/test/Multi_Threading/Simple/Test.idl +26 -0
  156. data/test/Multi_Threading/Simple/client.rb +92 -0
  157. data/test/Multi_Threading/Simple/run_test.rb +68 -0
  158. data/test/Multi_Threading/Simple/server.rb +117 -0
  159. data/test/Multi_Threading/Threads/Test.idl +27 -0
  160. data/test/Multi_Threading/Threads/client.rb +77 -0
  161. data/test/Multi_Threading/Threads/run_test.rb +75 -0
  162. data/test/Multi_Threading/Threads/server.rb +116 -0
  163. data/test/Multi_Threading/Threads/watchdog.rb +87 -0
  164. data/test/Multiple_Servant_Interfaces/Test.idl +33 -0
  165. data/test/Multiple_Servant_Interfaces/client.rb +69 -0
  166. data/test/Multiple_Servant_Interfaces/run_test.rb +68 -0
  167. data/test/Multiple_Servant_Interfaces/server.rb +101 -0
  168. data/test/Nil/Test.idl +26 -0
  169. data/test/Nil/run_test.rb +51 -0
  170. data/test/Nil/test.rb +80 -0
  171. data/test/OBV/AbstractInterface/client.rb +178 -0
  172. data/test/OBV/AbstractInterface/run_test.rb +68 -0
  173. data/test/OBV/AbstractInterface/server.rb +149 -0
  174. data/test/OBV/AbstractInterface/test.idl +52 -0
  175. data/test/OBV/Custom/OBV.idl +18 -0
  176. data/test/OBV/Custom/OBV_impl.rb +41 -0
  177. data/test/OBV/Custom/client.rb +85 -0
  178. data/test/OBV/Custom/run_test.rb +68 -0
  179. data/test/OBV/Custom/server.rb +99 -0
  180. data/test/OBV/Simple/OBV.idl +15 -0
  181. data/test/OBV/Simple/OBV_impl.rb +26 -0
  182. data/test/OBV/Simple/client.rb +85 -0
  183. data/test/OBV/Simple/run_test.rb +68 -0
  184. data/test/OBV/Simple/server.rb +99 -0
  185. data/test/OBV/Simple_Event/Event.idl +15 -0
  186. data/test/OBV/Simple_Event/Event_impl.rb +26 -0
  187. data/test/OBV/Simple_Event/client.rb +85 -0
  188. data/test/OBV/Simple_Event/run_test.rb +68 -0
  189. data/test/OBV/Simple_Event/server.rb +99 -0
  190. data/test/OBV/Supports/client.rb +115 -0
  191. data/test/OBV/Supports/run_test.rb +68 -0
  192. data/test/OBV/Supports/server.rb +102 -0
  193. data/test/OBV/Supports/supports.idl +32 -0
  194. data/test/OBV/Supports/supports_impl.rb +59 -0
  195. data/test/OBV/Tree/client.rb +115 -0
  196. data/test/OBV/Tree/run_test.rb +68 -0
  197. data/test/OBV/Tree/server.rb +116 -0
  198. data/test/OBV/Tree/test.idl +31 -0
  199. data/test/OBV/Truncatable/Extra.idl +26 -0
  200. data/test/OBV/Truncatable/Truncatable.idl +105 -0
  201. data/test/OBV/Truncatable/Truncatable_impl.rb +85 -0
  202. data/test/OBV/Truncatable/client.rb +278 -0
  203. data/test/OBV/Truncatable/run_test.rb +68 -0
  204. data/test/OBV/Truncatable/server.rb +88 -0
  205. data/test/OBV/ValueBox/client.rb +497 -0
  206. data/test/OBV/ValueBox/run_test.rb +68 -0
  207. data/test/OBV/ValueBox/server.rb +271 -0
  208. data/test/OBV/ValueBox/valuebox.idl +101 -0
  209. data/test/OBV/ValueBox/vb_basic.idl +75 -0
  210. data/test/OBV/ValueBox/vb_struct.idl +68 -0
  211. data/test/OBV/ValueBox/vb_union.idl +21 -0
  212. data/test/Object/Test.idl +26 -0
  213. data/test/Object/client.rb +111 -0
  214. data/test/Object/run_test.rb +68 -0
  215. data/test/Object/server.rb +125 -0
  216. data/test/POA/Test.idl +27 -0
  217. data/test/POA/run_test.rb +51 -0
  218. data/test/POA/test.rb +111 -0
  219. data/test/Param_Test/Test.idl +182 -0
  220. data/test/Param_Test/client.rb +276 -0
  221. data/test/Param_Test/run_test.rb +68 -0
  222. data/test/Param_Test/server.rb +295 -0
  223. data/test/Performance/Simple/Test.idl +26 -0
  224. data/test/Performance/Simple/client.rb +89 -0
  225. data/test/Performance/Simple/run_test.rb +68 -0
  226. data/test/Performance/Simple/server.rb +94 -0
  227. data/test/Policies/Test.idl +26 -0
  228. data/test/Policies/run_test.rb +51 -0
  229. data/test/Policies/test.rb +142 -0
  230. data/test/Timeout/client.rb +206 -0
  231. data/test/Timeout/run_test.rb +68 -0
  232. data/test/Timeout/server.rb +108 -0
  233. data/test/Timeout/test.idl +18 -0
  234. data/test/lib/assert.rb +41 -0
  235. data/test/lib/test.rb +546 -0
  236. data/test/test_runner.rb +191 -0
  237. metadata +318 -0
@@ -0,0 +1,149 @@
1
+ #--------------------------------------------------------------------
2
+ # mkrf_conf_bingem.rb - Rakefile generator binary gem installation
3
+ #
4
+ # Author: Martin Corino
5
+ #
6
+ # This program is free software; you can redistribute it and/or
7
+ # modify it under the terms of the R2CORBA LICENSE which is
8
+ # included with this program.
9
+ #
10
+ # Copyright (c) Remedy IT Expertise BV
11
+ #--------------------------------------------------------------------
12
+
13
+ # generate Rakefile with appropriate default task (all actual task in rakelib)
14
+ File.open('Rakefile', 'w') do |f|
15
+ f.puts <<EOF__
16
+ #--------------------------------------------------------------------
17
+ # Rakefile - build file for srcgem installation
18
+ #
19
+ # Author: Martin Corino
20
+ #
21
+ # This program is free software; you can redistribute it and/or
22
+ # modify it under the terms of the R2CORBA LICENSE which is
23
+ # included with this program.
24
+ #
25
+ # Copyright (c) Remedy IT Expertise BV
26
+ #--------------------------------------------------------------------
27
+
28
+ if defined?(JRUBY_VERSION)
29
+ task :default => 'r2corba:build'
30
+ else
31
+ task :default => 'r2corba:gem:binbuild'
32
+ end
33
+ EOF__
34
+ end
35
+
36
+ if defined?(JRUBY_VERSION)
37
+
38
+ unless system("ruby -S rake -- configure --jacorb-home=#{File.expand_path('ext')}")
39
+ $stderr.puts 'Failed to configure R2CORBA'
40
+ exit(1)
41
+ end
42
+
43
+ else
44
+ require 'rbconfig'
45
+ if defined? ::RbConfig
46
+ RB_CONFIG = ::RbConfig::CONFIG
47
+ else
48
+ RB_CONFIG = ::Config::CONFIG
49
+ end unless defined? RB_CONFIG
50
+
51
+ # check if we have a full bin gem here, or one without extension binaries
52
+ if Dir["ext/*.#{RB_CONFIG['DLEXT']}"].empty?
53
+
54
+ RB_VER_MAJOR, RB_VER_MINOR, RB_VER_REL = RUBY_VERSION.split('.').collect {|n| n.to_i}
55
+
56
+ require File.join(File.dirname(__FILE__), 'lib', 'corba', 'common', 'version.rb')
57
+
58
+ require 'rubygems'
59
+ require 'rubygems/command.rb'
60
+ require 'rubygems/dependency_installer.rb'
61
+ require 'rubygems/uninstaller'
62
+ require 'fileutils'
63
+
64
+ ## ==========================================================================================##
65
+
66
+ # determin rubygems version
67
+ gem_ver_major, gem_ver_minor, gem_ver_release = Gem::VERSION.split('.').collect {|s| s.to_i }
68
+ # in case of rubygems 2.3.0 - 2.4.5
69
+ if gem_ver_major == 2 && (gem_ver_minor == 3 || (gem_ver_minor == 4 && gem_ver_release <= 5))
70
+ # patch the Gem::Resolver::InstallerSet class
71
+ require 'rubygems/resolver/installer_set'
72
+ class ::Gem::Resolver::InstallerSet
73
+ def add_always_install dependency
74
+ request = Gem::Resolver::DependencyRequest.new dependency, nil
75
+
76
+ found = find_all request
77
+
78
+ found.delete_if { |s|
79
+ s.version.prerelease? and not s.local?
80
+ } unless dependency.prerelease?
81
+
82
+ found = found.select do |s|
83
+ Gem::Source::SpecificFile === s.source or
84
+ Gem::Platform::RUBY == s.platform or
85
+ # *** MCO patch *** use correct platform comparison -> s.platform === String
86
+ Gem::Platform.local =~ s.platform
87
+ end
88
+
89
+ if found.empty? then
90
+ exc = Gem::UnsatisfiableDependencyError.new request
91
+ exc.errors = errors
92
+
93
+ raise exc
94
+ end
95
+
96
+ newest = found.max_by do |s|
97
+ [s.version, s.platform == Gem::Platform::RUBY ? -1 : 1]
98
+ end
99
+
100
+ @always_install << newest.spec
101
+ end
102
+ end
103
+ end
104
+
105
+ ## ==========================================================================================##
106
+
107
+ begin
108
+ Gem::Command.build_args = ARGV
109
+ rescue NoMethodError
110
+ end
111
+ unless ENV['R2CORBA_GEM_SOURCE'].to_s.empty?
112
+ # make sure the RubyGems configuration has been loaded as this potentially overwrites
113
+ # Gem.sources
114
+ Gem.configuration
115
+ # add custom source
116
+ Gem.sources << ENV['R2CORBA_GEM_SOURCE']
117
+ puts "Gem sources: #{Gem.sources.to_a}"
118
+ end
119
+ inst = Gem::DependencyInstaller.new
120
+ begin
121
+ # install corresponding gem with extension binaries
122
+ puts "Installing extension binaries gem: r2corba_ext#{RB_VER_MAJOR}#{RB_VER_MINOR}-#{R2CORBA::R2CORBA_VERSION}."
123
+ spec = inst.install("r2corba_ext#{RB_VER_MAJOR}#{RB_VER_MINOR}", R2CORBA::R2CORBA_VERSION.dup).last
124
+ begin
125
+ # move extension binaries from extension binaries gem location to our own
126
+ srcdir = File.join(spec.gem_dir, 'ext')
127
+ puts "Moving extension binaries from #{srcdir}"
128
+ Dir[File.join(srcdir, '*')].each do |extpath|
129
+ FileUtils.mv(extpath, 'ext', :force => true)
130
+ end
131
+ ensure
132
+ # uninstall extension binaries gem
133
+ puts "Uninstalling extension binaries gem: r2corba_ext#{RB_VER_MAJOR}#{RB_VER_MINOR}-#{R2CORBA::R2CORBA_VERSION}."
134
+ Gem::Uninstaller.new("r2corba_ext#{RB_VER_MAJOR}#{RB_VER_MINOR}", :version => R2CORBA::R2CORBA_VERSION.dup).uninstall
135
+ end
136
+ rescue
137
+ puts "Failed to install binary r2corba_ext#{RB_VER_MAJOR}#{RB_VER_MINOR} v. #{R2CORBA::R2CORBA_VERSION} gem for #{RUBY_PLATFORM}."
138
+ puts "#{$!}\n#{$!.backtrace.join('\n')}"
139
+ exit(1)
140
+ end
141
+
142
+ end
143
+
144
+ puts 'Running rake -- configure --without-tao'
145
+ unless system('rake -- configure --without-tao')
146
+ puts 'Failed to configure R2CORBA.'
147
+ exit(1)
148
+ end
149
+ end
data/rakelib/bin.rake ADDED
@@ -0,0 +1,79 @@
1
+ #--------------------------------------------------------------------
2
+ # bin.rake - build file
3
+ #
4
+ # Author: Martin Corino
5
+ #
6
+ # This program is free software; you can redistribute it and/or
7
+ # modify it under the terms of the R2CORBA LICENSE which is
8
+ # included with this program.
9
+ #
10
+ # Copyright (c) Remedy IT Expertise BV
11
+ #--------------------------------------------------------------------
12
+
13
+ require File.join(File.dirname(__FILE__), 'bin.rb')
14
+
15
+ directory 'bin'
16
+
17
+ file File.join('bin', 'ridlc') => ['bin'] do |t|
18
+ File.open(t.name, 'w') { |f| f.puts R2CORBA::Bin.ridlc }
19
+ File.chmod(0755, t.name)
20
+ end
21
+
22
+ CLOBBER.include File.join('bin', 'ridlc')
23
+
24
+ file File.join('bin', 'rins') => ['bin'] do |t|
25
+ File.open(t.name, 'w') { |f| f.puts R2CORBA::Bin.rins }
26
+ File.chmod(0755, t.name)
27
+ end
28
+
29
+ CLOBBER.include File.join('bin', 'rins')
30
+
31
+ file File.join('bin', 'r2corba') => ['bin'] do |t|
32
+ File.open(t.name, 'w') { |f| f.puts R2CORBA::Bin.r2corba }
33
+ File.chmod(0755, t.name)
34
+ end
35
+
36
+ CLOBBER.include File.join('bin', 'r2corba')
37
+
38
+ namespace :r2corba do
39
+ #desc 'Generate R2CORBA executor scripts'
40
+ namespace :bin do
41
+ task :build => ['r2corba:bin:check', 'r2corba:bin:files']
42
+
43
+ task :check do
44
+ R2CORBA::Bin.binaries.each do |bin|
45
+ if File.exist?(File.join('bin', bin))
46
+ content = IO.read(File.join('bin', bin))
47
+ rm_f(File.join('bin', bin)) unless content == R2CORBA::Bin.__send__(bin.gsub('.', '_').to_sym)
48
+ end
49
+ end
50
+ end
51
+
52
+ task :files => [File.join('bin', 'ridlc'), File.join('bin', 'rins'), File.join('bin', 'r2corba')]
53
+ end
54
+ end
55
+
56
+ if R2CORBA::Config.is_win32 || defined?(JRUBY_VERSION)
57
+
58
+ file File.join('bin', 'ridlc.bat') => ['bin'] do |t|
59
+ File.open(t.name, 'w') { |f| f.puts R2CORBA::Bin.ridlc_bat }
60
+ end
61
+ Rake::Task['r2corba:bin:files'].enhance [File.join('bin', 'ridlc.bat')]
62
+
63
+ CLOBBER.include File.join('bin', 'ridlc.bat')
64
+
65
+ file File.join('bin', 'rins.bat') => ['bin'] do |t|
66
+ File.open(t.name, 'w') { |f| f.puts R2CORBA::Bin.rins_bat }
67
+ end
68
+ Rake::Task['r2corba:bin:files'].enhance [File.join('bin', 'rins.bat')]
69
+
70
+ CLOBBER.include File.join('bin', 'rins.bat')
71
+
72
+ file File.join('bin', 'r2corba.bat') => ['bin'] do |t|
73
+ File.open(t.name, 'w') { |f| f.puts R2CORBA::Bin.r2corba_bat }
74
+ end
75
+ Rake::Task['r2corba:bin:files'].enhance [File.join('bin', 'r2corba.bat')]
76
+
77
+ CLOBBER.include File.join('bin', 'r2corba.bat')
78
+
79
+ end
data/rakelib/bin.rb ADDED
@@ -0,0 +1,145 @@
1
+ #--------------------------------------------------------------------
2
+ # bin.rb - build file
3
+ #
4
+ # Author: Martin Corino
5
+ #
6
+ # This program is free software; you can redistribute it and/or
7
+ # modify it under the terms of the R2CORBA LICENSE which is
8
+ # included with this program.
9
+ #
10
+ # Copyright (c) Remedy IT Expertise BV
11
+ #--------------------------------------------------------------------
12
+
13
+ require File.join(File.dirname(__FILE__), 'config.rb')
14
+
15
+ module R2CORBA
16
+
17
+ module Bin
18
+
19
+ def self.ridlc
20
+ <<_SH_TXT
21
+ #!#{Config.is_win32 ? '/bin/' : (`which env`).strip + ' '}#{R2CORBA::RB_CONFIG['ruby_install_name']}
22
+ #---------------------------------
23
+ # This file is generated
24
+ #---------------------------------
25
+ ENV['RIDL_BE_SELECT'] = 'ruby'
26
+ unless defined? Gem
27
+ require 'rubygems' rescue nil
28
+ end
29
+ require 'ridl/ridl'
30
+
31
+ IDL.run
32
+ _SH_TXT
33
+ end
34
+
35
+ def self.ridlc_bat
36
+ <<_BAT_TXT
37
+ @echo off
38
+ if not "%~f0" == "~f0" goto WinNT
39
+ #{R2CORBA::RB_CONFIG['ruby_install_name']} -Sx "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9
40
+ goto endofruby
41
+ :WinNT
42
+ if not exist "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" goto rubyfrompath
43
+ if exist "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" -x "%~f0" %*
44
+ goto endofruby
45
+ :rubyfrompath
46
+ #{R2CORBA::RB_CONFIG['ruby_install_name']} -x "%~f0" %*
47
+ goto endofruby
48
+ #!/bin/#{R2CORBA::RB_CONFIG['ruby_install_name']}
49
+ #
50
+ ENV['RIDL_BE_SELECT'] = 'ruby'
51
+ unless defined? Gem
52
+ require 'rubygems' rescue nil
53
+ end
54
+ require 'ridl/ridl'
55
+
56
+ IDL.run
57
+
58
+ __END__
59
+ :endofruby
60
+ _BAT_TXT
61
+ end
62
+
63
+ def self.rins_bat
64
+ <<_BAT_TXT
65
+ @echo off
66
+ if not "%~f0" == "~f0" goto WinNT
67
+ #{R2CORBA::RB_CONFIG['ruby_install_name']} -Sx "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9
68
+ goto endofruby
69
+ :WinNT
70
+ if not exist "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" goto rubyfrompath
71
+ if exist "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" -x "%~f0" %*
72
+ goto endofruby
73
+ :rubyfrompath
74
+ #{R2CORBA::RB_CONFIG['ruby_install_name']} -x "%~f0" %*
75
+ goto endofruby
76
+ #!/bin/#{R2CORBA::RB_CONFIG['ruby_install_name']}
77
+ #
78
+ require 'corba/svcs/ins/ins'
79
+
80
+ INS.run
81
+
82
+ __END__
83
+ :endofruby
84
+ _BAT_TXT
85
+ end
86
+
87
+ def self.rins
88
+ <<_SH_TXT
89
+ #!#{Config.is_win32 ? '/bin/' : (`which env`).strip + ' '}#{R2CORBA::RB_CONFIG['ruby_install_name']}
90
+ #---------------------------------
91
+ # This file is generated
92
+ #---------------------------------
93
+ require 'corba/svcs/ins/ins'
94
+
95
+ INS.run
96
+ _SH_TXT
97
+ end
98
+
99
+ def self.r2corba
100
+ <<_SH_TXT
101
+ #!#{Config.is_win32 ? '/bin/' : (`which env`).strip + ' '}#{R2CORBA::RB_CONFIG['ruby_install_name']}
102
+ #---------------------------------
103
+ # This file is generated
104
+ #---------------------------------
105
+ unless defined? Gem
106
+ require 'rubygems' rescue nil
107
+ end
108
+ require 'corba/cmds/base'
109
+ _SH_TXT
110
+ end
111
+
112
+ def self.r2corba_bat
113
+ <<_BAT_TXT
114
+ @echo off
115
+ if not "%~f0" == "~f0" goto WinNT
116
+ #{R2CORBA::RB_CONFIG['ruby_install_name']} -Sx "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9
117
+ goto endofruby
118
+ :WinNT
119
+ if not exist "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" goto rubyfrompath
120
+ if exist "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" "%~d0%~p0#{R2CORBA::RB_CONFIG['ruby_install_name']}" -x "%~f0" %*
121
+ goto endofruby
122
+ :rubyfrompath
123
+ #{R2CORBA::RB_CONFIG['ruby_install_name']} -x "%~f0" %*
124
+ goto endofruby
125
+ #!/bin/#{R2CORBA::RB_CONFIG['ruby_install_name']}
126
+ #
127
+ unless defined? Gem
128
+ require 'rubygems' rescue nil
129
+ end
130
+ require 'corba/cmds/base'
131
+
132
+ __END__
133
+ :endofruby
134
+ _BAT_TXT
135
+ end
136
+
137
+ def self.binaries
138
+ l = %w{ridlc rins r2corba}
139
+ l.concat %w{ridlc.bat rins.bat r2corba.bat} if R2CORBA::Config.is_win32 || defined?(JRUBY_VERSION)
140
+ l
141
+ end
142
+
143
+ end # Bin
144
+
145
+ end # R2CORBA
@@ -0,0 +1,87 @@
1
+ #--------------------------------------------------------------------
2
+ # build.rake - build file
3
+ #
4
+ # Author: Martin Corino
5
+ #
6
+ # This program is free software; you can redistribute it and/or
7
+ # modify it under the terms of the R2CORBA LICENSE which is
8
+ # included with this program.
9
+ #
10
+ # Copyright (c) Remedy IT Expertise BV
11
+ #--------------------------------------------------------------------
12
+
13
+ require File.join(File.dirname(__FILE__), 'config.rb')
14
+
15
+ namespace :r2corba do
16
+ task :build_bin => [R2CORBA::BUILD_CFG]
17
+
18
+ #desc 'Compile R2CORBA base IDL files'
19
+ task :build_idl => [R2CORBA::BUILD_CFG]
20
+
21
+ task :build => [R2CORBA::BUILD_CFG] # everything handled in dependecies
22
+ end
23
+
24
+ unless defined?(JRUBY_VERSION)
25
+ Rake::Task['r2corba:build'].enhance ['r2corba:ext:build']
26
+ end
27
+ Rake::Task['r2corba:build'].enhance ['r2corba:bin:build', 'r2corba:build_idl']
28
+
29
+ desc 'Build R2CORBA'
30
+ task :build => 'r2corba:build'
31
+
32
+ ## compile base IDL
33
+
34
+ r2c_idlc_root = File.join('lib', 'corba', 'idl')
35
+ stdidl_root = File.join('lib', 'idl')
36
+
37
+ orb_pidlc = File.join('lib', 'ridlbe', 'ruby', 'orb.pidlc')
38
+ file orb_pidlc => [R2CORBA::BUILD_CFG] do |t|
39
+ sh("#{R2CORBA::Config.ridlc} --preprocess --output #{t.name} --include=#{stdidl_root} orb.idl")
40
+ end
41
+ Rake::Task['r2corba:build_idl'].enhance [orb_pidlc]
42
+ CLOBBER.include orb_pidlc
43
+
44
+ file File.join(r2c_idlc_root, 'r2c_orb.rb') => [R2CORBA::BUILD_CFG, orb_pidlc] do |t|
45
+ cmd = R2CORBA::Config.ridlc
46
+ cmd << " --ignore-pidl --output #{t.name} --namespace=R2CORBA --include=#{stdidl_root}" <<
47
+ ' --stubs-only --expand-includes --search-includepath --no-libinit --interface-as-class=TypeCode orb.idl'
48
+ sh(cmd)
49
+ end
50
+ Rake::Task['r2corba:build_idl'].enhance [File.join(r2c_idlc_root, 'r2c_orb.rb')]
51
+ CLOBBER.include File.join(r2c_idlc_root, 'r2c_orb.rb')
52
+
53
+ [ ['POA', 'PortableServer.pidl'],
54
+ ['Messaging', 'Messaging.pidl'],
55
+ ['BiDirPolicy', 'BiDirPolicy.pidl'],
56
+ ].each do |stub, pidl|
57
+ file File.join(r2c_idlc_root, stub + 'C.rb') => [R2CORBA::BUILD_CFG, orb_pidlc] do |t|
58
+ cmd = R2CORBA::Config.ridlc
59
+ cmd << " --output #{t.name} --namespace=R2CORBA --include=#{stdidl_root} --stubs-only --expand-includes --search-includepath --no-libinit #{pidl}"
60
+ sh(cmd)
61
+ end
62
+ Rake::Task['r2corba:build_idl'].enhance [File.join(r2c_idlc_root, stub + 'C.rb')]
63
+ CLOBBER.include File.join(r2c_idlc_root, stub + 'C.rb')
64
+ end
65
+
66
+ unless defined?(JRUBY_VERSION)
67
+ r2tao_root = File.join('lib', 'corba', 'cbase')
68
+ tao_root = get_config('taoroot')
69
+ [ 'TAO_Ext', 'IORTable' ].each do |stub|
70
+ file File.join(r2c_idlc_root, stub + 'C.rb') => [R2CORBA::BUILD_CFG, orb_pidlc] do |t|
71
+ cmd = R2CORBA::Config.ridlc
72
+ cmd << " --output #{t.name} --namespace=R2CORBA --include=#{stdidl_root} --stubs-only --expand-includes -I#{tao_root}" <<
73
+ " --search-includepath --no-libinit #{File.join(r2c_idlc_root, stub + '.pidl')}"
74
+ sh(cmd)
75
+ end
76
+ Rake::Task['r2corba:build_idl'].enhance [File.join(r2c_idlc_root, stub + 'C.rb')]
77
+ CLOBBER.include File.join(r2c_idlc_root, stub + 'C.rb')
78
+ end
79
+ end
80
+
81
+ file File.join(r2c_idlc_root, 'CosNamingC.rb') => [R2CORBA::BUILD_CFG, orb_pidlc] do |t|
82
+ cmd = R2CORBA::Config.ridlc
83
+ cmd << " -o #{r2c_idlc_root} --include=#{stdidl_root} --expand-includes --search-includepath CosNaming.idl"
84
+ sh(cmd)
85
+ end
86
+ Rake::Task['r2corba:build_idl'].enhance [File.join(r2c_idlc_root, 'CosNamingC.rb')]
87
+ CLOBBER.include File.join(r2c_idlc_root, 'CosNamingC.rb')
@@ -0,0 +1,51 @@
1
+ #--------------------------------------------------------------------
2
+ # config.rake - build file
3
+ #
4
+ # Author: Martin Corino
5
+ #
6
+ # This program is free software; you can redistribute it and/or
7
+ # modify it under the terms of the R2CORBA LICENSE which is
8
+ # included with this program.
9
+ #
10
+ # Copyright (c) Remedy IT Expertise BV
11
+ #--------------------------------------------------------------------
12
+
13
+ require File.join(File.dirname(__FILE__), 'config.rb')
14
+
15
+ namespace :r2corba do
16
+ task :configure do
17
+ R2CORBA::Config.define
18
+ R2CORBA::Config.check
19
+ R2CORBA::Config.save
20
+ # find out if more tasks were specified to run after configure
21
+ while ARGV.shift.to_s =~ /^(r2corba:)?configure$/ do; end
22
+ # if so start a new rake process to run these
23
+ unless ARGV.empty?
24
+ # restarting ensures correct loading of config and the tasks that depend on that
25
+ exec('rake', *ARGV)
26
+ end
27
+ end
28
+
29
+ namespace :config do
30
+ task :show do
31
+ R2CORBA::CFGKEYS.each do |ck|
32
+ puts '%20s => %s' % [ck, get_config(ck)]
33
+ end
34
+ end
35
+ end
36
+ end
37
+
38
+ desc 'Configure R2CORBA build settings (calling with "-- --help" provides usage information).'
39
+ task :configure => 'r2corba:configure'
40
+
41
+ desc 'Show current R2CORBA build settings'
42
+ task :show => 'r2corba:config:show'
43
+
44
+ file R2CORBA::BUILD_CFG do
45
+ unless File.file?(R2CORBA::BUILD_CFG)
46
+ STDERR.puts "Build configuration missing! First run 'rake r2corba::configure'."
47
+ exit(1)
48
+ end
49
+ end
50
+
51
+ CLOBBER.include R2CORBA::BUILD_CFG