rake-compiler-sgonyea 0.8.1
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.
- data/History.txt +254 -0
- data/Isolate +6 -0
- data/LICENSE.txt +20 -0
- data/README.rdoc +393 -0
- data/Rakefile +21 -0
- data/bin/rake-compiler +24 -0
- data/cucumber.yml +4 -0
- data/features/compile.feature +79 -0
- data/features/cross-compile.feature +22 -0
- data/features/cross-package-multi.feature +15 -0
- data/features/cross-package.feature +14 -0
- data/features/java-compile.feature +22 -0
- data/features/java-no-native-compile.feature +33 -0
- data/features/java-package.feature +24 -0
- data/features/package.feature +40 -0
- data/features/step_definitions/compilation.rb +70 -0
- data/features/step_definitions/cross_compilation.rb +25 -0
- data/features/step_definitions/execution.rb +52 -0
- data/features/step_definitions/folders.rb +32 -0
- data/features/step_definitions/gem.rb +46 -0
- data/features/step_definitions/java_compilation.rb +7 -0
- data/features/support/env.rb +6 -0
- data/features/support/file_template_helpers.rb +137 -0
- data/features/support/generator_helpers.rb +123 -0
- data/features/support/platform_extension_helpers.rb +27 -0
- data/lib/rake/baseextensiontask.rb +90 -0
- data/lib/rake/extensioncompiler.rb +53 -0
- data/lib/rake/extensiontask.rb +431 -0
- data/lib/rake/javaextensiontask.rb +226 -0
- data/spec/lib/rake/extensiontask_spec.rb +481 -0
- data/spec/lib/rake/javaextensiontask_spec.rb +182 -0
- data/spec/spec.opts +3 -0
- data/spec/spec_helper.rb +15 -0
- data/spec/support/capture_output_helper.rb +22 -0
- data/tasks/bin/cross-ruby.rake +196 -0
- data/tasks/bootstrap.rake +11 -0
- data/tasks/common.rake +10 -0
- data/tasks/cucumber.rake +23 -0
- data/tasks/gem.rake +53 -0
- data/tasks/news.rake +39 -0
- data/tasks/release.rake +26 -0
- data/tasks/rspec.rake +9 -0
- metadata +145 -0
data/tasks/gem.rake
ADDED
@@ -0,0 +1,53 @@
|
|
1
|
+
require 'rubygems/package_task'
|
2
|
+
|
3
|
+
GEM_SPEC = Gem::Specification.new do |s|
|
4
|
+
# basic information
|
5
|
+
s.name = "rake-compiler-sgonyea"
|
6
|
+
s.version = "0.8.1"
|
7
|
+
s.platform = Gem::Platform::RUBY
|
8
|
+
|
9
|
+
# description and details
|
10
|
+
s.summary = 'Rake-based Ruby Extension (C, Java) task generator.'
|
11
|
+
s.description = "Provide a standard and simplified way to build and package\nRuby extensions (C, Java) using Rake as glue."
|
12
|
+
|
13
|
+
# requirements
|
14
|
+
s.required_ruby_version = ">= 1.8.6"
|
15
|
+
s.required_rubygems_version = ">= 1.3.5"
|
16
|
+
|
17
|
+
# dependencies
|
18
|
+
s.add_dependency 'rake'
|
19
|
+
|
20
|
+
# development dependencies
|
21
|
+
s.add_development_dependency 'rspec', '~> 2.8.0'
|
22
|
+
s.add_development_dependency 'cucumber', '~> 1.1.4'
|
23
|
+
|
24
|
+
# components, files and paths
|
25
|
+
s.files = FileList["features/**/*.{feature,rb}", "bin/rake-compiler",
|
26
|
+
"lib/**/*.rb", "spec/spec.opts", "spec/**/*.rb",
|
27
|
+
"tasks/**/*.rake", "Rakefile", "Isolate",
|
28
|
+
"*.{rdoc,txt,yml}"]
|
29
|
+
|
30
|
+
s.bindir = 'bin'
|
31
|
+
s.executables = ['rake-compiler']
|
32
|
+
|
33
|
+
s.require_path = 'lib'
|
34
|
+
|
35
|
+
# documentation
|
36
|
+
s.rdoc_options << '--main' << 'README.rdoc' << '--title' << 'rake-compiler -- Documentation'
|
37
|
+
|
38
|
+
s.extra_rdoc_files = %w(README.rdoc LICENSE.txt History.txt)
|
39
|
+
|
40
|
+
# project information
|
41
|
+
s.homepage = 'http://github.com/luislavena/rake-compiler'
|
42
|
+
s.rubyforge_project = 'rake-compiler'
|
43
|
+
s.licenses = ['MIT']
|
44
|
+
|
45
|
+
# author and contributors
|
46
|
+
s.author = 'Luis Lavena'
|
47
|
+
s.email = 'luislavena@gmail.com'
|
48
|
+
end
|
49
|
+
|
50
|
+
gem_package = Gem::PackageTask.new(GEM_SPEC) do |pkg|
|
51
|
+
pkg.need_tar = false
|
52
|
+
pkg.need_zip = false
|
53
|
+
end
|
data/tasks/news.rake
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
desc 'Generate email template to standard output'
|
2
|
+
task :announce do
|
3
|
+
fail "no GEM_SPEC is found or defined. 'announce' task cannot work without it." unless defined?(GEM_SPEC)
|
4
|
+
|
5
|
+
# read project info and overview
|
6
|
+
notes = begin
|
7
|
+
r = File.read("README.rdoc")
|
8
|
+
r.split(/^(=+ .*)/)[1..4].join.strip
|
9
|
+
rescue
|
10
|
+
warn "Missing README.rdoc"
|
11
|
+
''
|
12
|
+
end
|
13
|
+
|
14
|
+
# read changes
|
15
|
+
changes = begin
|
16
|
+
h = File.read("History.txt")
|
17
|
+
h.split(/^(===+ .*)/)[1..2].join.strip
|
18
|
+
rescue
|
19
|
+
warn "Missing History.txt"
|
20
|
+
''
|
21
|
+
end
|
22
|
+
|
23
|
+
# standard fields
|
24
|
+
subject = "#{GEM_SPEC.name} #{GEM_SPEC.version} Released"
|
25
|
+
title = "#{GEM_SPEC.name} version #{GEM_SPEC.version} has been released!"
|
26
|
+
body = "#{notes}\n\nChanges:\n\n#{changes}"
|
27
|
+
urls = [GEM_SPEC.homepage].map { |u| "* <#{u.strip}>" }.join("\n")
|
28
|
+
|
29
|
+
puts "=" * 80, ""
|
30
|
+
puts "Subject: [ANN] #{subject}"
|
31
|
+
puts
|
32
|
+
puts title
|
33
|
+
puts
|
34
|
+
puts urls
|
35
|
+
puts
|
36
|
+
puts body
|
37
|
+
puts
|
38
|
+
puts "=" * 80, ""
|
39
|
+
end
|
data/tasks/release.rake
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
desc 'Package gems and upload to RubyGems'
|
2
|
+
task :release, [:version] => [:package] do |t, args|
|
3
|
+
args.with_defaults(:version => "")
|
4
|
+
ver = args.version
|
5
|
+
|
6
|
+
fail "no GEM_SPEC is found or defined. 'release' task cannot work without it." unless defined?(GEM_SPEC)
|
7
|
+
|
8
|
+
# compare versions to avoid mistakes
|
9
|
+
unless ver == GEM_SPEC.version.to_s then
|
10
|
+
fail "Version mismatch (supplied and specification versions differ)."
|
11
|
+
end
|
12
|
+
|
13
|
+
files = FileList["pkg/#{GEM_SPEC.name}-#{GEM_SPEC.version}*.*"].to_a
|
14
|
+
fail "No files found for the release." if files.empty?
|
15
|
+
|
16
|
+
puts "Files to release:"
|
17
|
+
files.each do |f|
|
18
|
+
puts " * #{f}"
|
19
|
+
end
|
20
|
+
|
21
|
+
puts "Releasing #{GEM_SPEC.name} version #{GEM_SPEC.version}..."
|
22
|
+
files.each do |f|
|
23
|
+
system "gem push #{f}"
|
24
|
+
end
|
25
|
+
puts "Done."
|
26
|
+
end
|
data/tasks/rspec.rake
ADDED
metadata
ADDED
@@ -0,0 +1,145 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rake-compiler-sgonyea
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.8.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Luis Lavena
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2012-08-01 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rake
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: rspec
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ~>
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: 2.8.0
|
38
|
+
type: :development
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 2.8.0
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: cucumber
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ~>
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 1.1.4
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 1.1.4
|
62
|
+
description: ! 'Provide a standard and simplified way to build and package
|
63
|
+
|
64
|
+
Ruby extensions (C, Java) using Rake as glue.'
|
65
|
+
email: luislavena@gmail.com
|
66
|
+
executables:
|
67
|
+
- rake-compiler
|
68
|
+
extensions: []
|
69
|
+
extra_rdoc_files:
|
70
|
+
- README.rdoc
|
71
|
+
- LICENSE.txt
|
72
|
+
- History.txt
|
73
|
+
files:
|
74
|
+
- features/compile.feature
|
75
|
+
- features/cross-compile.feature
|
76
|
+
- features/cross-package-multi.feature
|
77
|
+
- features/cross-package.feature
|
78
|
+
- features/java-compile.feature
|
79
|
+
- features/java-no-native-compile.feature
|
80
|
+
- features/java-package.feature
|
81
|
+
- features/package.feature
|
82
|
+
- features/step_definitions/compilation.rb
|
83
|
+
- features/step_definitions/cross_compilation.rb
|
84
|
+
- features/step_definitions/execution.rb
|
85
|
+
- features/step_definitions/folders.rb
|
86
|
+
- features/step_definitions/gem.rb
|
87
|
+
- features/step_definitions/java_compilation.rb
|
88
|
+
- features/support/env.rb
|
89
|
+
- features/support/file_template_helpers.rb
|
90
|
+
- features/support/generator_helpers.rb
|
91
|
+
- features/support/platform_extension_helpers.rb
|
92
|
+
- bin/rake-compiler
|
93
|
+
- lib/rake/baseextensiontask.rb
|
94
|
+
- lib/rake/extensioncompiler.rb
|
95
|
+
- lib/rake/extensiontask.rb
|
96
|
+
- lib/rake/javaextensiontask.rb
|
97
|
+
- spec/spec.opts
|
98
|
+
- spec/lib/rake/extensiontask_spec.rb
|
99
|
+
- spec/lib/rake/javaextensiontask_spec.rb
|
100
|
+
- spec/spec_helper.rb
|
101
|
+
- spec/support/capture_output_helper.rb
|
102
|
+
- tasks/bin/cross-ruby.rake
|
103
|
+
- tasks/bootstrap.rake
|
104
|
+
- tasks/common.rake
|
105
|
+
- tasks/cucumber.rake
|
106
|
+
- tasks/gem.rake
|
107
|
+
- tasks/news.rake
|
108
|
+
- tasks/release.rake
|
109
|
+
- tasks/rspec.rake
|
110
|
+
- Rakefile
|
111
|
+
- Isolate
|
112
|
+
- README.rdoc
|
113
|
+
- History.txt
|
114
|
+
- LICENSE.txt
|
115
|
+
- cucumber.yml
|
116
|
+
homepage: http://github.com/luislavena/rake-compiler
|
117
|
+
licenses:
|
118
|
+
- MIT
|
119
|
+
post_install_message:
|
120
|
+
rdoc_options:
|
121
|
+
- --main
|
122
|
+
- README.rdoc
|
123
|
+
- --title
|
124
|
+
- rake-compiler -- Documentation
|
125
|
+
require_paths:
|
126
|
+
- lib
|
127
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
128
|
+
none: false
|
129
|
+
requirements:
|
130
|
+
- - ! '>='
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: 1.8.6
|
133
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
134
|
+
none: false
|
135
|
+
requirements:
|
136
|
+
- - ! '>='
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 1.3.5
|
139
|
+
requirements: []
|
140
|
+
rubyforge_project: rake-compiler
|
141
|
+
rubygems_version: 1.8.23
|
142
|
+
signing_key:
|
143
|
+
specification_version: 3
|
144
|
+
summary: Rake-based Ruby Extension (C, Java) task generator.
|
145
|
+
test_files: []
|