Skip to content
This repository has been archived by the owner on Mar 26, 2023. It is now read-only.

Commit

Permalink
Fix merge conflicts in update.sh
Browse files Browse the repository at this point in the history
  • Loading branch information
johnnyt committed Dec 7, 2014
2 parents 374509b + ec11f53 commit 1cb63e8
Show file tree
Hide file tree
Showing 2,092 changed files with 74,035 additions and 39,245 deletions.
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -40,3 +40,9 @@ src/kernel/parser/byacc/config.status
src/kernel/parser/byacc/makefile
src/kernel/parser/byacc/yacc
src/test/capi/Makefile
*.o
*.rbx
etc/maglev.hpi.key
lib/ruby/1.9/openssl/ext/openssl.so
lib/ruby/1.9/openssl/ext/openssl.dylib
lib/ruby/1.9/openssl/ext/openssl.bundle
18 changes: 18 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
language: ruby
before_install:
- "sudo apt-get install -qq libssl-dev"
before_script:
- "./install.sh"
script: "rake travis"
env:
- CI_TESTS=rubyspec
- CI_TESTS=vmunit
- CI_TESTS=vmunit2
- CI_TESTS=p_tests
# These next ones have to be cleaned up, they don't currently pass
# - CI_TESTS=fav_gems
# - CI_TESTS=sinatra
# - CI_TESTS=examples
notifications:
email: false
irc: "irc.freenode.org#maglev-ruby"
3 changes: 2 additions & 1 deletion README.rdoc
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
= MagLev
<b>Build Status:</b> {<img height="18" src="http://ci.rkh.im/view/Maglev/job/MagLev-Rubyspecs/lastBuild/buildStatus"/>}[http://ci.rkh.im/view/Maglev/job/MagLev-Rubyspecs/lastBuild/] {<img height="18" src="http://ci.gemstone.com/job/MagLev_RubySpec-master/lastBuild/buildStatus"/>}[http://ci.gemstone.com/job/MagLev_RubySpec-master/lastBuild/]
<b>Build Status:</b> {<img
src="https://travis-ci.org/MagLev/maglev.png?branch=master" alt="Build Status" />}[https://travis-ci.org/MagLev/maglev]

== Minimum Requirements
* 64-bit hardware. There are no plans for a 32-bit version.
Expand Down
25 changes: 25 additions & 0 deletions Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,31 @@ task :status do
end
end

if ENV["TRAVIS"]
tests = {"rubyspec" => "spec:ci",
"vmunit" => "travis:vmunit",
"vmunit2" => "tests:vmunit2",
"p_tests" => "dev:p-tests",
"fav_gems" => "tests:fav_gems_install",
"sinatra" => "tests:sinatra",
"examples" => "tests:examples"}

task :travis do
Rake::Task["stwrappers"].invoke
ENV["PATH"] = "#{ENV['PATH']}:#{File.dirname(__FILE__)}/bin"
Rake::Task[tests[ENV["CI_TESTS"]]].invoke
end

desc "Run vmunit tests on clean stone and again after update.sh ran"
task :"travis:vmunit" do
unless system("rake tests:vmunit") &&
system("./update.sh") &&
system("rake tests:vmunit")
exit 1
end
end
end

# This initializes the environment, and then ensures that there is a
# gemstone diretory there. Needed to pull this out, since some of the
# initialization tasks need to be performed before there is a gemstone dir
Expand Down
2 changes: 2 additions & 0 deletions bin/maglev
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,8 @@ EOF
if [ "$result" -ne 0 ] ; then
echo "FAILED LOADING PRIMS: $result See $logfile"
fi
$MAGLEV_HOME/bin/maglev-ruby $MAGLEV_HOME/src/kernel/extensions.rb
fi
}
Expand Down
68 changes: 10 additions & 58 deletions bin/rdoc
Original file line number Diff line number Diff line change
@@ -1,67 +1,19 @@
#!/usr/bin/env maglev-ruby
#
# RDoc: Documentation tool for source code
# (see lib/rdoc/rdoc.rb for more information)
# This file was generated by RubyGems.
#
# Copyright (c) 2003 Dave Thomas
# Released under the same terms as Ruby
# The application 'rdoc' is installed as part of a gem, and
# this file is here to facilitate running it.
#
# $Revision: 11708 $

## Transitional Hack ####
#
# RDoc was initially distributed independently, and installed
# itself into <prefix>/lib/ruby/site_ruby/<ver>/rdoc...
#
# Now that RDoc is part of the distribution, it's installed into
# <prefix>/lib/ruby/<ver>, which unfortunately appears later in the
# search path. This means that if you have previously installed RDoc,
# and then install from ruby-lang, you'll pick up the old one by
# default. This hack checks for the condition, and readjusts the
# search path if necessary.

def adjust_for_existing_rdoc(path)

$stderr.puts %{
It seems as if you have a previously-installed RDoc in
the directory #{path}.

Because this is now out-of-date, you might want to consider
removing the directories:

#{File.join(path, "rdoc")}

and
require 'rubygems'

#{File.join(path, "markup")}
version = ">= 0"

}

# Move all the site_ruby directories to the end
p $:
$:.replace($:.partition {|path| /site_ruby/ !~ path}.flatten)
p $:
end

$:.each do |path|
if /site_ruby/ =~ path
rdoc_path = File.join(path, 'rdoc', 'rdoc.rb')
if File.exists?(rdoc_path)
adjust_for_existing_rdoc(path)
break
end
end
if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
version = $1
ARGV.shift
end

## End of Transitional Hack ##


require 'rdoc/rdoc'

begin
r = RDoc::RDoc.new
r.document(ARGV)
rescue RDoc::RDocError => e
$stderr.puts e.message
exit(1)
end
gem 'rdoc', version
load Gem.bin_path('rdoc', 'rdoc', version)
53 changes: 11 additions & 42 deletions bin/ri
Original file line number Diff line number Diff line change
@@ -1,50 +1,19 @@
#!/usr/bin/env maglev-ruby
# -*- ruby -*-
# usage:
#
# ri name...
# This file was generated by RubyGems.
#
# where name can be
# The application 'rdoc' is installed as part of a gem, and
# this file is here to facilitate running it.
#
# Class | Class::method | Class#method | Class.method | method
#
# All names may be abbreviated to their minimum unbiguous form. If a name
# _is_ ambiguous, all valid options will be listed.
#
# The form '.' method matches either class or instance methods, while
# #method matches only instance and ::method matches only class methods.
#
#
# == Installing Documentation
#
# 'ri' uses a database of documentation built by the RDoc utility.
#
# So, how do you install this documentation on your system?
# It depends on how you installed Ruby.
#
# <em>If you installed Ruby from source files</em> (that is, if it some point
# you typed 'make' during the process :), you can install the RDoc
# documentation yourself. Just go back to the place where you have
# your Ruby source and type
#
# make install-doc
#
# You'll probably need to do this as a superuser, as the documentation
# is installed in the Ruby target tree (normally somewhere under
# <tt>/usr/local</tt>.
#
# <em>If you installed Ruby from a binary distribution</em> (perhaps
# using a one-click installer, or using some other packaging system),
# then the team that produced the package probably forgot to package
# the documentation as well. Contact them, and see if they can add
# it to the next release.
#


require 'rdoc/ri/ri_driver'
require 'rubygems'

######################################################################
version = ">= 0"

ri = RiDriver.new
ri.process_args
if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
version = $1
ARGV.shift
end

gem 'rdoc', version
load Gem.bin_path('rdoc', 'ri', version)
101 changes: 69 additions & 32 deletions default.mspec
Original file line number Diff line number Diff line change
Expand Up @@ -8,57 +8,94 @@ class MSpecScript
set :target, File.dirname(__FILE__) + '/bin/maglev-ruby'

lang_files = ['spec/rubyspec/language',
"^spec/rubyspec/language/array_spec.rb",
"^spec/rubyspec/language/case_spec.rb",
"^spec/rubyspec/language/literal_lambda_spec.rb",
"^spec/rubyspec/language/for_spec.rb",
"^spec/rubyspec/language/block_spec.rb",
"^spec/rubyspec/language/match_spec.rb",
"^spec/rubyspec/language/send_spec.rb",
"^spec/rubyspec/language/super_spec.rb",
"^spec/rubyspec/language/symbol_spec.rb",
"^spec/rubyspec/language/predefined_spec.rb",
"^spec/rubyspec/language/break_spec.rb",
"^spec/rubyspec/language/predefined/data_spec.rb"]
"^spec/rubyspec/language/predefined/data_spec.rb",
"^spec/rubyspec/language/variables_spec.rb"]

