glib2 1.2.6-x86-mingw32 → 2.0.0-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. data/Rakefile +59 -24
  2. data/ext/glib2/extconf.rb +1 -1
  3. data/ext/glib2/glib2.def +1 -0
  4. data/ext/glib2/rbglib.h +3 -3
  5. data/lib/1.9/glib2.so +0 -0
  6. data/lib/2.0/glib2.so +0 -0
  7. data/lib/glib2.rb +11 -10
  8. data/lib/gnome2-raketask.rb +4 -226
  9. data/lib/gnome2/rake/external-package.rb +198 -0
  10. data/lib/gnome2/rake/native-binary-build-task.rb +108 -0
  11. data/lib/gnome2/rake/package-task.rb +244 -0
  12. data/lib/gnome2/rake/package.rb +122 -0
  13. data/lib/gnome2/rake/source-download-task.rb +81 -0
  14. data/lib/gnome2/rake/win32-binary-build-task.rb +223 -0
  15. data/lib/{gnome2-win32-binary-download-task.rb → gnome2/rake/win32-binary-download-task.rb} +7 -7
  16. data/lib/mkmf-gnome2.rb +3 -2
  17. data/vendor/local/bin/certtool.exe +0 -0
  18. data/vendor/local/bin/danetool.exe +0 -0
  19. data/vendor/local/bin/gdbus.exe +0 -0
  20. data/vendor/local/bin/gio-querymodules.exe +0 -0
  21. data/vendor/local/bin/glib-compile-resources.exe +0 -0
  22. data/vendor/local/bin/glib-compile-schemas.exe +0 -0
  23. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  24. data/vendor/local/bin/gnutls-cli-debug.exe +0 -0
  25. data/vendor/local/bin/gnutls-cli.exe +0 -0
  26. data/vendor/local/bin/gnutls-serv.exe +0 -0
  27. data/vendor/local/bin/gobject-query.exe +0 -0
  28. data/vendor/local/bin/gresource.exe +0 -0
  29. data/vendor/local/bin/gsettings.exe +0 -0
  30. data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
  31. data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
  32. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  33. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  34. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  35. data/vendor/local/bin/libgmp-10.dll +0 -0
  36. data/vendor/local/bin/libgnutls-28.dll +0 -0
  37. data/vendor/local/bin/libgnutls-openssl-27.dll +0 -0
  38. data/vendor/local/bin/libgnutls-xssl-0.dll +0 -0
  39. data/vendor/local/bin/libgnutlsxx-28.dll +0 -0
  40. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  41. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  42. data/vendor/local/bin/libhogweed-2-2.dll +0 -0
  43. data/vendor/local/bin/libnettle-4-4.dll +0 -0
  44. data/vendor/local/bin/nettle-hash.exe +0 -0
  45. data/vendor/local/bin/nettle-lfib-stream.exe +0 -0
  46. data/vendor/local/bin/ocsptool.exe +0 -0
  47. data/vendor/local/bin/pkcs1-conv.exe +0 -0
  48. data/vendor/local/bin/psktool.exe +0 -0
  49. data/vendor/local/bin/sexp-conv.exe +0 -0
  50. data/vendor/local/bin/srptool.exe +0 -0
  51. data/vendor/local/include/glib-2.0/libintl.h +464 -0
  52. data/vendor/local/lib/gio/modules/libgiognutls.a +0 -0
  53. data/vendor/local/lib/gio/modules/libgiognutls.dll +0 -0
  54. data/vendor/local/lib/gio/modules/libgiognutls.dll.a +0 -0
  55. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  56. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  57. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  58. data/vendor/local/lib/libgmp.dll.a +0 -0
  59. data/vendor/local/lib/libgnutls-openssl.a +0 -0
  60. data/vendor/local/lib/libgnutls-openssl.dll.a +0 -0
  61. data/vendor/local/lib/libgnutls-xssl.a +0 -0
  62. data/vendor/local/lib/libgnutls-xssl.dll.a +0 -0
  63. data/vendor/local/lib/libgnutls.a +0 -0
  64. data/vendor/local/lib/libgnutls.dll.a +0 -0
  65. data/vendor/local/lib/libgnutlsxx.a +0 -0
  66. data/vendor/local/lib/libgnutlsxx.dll.a +0 -0
  67. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  68. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  69. data/vendor/local/lib/libhogweed.a +0 -0
  70. data/vendor/local/lib/libhogweed.dll.a +0 -0
  71. data/vendor/local/lib/libnettle.a +0 -0
  72. data/vendor/local/lib/libnettle.dll.a +0 -0
  73. data/vendor/local/share/glib-2.0/codegen/__init__.pyc +0 -0
  74. data/vendor/local/share/glib-2.0/codegen/__init__.pyo +0 -0
  75. data/vendor/local/share/glib-2.0/codegen/codegen.pyc +0 -0
  76. data/vendor/local/share/glib-2.0/codegen/codegen.pyo +0 -0
  77. data/vendor/local/share/glib-2.0/codegen/codegen_docbook.pyc +0 -0
  78. data/vendor/local/share/glib-2.0/codegen/codegen_docbook.pyo +0 -0
  79. data/vendor/local/share/glib-2.0/codegen/codegen_main.pyc +0 -0
  80. data/vendor/local/share/glib-2.0/codegen/codegen_main.pyo +0 -0
  81. data/vendor/local/share/glib-2.0/codegen/config.pyc +0 -0
  82. data/vendor/local/share/glib-2.0/codegen/config.pyo +0 -0
  83. data/vendor/local/share/glib-2.0/codegen/dbustypes.pyc +0 -0
  84. data/vendor/local/share/glib-2.0/codegen/dbustypes.pyo +0 -0
  85. data/vendor/local/share/glib-2.0/codegen/parser.pyc +0 -0
  86. data/vendor/local/share/glib-2.0/codegen/parser.pyo +0 -0
  87. data/vendor/local/share/glib-2.0/codegen/utils.pyc +0 -0
  88. data/vendor/local/share/glib-2.0/codegen/utils.pyo +0 -0
  89. data/vendor/local/share/glib-2.0/schemas/gschemas.compiled +0 -0
  90. metadata +10 -4
  91. data/lib/gnome2-win32-binary-build-task.rb +0 -250
