Every repository with this icon (
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.cvsignore | Mon Feb 25 22:40:53 -0800 2008 | |
| |
.document | Mon Feb 25 22:40:53 -0800 2008 | |
| |
.gitignore | Tue Sep 29 21:07:28 -0700 2009 | |
| |
COPYING | Wed Mar 11 14:14:13 -0700 2009 | |
| |
GPL | Mon Feb 25 12:18:21 -0800 2008 | |
| |
HACKING.rdoc | Mon Sep 21 22:14:51 -0700 2009 | |
| |
LEGAL | Mon Apr 13 13:25:07 -0700 2009 | |
| |
LGPL | Mon Feb 25 12:18:21 -0800 2008 | |
| |
MacRuby.m | Sun Jul 26 22:48:12 -0700 2009 | |
| |
README.rdoc | Mon Nov 02 21:20:38 -0800 2009 | |
| |
Rakefile | Fri Oct 23 17:49:22 -0700 2009 | |
| |
TODO | Sat Nov 21 09:33:49 -0800 2009 | |
| |
array.c | Thu Oct 29 23:50:54 -0700 2009 | |
| |
b.rb | Wed Mar 11 14:14:13 -0700 2009 | |
| |
bench.rb | Tue Apr 07 18:24:23 -0700 2009 | |
| |
benchmark/ | Wed Mar 11 14:14:13 -0700 2009 | |
| |
bignum.c | Thu Oct 15 18:37:01 -0700 2009 | |
| |
bin/ | Sat Nov 21 09:36:03 -0800 2009 | |
| |
bridgesupport.cpp | Wed Oct 28 21:02:33 -0700 2009 | |
| |
bridgesupport.h | Fri Jun 19 17:57:44 -0700 2009 | |
| |
bs.c | Wed Sep 30 16:43:09 -0700 2009 | |
| |
bs.h | Sat Sep 19 00:37:35 -0700 2009 | |
| |
bs_lex.h | Tue Aug 11 04:40:10 -0700 2009 | |
| |
bs_struct_readers.c | Wed Apr 22 17:55:53 -0700 2009 | |
| |
class.c | Fri Nov 13 17:42:22 -0800 2009 | |
| |
compar.c | Tue Jul 07 19:52:12 -0700 2009 | |
| |
compiler.cpp | Fri Nov 13 22:19:30 -0800 2009 | |
| |
compiler.h | Fri Nov 13 21:19:43 -0800 2009 | |
| |
complex.c | Thu Aug 27 22:11:13 -0700 2009 | |
| |
cont.c | Wed Mar 11 14:14:13 -0700 2009 | |
| |
data/ | Wed Mar 11 14:14:13 -0700 2009 | |
| |
dir.c | Tue Oct 27 19:24:31 -0700 2009 | |
| |
dispatcher.cpp | Tue Nov 10 21:48:02 -0800 2009 | |
| |
distruby.rb | Mon Feb 25 12:18:21 -0800 2008 | |
| |
dln.c | Fri Sep 25 17:14:56 -0700 2009 | |
| |
dln.h | Fri Sep 25 17:14:56 -0700 2009 | |
| |
dmydln.c | Mon Feb 25 12:18:21 -0800 2008 | |
| |
dmyencoding.c | Sun May 18 01:10:19 -0700 2008 | |
| |
dmyext.c | Mon Feb 25 12:18:21 -0800 2008 | |
| |
dmytranscode.c | Sun May 18 01:10:19 -0700 2008 | |
| |
dtrace.d | Thu Oct 08 18:56:53 -0700 2009 | |
| |
encoding.c | Mon Nov 09 22:49:11 -0800 2009 | |
| |
enum.c | Fri Sep 04 21:49:21 -0700 2009 | |
| |
enumerator.c | Thu Sep 17 16:47:17 -0700 2009 | |
| |
error.c | Tue Oct 27 19:24:31 -0700 2009 | |
| |
eval.c | Fri Nov 13 17:42:22 -0800 2009 | |
| |
eval_error.c | Wed Mar 11 14:14:13 -0700 2009 | |
| |
eval_jump.c | Tue Oct 06 17:27:35 -0700 2009 | |
| |
eval_safe.c | Wed Mar 11 14:14:13 -0700 2009 | |
| |
ext/ | Mon Nov 16 15:15:04 -0800 2009 | |
| |
file.c | Fri Oct 16 14:36:17 -0700 2009 | |
| |
framework/ | Wed Jun 11 20:04:36 -0700 2008 | |
| |
gc-stub.m | Sat Sep 19 00:37:35 -0700 2009 | |
| |
gc.c | Thu Oct 29 16:36:01 -0700 2009 | |
| |
gcd.c | Thu Oct 29 23:34:13 -0700 2009 | |
| |
gem_prelude.rb | Wed Mar 11 14:14:13 -0700 2009 | |
| |
gen_bs_struct_readers.rb | Wed Apr 22 17:55:53 -0700 2009 | |
| |
golf_prelude.rb | Sun May 18 01:10:19 -0700 2008 | |
| |
hash.c | Thu Nov 05 18:12:48 -0800 2009 | |
| |
id.c | Mon Nov 09 12:10:37 -0800 2009 | |
| |
id.h | Mon Nov 09 12:10:37 -0800 2009 | |
| |
include/ | Fri Nov 13 17:42:22 -0800 2009 | |
| |
inits.c | Fri Oct 23 18:53:14 -0700 2009 | |
| |
instruby.rb | Fri Oct 23 17:49:22 -0700 2009 | |
| |
io.c | Thu Nov 05 23:02:15 -0800 2009 | |
| |
keywords | Thu Jun 05 01:11:58 -0700 2008 | |
| |
lex.c.blt | Thu Jun 05 01:11:58 -0700 2008 | |
| |
lex.c.src | Thu Jun 05 01:11:58 -0700 2008 | |
| |
lgamma_r.c | Wed Mar 11 14:14:13 -0700 2009 | |
| |
lib/ | Tue Nov 17 00:43:11 -0800 2009 | |
| |
llvm.h | Mon Aug 10 23:19:45 -0700 2009 | |
| |
load.c | Tue Oct 13 22:12:15 -0700 2009 | |
| |
main.cpp | Sat Sep 19 00:37:35 -0700 2009 | |
| |
markgc.c | Sat Sep 19 00:37:35 -0700 2009 | |
| |
marshal.c | Mon Nov 09 18:30:31 -0800 2009 | |
| |
math.c | Tue Aug 25 18:35:19 -0700 2009 | |
| |
misc/ | Fri Nov 06 17:08:32 -0800 2009 | |
| |
mspec/ | Mon Nov 16 15:45:16 -0800 2009 | |
| |
numeric.c | Thu Oct 15 18:37:01 -0700 2009 | |
| |
objc.h | Sun Oct 18 20:28:40 -0700 2009 | |
| |
objc.m | Fri Nov 06 18:40:26 -0800 2009 | |
| |
object.c | Fri Nov 13 17:42:22 -0800 2009 | |
| |
onig/ | Tue Oct 20 17:17:32 -0700 2009 | |
| |
pack.c | Thu Oct 01 00:35:10 -0700 2009 | |
| |
parse.y | Wed Nov 11 03:16:12 -0800 2009 | |
| |
prec.c | Wed Mar 11 14:14:13 -0700 2009 | |
| |
prelude.rb | Sun May 18 01:10:19 -0700 2008 | |
| |
proc.c | Mon Nov 09 18:30:31 -0800 2009 | |
| |
process.c | Tue Aug 25 18:35:19 -0700 2009 | |
| |
rakelib/ | Sat Nov 21 09:36:03 -0800 2009 | |
| |
random.c | Mon Nov 16 11:02:11 -0800 2009 | |
| |
range.c | Thu Sep 24 23:31:03 -0700 2009 | |
| |
rational.c | Sat Aug 01 19:00:15 -0700 2009 | |
| |
re.c | Fri Nov 13 00:01:36 -0800 2009 | |
| |
ruby.1 | Sun May 18 01:10:19 -0700 2008 | |
| |
ruby.c | Fri Sep 25 18:59:38 -0700 2009 | |
| |
rubytest.rb | Mon Feb 25 12:18:21 -0800 2008 | |
| |
runruby.rb | Mon Feb 25 12:18:21 -0800 2008 | |
| |
sample-macruby/ | Sun Nov 08 23:32:30 -0800 2009 | |
| |
sample/ | Wed Mar 11 14:14:13 -0700 2009 | |
| |
signal.c | Tue Sep 29 14:12:11 -0700 2009 | |
| |
spec/ | Mon Nov 16 16:58:44 -0800 2009 | |
| |
sprintf.cpp | Mon Oct 26 14:01:08 -0700 2009 | |
| |
st.c | Wed Sep 09 18:10:17 -0700 2009 | |
| |
string.c | Wed Nov 11 15:41:01 -0800 2009 | |
| |
struct.c | Tue Oct 20 17:18:15 -0700 2009 | |
| |
test-macruby/ | Mon Mar 16 14:30:13 -0700 2009 | |
| |
test/ | Mon Sep 14 10:15:13 -0700 2009 | |
| |
test_vm.rb | Thu Jun 25 11:09:46 -0700 2009 | |
| |
test_vm/ | Wed Nov 18 23:36:31 -0800 2009 | |
| |
thread.c | Fri Oct 30 19:34:41 -0700 2009 | |
| |
thread_pthread.h | Mon Feb 25 12:18:21 -0800 2008 | |
| |
time.c | Tue Sep 08 19:25:45 -0700 2009 | |
| |
tool/ | Fri May 22 17:38:22 -0700 2009 | |
| |
transcode.c | Mon Mar 30 16:42:49 -0700 2009 | |
| |
transcode_data.h | Mon Feb 25 12:18:21 -0800 2008 | |
| |
util.c | Thu Jul 30 23:46:57 -0700 2009 | |
| |
variable.c | Fri Nov 13 00:08:20 -0800 2009 | |
| |
version.c | Mon Oct 19 16:38:40 -0700 2009 | |
| |
version.h | Mon Oct 19 16:44:00 -0700 2009 | |
| |
vm.cpp | Fri Nov 20 00:58:22 -0800 2009 | |
| |
vm.h | Fri Nov 20 00:58:22 -0800 2009 | |
| |
vm_eval.c | Wed Nov 04 11:58:58 -0800 2009 | |
| |
vm_method.c | Wed Nov 04 19:45:33 -0800 2009 |
MacRuby
MacRuby is a Ruby implementation based on Mac OS X technologies, such as the Objective-C runtime and garbage collector, the CoreFoundation framework and the LLVM compiler infrastructure.
It is the goal of MacRuby to enable the creation of full-fledged Mac OS X applications which do not sacrifice performance in order to enjoy the benefits of using Ruby.
MacRuby is copyrighted free software by Apple Inc and covered by the terms of the Ruby license. Please refer to the COPYING file for more information.
The project website contains more documentation, such as tutorials and guides: macruby.org
Requirements
- An Intel machine. PowerPC machines are not supported anymore, but may still work. An Intel 64-bit machine (Intel Core Duo 2) is recommended.
- Mac OS X 10.5.6 or later.
- LLVM ToT, compiled for both i386 and x86_64.
LLVM is a moving target and breaks periodically. We recommend to install revision 82747.
$ svn co -r 82747 https://llvm.org/svn/llvm-project/llvm/trunk llvm-trunk $ cd llvm-trunk $ ./configure --enable-bindings=none $ UNIVERSAL=1 UNIVERSAL_ARCH="i386 x86_64" ENABLE_OPTIMIZED=1 make $ sudo env UNIVERSAL=1 UNIVERSAL_ARCH="i386 x86_64" ENABLE_OPTIMIZED=1 make install
Note that compiling LLVM can take quite a while. If you have a machine with multiple cores, which is quite likely, you might want to speed up the process by using all/more cores. However, doing this can make your machine unresponsive during compilation. To use multiple cores pass the `-j N’ option, where `N’ stands for the number of cores you’d like to use. So for a Core Duo the command would look like:
$ UNIVERSAL=1 UNIVERSAL_ARCH="i386 x86_64" ENABLE_OPTIMIZED=1 make -j2
Build Instructions
You can build MacRuby by doing the following command:
$ rake
Once done, you can run the RubySpec-based regression tests as well as the performance suite:
$ rake spec:ci $ rake bench:ci
To install MacRuby on your machine:
$ sudo rake install
Then you should be all set! Please report us any problem you will find (the macruby.org website has pointers). Thanks!