core_files = ['spec/rubyspec/core',
"^spec/rubyspec/core/argf/gets_spec.rb",
"^spec/rubyspec/core/argf/readline_spec.rb",
"^spec/rubyspec/core/argf/seek_spec.rb",
"^spec/rubyspec/core/basicobject/basicobject_spec.rb",
"^spec/rubyspec/core/basicobject/not_equal_spec.rb",
"^spec/rubyspec/core/basicobject/not_spec.rb",
"^spec/rubyspec/core/basicobject/",
"^spec/rubyspec/core/encoding/converter/",
"^spec/rubyspec/core/fixnum/right_shift_spec.rb",
"^spec/rubyspec/core/kernel/eval_spec.rb", # 2011-12-01
"^spec/rubyspec/core/kernel/exec_spec.rb",
"^spec/rubyspec/core/kernel/system_spec.rb",
"^spec/rubyspec/core/marshal/dump_spec.rb", # OpenSSL::X509::Name
"^spec/rubyspec/core/marshal/load_spec.rb", # OpenSSL::X509::Name
"^spec/rubyspec/core/kernel/define_singleton_method_spec.rb",
"^spec/rubyspec/core/method/parameters_spec.rb",
"^spec/rubyspec/core/module/define_method_spec.rb",
"^spec/rubyspec/core/numeric/to_c_spec.rb",
"^spec/rubyspec/core/proc/arity_spec.rb",
"^spec/rubyspec/core/proc/parameters_spec.rb",
"^spec/rubyspec/core/process/wait2_spec.rb",
"^spec/rubyspec/core/process/wait_spec.rb",
"^spec/rubyspec/core/process/waitall_spec.rb",
"^spec/rubyspec/core/string/modulo_spec.rb",
"^spec/rubyspec/core/string/unpack/a_spec.rb",
"^spec/rubyspec/core/thread/alive_spec.rb",
"^spec/rubyspec/core/thread/exit_spec.rb",
"^spec/rubyspec/core/thread/inspect_spec.rb",
"^spec/rubyspec/core/thread/kill_spec.rb",
"^spec/rubyspec/core/thread/raise_spec.rb",
"^spec/rubyspec/core/thread/run_spec.rb",
"^spec/rubyspec/core/thread/status_spec.rb",
"^spec/rubyspec/core/thread/stop_spec.rb",
"^spec/rubyspec/core/thread/terminate_spec.rb",
"^spec/rubyspec/core/symbol/encoding_spec.rb",
"^spec/rubyspec/core/symbol/length_spec.rb",
"^spec/rubyspec/core/symbol/size_spec.rb",
"^spec/rubyspec/core/thread/wakeup_spec.rb"]