@@ -0,0 +1,198 @@
1
+ # -*- ruby -*-
2
+ #
3
+ # Copyright (C) 2013 Ruby-GNOME2 Project Team
4
+ #
5
+ # This library is free software; you can redistribute it and/or
6
+ # modify it under the terms of the GNU Lesser General Public
7
+ # License as published by the Free Software Foundation; either
8
+ # version 2.1 of the License, or (at your option) any later version.
9
+ #
10
+ # This library is distributed in the hope that it will be useful,
11
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ # Lesser General Public License for more details.
14
+ #
15
+ # You should have received a copy of the GNU Lesser General Public
16
+ # License along with this library; if not, write to the Free Software
17
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+
19
+ module GNOME2
20
+ module Rake
21
+ class ExternalPackage < Struct.new(:name,
22
+ :label,
23
+ :version,
24
+ :download_site,
25
+ :download_base_url,
26
+ :compression_method,
27
+ :windows,
28
+ :native,
29
+ :patches,
30
+ :need_autogen,
31
+ :need_autoreconf,
32
+ :build_concurrently,
33
+ :bundled_packages)
34
+ def initialize(properties)
35
+ super()
36
+ properties.each do |key, value|
37
+ send("#{key}=", value)
38
+ end
39
+ end
40
+
41
+ def compression_method
42
+ super || "gz"
43
+ end
44
+
45
+ def base_name
46
+ "#{name}-#{version}"
47
+ end
48
+
49
+ def archive_base_name
50
+ "#{base_name}.tar.#{compression_method}"
51
+ end
52
+
53
+ def archive_url
54
+ "#{download_base_url}/#{archive_base_name}"
55
+ end
56
+
57
+ def download_base_url
58
+ super || download_site_base_url
59
+ end
60
+
61
+ def patches
62
+ super || []
63
+ end
64
+
65
+ def need_autogen?
66
+ need_autogen
67
+ end
68
+
69
+ def need_autoreconf?
70
+ need_autoreconf
71
+ end
72
+
73
+ def windows
74
+ super || WindowsConfiguration.new({})
75
+ end
76
+
77
+ def windows=(properties)
78
+ super(WindowsConfiguration.new(properties))
79
+ end
80
+
81
+ def native
82
+ super || NativeConfiguration.new({})
83
+ end
84
+
85
+ def native=(properties)
86
+ super(NativeConfiguration.new(properties))
87
+ end
88
+
89
+ def bundled_packages
90
+ super || []
91
+ end
92
+
93
+ private
94
+ def download_site_base_url
95
+ case download_site
96
+ when :gnome
97
+ base_url = "http://ftp.gnome.org/pub/gnome/sources"
98
+ release_series = version.gsub(/\A(\d+\.\d+).+\z/, '\1')
99
+ base_url << "/#{name}/#{release_series}"
100
+ else
101
+ base_url = nil
102
+ end
103
+ base_url
104
+ end
105
+
106
+ class WindowsConfiguration < Struct.new(:build,
107
+ :include_paths,
108
+ :library_paths,
109
+ :configure_args,
110
+ :patches,
111
+ :need_autogen,
112
+ :need_autoreconf,
113
+ :build_concurrently,
114
+ :use_cc_environment_variable)
115
+ def initialize(properties)
116
+ super()
117
+ properties.each do |key, value|
118
+ send("#{key}=", value)
119
+ end
120
+ end
121
+
122
+ def build?
123
+ build.nil? ? true : build
124
+ end
125
+
126
+ def include_paths
127
+ super || []
128
+ end
129
+
130
+ def library_paths
131
+ super || []
132
+ end
133
+
134
+ def configure_args
135
+ super || []
136
+ end
137
+
138
+ def patches
139
+ super || []
140
+ end
141
+
142
+ def need_autogen?
143
+ need_autogen.nil? ? false : need_autogen
144
+ end
145
+
146
+ def need_autoreconf?
147
+ need_autoreconf.nil? ? false : need_autoreconf
148
+ end
149
+
150
+ def build_concurrently?
151
+ build_concurrently.nil? ? true : build_concurrently
152
+ end
153
+
154
+ def use_cc_environment_variable?
155
+ use_cc_environment_variable.nil? ? true : use_cc_environment_variable
156
+ end
157
+ end
158
+
159
+ class NativeConfiguration < Struct.new(:build,
160
+ :configure_args,
161
+ :patches,
162
+ :need_autogen,
163
+ :need_autoreconf,
164
+ :build_concurrently)
165
+ def initialize(properties)
166
+ super()
167
+ properties.each do |key, value|
168
+ send("#{key}=", value)
169
+ end
170
+ end
171
+
172
+ def build?
173
+ build.nil? ? false : build
174
+ end
175
+
176
+ def configure_args
177
+ super || []
178
+ end
179
+
180
+ def patches
181
+ super || []
182
+ end
183
+
184
+ def need_autogen?
185
+ need_autogen.nil? ? false : need_autogen
186
+ end
187
+
188
+ def need_autoreconf?
189
+ need_autoreconf.nil? ? false : need_autoreconf
190
+ end
191
+
192
+ def build_concurrently?
193
+ build_concurrently.nil? ? true : build_concurrently
194
+ end
195
+ end
196
+ end
197
+ end
198
+ end
@@ -0,0 +1,108 @@
1
+ # -*- ruby -*-
2
+ #
3
+ # Copyright (C) 2013 Ruby-GNOME2 Project Team
4
+ #
5
+ # This library is free software; you can redistribute it and/or
6
+ # modify it under the terms of the GNU Lesser General Public
7
+ # License as published by the Free Software Foundation; either
8
+ # version 2.1 of the License, or (at your option) any later version.
9
+ #
10
+ # This library is distributed in the hope that it will be useful,
11
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ # Lesser General Public License for more details.
14
+ #
15
+ # You should have received a copy of the GNU Lesser General Public
16
+ # License along with this library; if not, write to the Free Software
17
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+
19
+ require "rake"
20
+
21
+ module GNOME2
22
+ module Rake
23
+ class NativeBinaryBuildTask
24
+ include ::Rake::DSL
25
+
26
+ def initialize(package)
27
+ @package = package
28
+ end
29
+
30
+ def define
31
+ namespace :native do
32
+ namespace :builder do
33
+ task :before
34
+ define_build_tasks
35
+ build_tasks = build_packages.collect do |package|
36
+ "native:builder:build:#{package.name}"
37
+ end
38
+ task :build => build_tasks
39
+ task :after
40
+ end
41
+
42
+ desc "Build binaries for build environment"
43
+ task :build => [
44
+ "native:builder:before",
45
+ "native:builder:build",
46
+ "native:builder:after",
47
+ ]
48
+ end
49
+ end
50
+
51
+ private
52
+ def define_build_tasks
53
+ namespace :build do
54
+ build_packages.each do |package|
55
+ download_task = "source:downloader:download:#{package.name}"
56
+ desc "Build #{package.label} and install it into #{dist_dir}."
57
+ task package.name => [download_task] do
58
+ package_tmp_dir = @package.tmp_dir + package.name
59
+ rm_rf(package_tmp_dir)
60
+ mkdir_p(package_tmp_dir)
61
+
62
+ tar_full_path = @package.download_dir + package.archive_base_name
63
+ Dir.chdir(package_tmp_dir.to_s) do
64
+ sh("tar", "xf", tar_full_path.to_s) or exit(false)
65
+ end
66
+
67
+ Dir.chdir((package_tmp_dir + package.base_name).to_s) do
68
+ package.native.patches.each do |patch|
69
+ sh("patch -p1 < #{@package.patches_dir}/#{patch}")
70
+ end
71
+ sh("./autogen.sh") if package.native.need_autogen?
72
+ sh("autoreconf --install") if package.native.need_autoreconf?
73
+ sh("./configure",
74
+ "PKG_CONFIG_PATH=#{pkg_config_path}",
75
+ "--prefix=#{dist_dir}",
76
+ *package.native.configure_args) or exit(false)
77
+ common_make_args = []
78
+ common_make_args << "GLIB_COMPILE_SCHEMAS=glib-compile-schemas"
79
+ build_make_args = common_make_args.dup
80
+ install_make_args = common_make_args.dup
81
+ if package.native.build_concurrently?
82
+ make_n_jobs = ENV["MAKE_N_JOBS"]
83
+ build_make_args << "-j#{make_n_jobs}" if make_n_jobs
84
+ end
85
+ sh("nice", "make", *build_make_args) or exit(false)
86
+ sh("make", "install", *install_make_args) or exit(false)
87
+ end
88
+ end
89
+ end
90
+ end
91
+ end
92
+
93
+ def build_packages
94
+ @package.external_packages.select do |package|
95
+ package.native.build?
96
+ end
97
+ end
98
+
99
+ def dist_dir
100
+ @package.native.absolute_binary_dir
101
+ end
102
+
103
+ def pkg_config_path
104
+ dist_dir + "lib/pkgconfig"
105
+ end
106
+ end
107
+ end
108
+ end
@@ -0,0 +1,244 @@
1
+ # coding: utf-8
2
+
3
+ # Copyright(C) 2011 Ruby-GNOME2 Project.
4
+ #
5
+ # This program is licenced under the same license of Ruby-GNOME2.
6
+
7
+ require "find"
8
+ require "pathname"
9
+
10
+ require "rubygems"
11
+ require "rubygems/package_task"
12
+ require "rake/extensiontask"
13
+ require "gnome2/rake/package"
14
+ require "gnome2/rake/external-package"
15
+ require "gnome2/rake/source-download-task"
16
+ require "gnome2/rake/native-binary-build-task"
17
+ require "gnome2/rake/win32-binary-download-task"
18
+ require "gnome2/rake/win32-binary-build-task"
19
+
20
+ module GNOME2
21
+ module Rake
22
+ class PackageTask
23
+ include ::Rake::DSL
24
+
25
+ attr_accessor :name, :summary, :description, :author, :email, :homepage, :required_ruby_version, :post_install_message
26
+ attr_reader :root_dir
27
+ def initialize
28
+ initialize_variables
29
+ initialize_configurations
30
+ file, line, method = caller[1].scan(/^(.*):(\d+)(?::.*`(.*)')?\Z/).first
31
+ @package = Package.new(File.dirname(file))
32
+ @packages = FileList["#{@package.root_dir.parent}/*"].map{|f| File.directory?(f) ? File.basename(f) : nil}.compact
33
+ @name = @package.name
34
+ @cross_compiling_hooks = []
35
+ yield(self) if block_given?
36
+ end
37
+
38
+ def cross_compiling(&block)
39
+ @cross_compiling_hooks << block
40
+ end
41
+
42
+ def define
43
+ task :default => :build
44
+ define_spec
45
+ define_source_tasks
46
+ define_native_tasks
47
+ define_win32_tasks
48
+ define_package_tasks
49
+ end
50
+
51
+ # Deprecated. Use #define instead.
52
+ def define_tasks
53
+ define
54
+ end
55
+
56
+ def ruby_gnome2_package?(name)
57
+ @packages.include?(name)
58
+ end
59
+
60
+ def dependency
61
+ @dependency_configuration
62
+ end
63
+
64
+ def windows
65
+ @package.windows
66
+ end
67
+
68
+ # For backward compatibility
69
+ def win32
70
+ windows
71
+ end
72
+
73
+ def native
74
+ @package.native
75
+ end
76
+
77
+ def version
78
+ ENV["VERSION"] || guess_version
79
+ end
80
+
81
+ def guess_version
82
+ versions = {}
83
+ File.open("#{@package.glib2_root_dir}/ext/glib2/rbglib.h") do |rbglib_h|
84
+ rbglib_h.each_line do |line|
85
+ if /#define\s+RBGLIB_([A-Z]+)_VERSION\s+(\d+)/ =~ line
86
+ versions[$1.downcase] = $2.to_i
87
+ end
88
+ end
89
+ end
90
+ ["major", "minor", "micro"].collect {|type| versions[type]}.compact.join(".")
91
+ end
92
+
93
+ def external_packages=(packages)
94
+ @package.external_packages = packages
95
+ end
96
+
97
+ private
98
+ def initialize_variables
99
+ @summary = ""
100
+ @description = ""
101
+ @author = "The Ruby-GNOME2 Project Team"
102
+ @email = "ruby-gnome2-devel-en@lists.sourceforge.net"
103
+ @homepage = "http://ruby-gnome2.sourceforge.jp/"
104
+ @external_packages = []
105
+ end
106
+
107
+ def initialize_configurations
108
+ @dependency_configuration = DependencyConfiguration.new(self)
109
+ end
110
+
111
+ def define_spec
112
+ @spec = Gem::Specification.new do |s|
113
+ s.name = @name
114
+ s.summary = @summary
115
+ s.description = @description
116
+ s.author = @author
117
+ s.email = @email
118
+ s.homepage = @homepage
119
+ s.version = version
120
+ extensions = FileList["ext/#{@name}/extconf.rb"]
121
+ extensions.existing!
122
+ s.extensions = extensions
123
+ s.require_paths = ["lib"]
124
+ files = FileList["ChangeLog", "README",
125
+ "Rakefile", "extconf.rb",
126
+ "lib/**/*.rb",
127
+ "{ext,sample,test,test-unit}/**/*"]
128
+ files.existing!
129
+ s.files = files
130
+ s.required_ruby_version = @required_ruby_version || ">= 1.8.5"
131
+ s.post_install_message = @post_install_message
132
+ @dependency_configuration.apply(s)
133
+ end
134
+ end
135
+
136
+ def define_source_tasks
137
+ define_source_download_tasks
138
+ end
139
+
140
+ def define_source_download_tasks
141
+ task = SourceDownloadTask.new(@package)
142
+ task.define
143
+ end
144
+
145
+ def define_native_tasks
146
+ define_native_build_tasks
147
+ end
148
+
149
+ def define_native_build_tasks
150
+ task = NativeBinaryBuildTask.new(@package)
151
+ task.define
152
+ end
153
+
154
+ def define_win32_tasks
155
+ define_win32_extension_task
156
+ define_win32_download_task
157
+ define_win32_build_task
158
+ end
159
+
160
+ def so_base_name
161
+ @name.gsub(/-/, "_")
162
+ end
163
+
164
+ def define_win32_extension_task
165
+ ::Rake::ExtensionTask.new(so_base_name, @spec) do |ext|
166
+ ext.ext_dir = "ext/#{@name}"
167
+ ext.cross_compile = true
168
+ ext.cross_compiling do |spec|
169
+ if /mingw|mswin/ =~ spec.platform.to_s
170
+ win32_binary_dir = @package.windows.relative_binary_dir
171
+ win32_files = []
172
+ if win32_binary_dir.exist?
173
+ Find.find(win32_binary_dir.to_s) do |file|
174
+ next if /\.zip\z/ =~ file
175
+ win32_files << file
176
+ end
177
+ end
178
+ spec.files += win32_files
179
+ end
180
+ @cross_compiling_hooks.each do |hook|
181
+ hook.call(spec)
182
+ end
183
+ end
184
+ end
185
+
186
+ def define_win32_download_task
187
+ GNOME2Win32BinaryDownloadTask.new(@package)
188
+ end
189
+
190
+ def define_win32_build_task
191
+ GNOME2Win32BinaryBuildTask.new(@package)
192
+ end
193
+ end
194
+
195
+ def define_package_tasks
196
+ Gem::PackageTask.new(@spec) do |pkg|
197
+ end
198
+ end
199
+
200
+ class DependencyConfiguration
201
+ attr_accessor :platform, :ruby
202
+ def initialize(package)
203
+ @package = package
204
+ @platform = Gem::Platform::RUBY
205
+ @gem_configuration = GemConfiguration.new(@package)
206
+ end
207
+
208
+ def gem
209
+ @gem_configuration
210
+ end
211
+
212
+ def apply(spec)
213
+ spec.platform = @platform
214
+ @gem_configuration.apply(spec)
215
+ end
216
+
217
+ class GemConfiguration
218
+ attr_accessor :runtime, :development
219
+ def initialize(package)
220
+ @package = package
221
+ @runtime = []
222
+ @development = []
223
+ end
224
+
225
+ def apply(spec)
226
+ @runtime.each do |dependency|
227
+ spec.add_runtime_dependency(*append_version(dependency))
228
+ end
229
+
230
+ @development.each do |dependency|
231
+ spec.add_development_dependency(*append_version(dependency))
232
+ end
233
+ end
234
+
235
+ def append_version(dependency)
236
+ name, *ver = dependency.is_a?(Array) ? dependency : [dependency]
237
+ ver << ">= #{@package.version}" if @package.ruby_gnome2_package?(name)
238
+ [name, *ver]
239
+ end
240
+ end
241
+ end
242
+ end
243
+ end
244
+ end