lib_files = ['spec/rubyspec/library',
"^spec/rubyspec/library/complex/divide_spec.rb",
"^spec/rubyspec/library/complex/exponent_spec.rb",
"^spec/rubyspec/library/complex/minus_spec.rb",
"^spec/rubyspec/library/complex/modulo_spec.rb",
"^spec/rubyspec/library/complex/multiply_spec.rb",
"^spec/rubyspec/library/complex/plus_spec.rb",
"^spec/rubyspec/library/prime",
"^spec/rubyspec/library/scanf",
"^spec/rubyspec/library/socket", # Orpheus, Grace
"^spec/rubyspec/library/syslog",
"^spec/rubyspec/library/erb/new_spec.rb",
"^spec/rubyspec/library/syslog/mask_spec.rb",
"^spec/rubyspec/library/zlib/inflate/append_spec.rb",
"^spec/rubyspec/library/zlib/inflate/inflate_spec.rb"]

set :files, lang_files + core_files + lib_files
cmdline_files = ['spec/rubyspec/command_line',
'^spec/rubyspec/dash_a_spec.rb']

ffi_files = ["spec/rubyspec/optional/ffi",
"^spec/rubyspec/optional/ffi/async_callback_spec.rb",
"^spec/rubyspec/optional/ffi/bool_spec.rb",
"^spec/rubyspec/optional/ffi/callback_spec.rb",
"^spec/rubyspec/optional/ffi/custom_type_spec.rb",
"^spec/rubyspec/optional/ffi/enum_spec.rb",
"^spec/rubyspec/optional/ffi/errno_spec.rb",
"^spec/rubyspec/optional/ffi/ffi_spec.rb",
"^spec/rubyspec/optional/ffi/function_spec.rb",
"^spec/rubyspec/optional/ffi/managed_struct_spec.rb",
"^spec/rubyspec/optional/ffi/number_spec.rb",
"^spec/rubyspec/optional/ffi/pointer_spec.rb",
"^spec/rubyspec/optional/ffi/rbx/",
"^spec/rubyspec/optional/ffi/string_spec.rb",
"^spec/rubyspec/optional/ffi/strptr_spec.rb",
"^spec/rubyspec/optional/ffi/struct_initialize_spec.rb",
"^spec/rubyspec/optional/ffi/struct_spec.rb",
"^spec/rubyspec/optional/ffi/union_spec.rb",
"^spec/rubyspec/optional/ffi/variadic_spec.rb"]

capi_files = ["spec/rubyspec/optional/capi",
"^spec/rubyspec/optional/capi/class_spec.rb",
"^spec/rubyspec/optional/capi/data_spec.rb",
"^spec/rubyspec/optional/capi/encoding_spec.rb",
"^spec/rubyspec/optional/capi/io_spec.rb",
"^spec/rubyspec/optional/capi/regexp_spec.rb",
"^spec/rubyspec/optional/capi/struct_spec.rb",
"^spec/rubyspec/optional/capi/thread_spec.rb"]

# On Orpheus and Grace, these used to fail. Possible add them
# conditionally based on ENV var
#
# "^spec/rubyspec/library/socket"

if ENV["CAPI_SPECS"] == "1"
set :files, capi_files
elsif ENV["FFI_SPECS"] == "1"
set :files, ffi_files
else
set :files, lang_files + core_files + lib_files + cmdline_files + ffi_files
end

MSpec.enable_feature :fiber_library
MSpec.enable_feature :continuation_library
MSpec.enable_feature :encoding

# The set of substitutions to transform a spec filename into a tag
# filename. The transformations are applied, in the given sequence, to a
Expand Down
1 change: 1 addition & 0 deletions examples/sinatra/Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ end

desc 'Run the test for sinatra_app.rb.'
task :test do
sh 'maglev-gem install sinatra minitest rack-test'
sh 'maglev-ruby -rubygems sinatra_app_test.rb'
end

2 changes: 1 addition & 1 deletion install.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#! /bin/bash
#! /usr/bin/env bash

#=========================================================================
# Copyright (C) GemStone Systems, Inc. 2010.
Expand Down
Loading

0 comments on commit 1cb63e8

Please sign in to comment.