Re: [MacRuby-devel] LLVM installer package

2009-06-07 Thread Markus Prinz


On 06.06.2009, at 21:30, Markus Prinz wrote:
As the filename indicates, this is only for i386 and x86_64. A  
version with support for ppc and pcc64 is compiling right now.


It's done, and available under http://nuclearsquid.com/files/LLVM.pkg  
(~140mb). It supports i386, x86_64, ppc and ppc64.


MD5: http://nuclearsquid.com/files/LLVM.pkg.md5
334cdb80be27e7209ce1334abc96454e  LLVM.pkg

SHA1(LLVM.pkg)= ca9bcc16f5b302a668379b6b437260a4b3010049

This time I've included the HTML docs, since they only weigh in at 3mb  
anyway.


This package also doesn't assume you have a MacPorts Perl installed,  
and uses /usr/bin/perl instead.


g, Markus
___
MacRuby-devel mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


Re: [MacRuby-devel] LLVM installer package

2009-06-07 Thread Markus Prinz


On 07.06.2009, at 12:48, Markus Prinz wrote:



On 06.06.2009, at 21:30, Markus Prinz wrote:
As the filename indicates, this is only for i386 and x86_64. A  
version with support for ppc and pcc64 is compiling right now.


It's done, and available under http://nuclearsquid.com/files/ 
LLVM.pkg (~140mb). It supports i386, x86_64, ppc and ppc64.


I have also rebuilt the Intel-only package to remove the MacPorts  
dependency:


http://nuclearsquid.com/files/LLVM-i386.pkg (~71mb)

MD5: http://nuclearsquid.com/files/LLVM-i386.pkg.md5
ea31d35ef11156d71338de05f329aff4  LLVM-i386.pkg

SHA1(LLVM-i386.pkg)= affbbeca7b4bf6b30be241ca5b5df8430de5f324

g, Markus
___
MacRuby-devel mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


[MacRuby-devel] [MacRuby] #280: NSNumber#decimalValue cant convert to ruby object

2009-06-07 Thread MacRuby
#280: NSNumber#decimalValue cant convert to ruby object
--+-
 Reporter:  matt.whites...@…  |   Owner:  lsansone...@…
 Type:  defect|  Status:  new  
 Priority:  blocker   |   Milestone:   
Component:  MacRuby   |Keywords:   
--+-
 macirb
 >> framework 'foundation'
 => true
 >> NSNumber.numberWithFloat(1.2)
 => #
 >> NSNumber.numberWithFloat(1.2).decimalValue
 ArgumentError: can't convert C/Objective-C value `0x7fff5fbf94a0' of type
 `b8' to Ruby object
 from (irb):3:in `decimalValue'

-- 
Ticket URL: 
MacRuby 

___
MacRuby-devel mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


[MacRuby-devel] [MacRuby] #281: Bundles pointing to local MacRuby installation instead of embedded

2009-06-07 Thread MacRuby
#281: Bundles pointing to local MacRuby installation instead of embedded
---+
 Reporter:  reb...@…   |   Owner:  lsansone...@…

 Type:  defect |  Status:  new  

 Priority:  major  |   Milestone:   

Component:  MacRuby|Keywords:  
embedded,deploy,installation,distribution
---+
 After embedding the MacRuby framework with 'macrake deploy' is not
 possible to distribute the application to computers without MacRuby
 installed if the application uses native bundles.

 Try this:
 - hotcocoa test; cd test
 - macrake deploy
 - otool -L
 Test.app/Contents/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1
 /universal-darwin9.5/stringio.bundle

 The last command gives an absolute reference to libmacruby.dylib:
 Test.app/Contents/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1
 /universal-darwin9.5/stringio.bundle:
 /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/libmacruby.dylib
 (compatibility version 0.4.0, current version 0.4.0)
 /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current
 version 1.0.0)
 /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
 version 111.1.3)

 Another test:
 - open lib/application.rb and require 'stringio' at the top
 - save and close, macrake clean; macrake deploy
 - move the MacRuby installation dir in /Library/Frameworks to another name
 - run the app

 This is the output from the console:

 6/7/09 5:08:47 PM [0x0-0xdb8db8].com.yourcompany.Test[54737]
 /Users/reborg/tmp/test/Test.app/Contents/Resources/lib/application.rb:1:in
 `require':
 
dlopen(/Users/reborg/tmp/test/Test.app/Contents/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1
 /universal-darwin9.5/stringio.bundle, 9): Library not loaded:
 /Library/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/libmacruby.dylib
 (LoadError)
 6/7/09 5:08:47 PM [0x0-0xdb8db8].com.yourcompany.Test[54737]   Referenced
 from:
 
/Users/reborg/tmp/test/Test.app/Contents/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1
 /universal-darwin9.5/stringio.bundle
 6/7/09 5:08:47 PM [0x0-0xdb8db8].com.yourcompany.Test[54737]   Reason:
 image not found -
 
/Users/reborg/tmp/test/Test.app/Contents/Frameworks/MacRuby.framework/Versions/0.4/usr/lib/ruby/1.9.1
 /universal-darwin9.5/stringio.bundle
 6/7/09 5:08:47 PM [0x0-0xdb8db8].com.yourcompany.Test[54737]  from
 /Users/reborg/tmp/test/Test.app/Contents/Resources/lib/application.rb:1:in
 `'
 6/7/09 5:08:47 PM [0x0-0xdb8db8].com.yourcompany.Test[54737]  from
 /Users/reborg/tmp/test/Test.app/Contents/Resources/rb_main.rb:3:in `load'

-- 
Ticket URL: 
MacRuby 

___
MacRuby-devel mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


[MacRuby-devel] experimental branch: status update

2009-06-07 Thread Laurent Sansonetti

Another week, another status update on the experimental branch!

Highlights are:

- A much better Cocoa support. We are almost as stable as trunk, I  
think. I was able to run a significant internal MacRuby application  
with the experimental branch.


- The project is now able to be installed and used on Mac OS 10.6. It  
should theoretically work with the latest seeded build, using the same  
building instructions as mentioned in README.rdoc, and pass our spec  
suite. Please contact me offline if you have any problem or question,  
since 10.6 cannot be discussed here.


- Lots of RubySpec-related work. We enabled most of the "core" specs  
and the spec:ci rake task is now running about 15,000 expectations (vs  
2,000 before). Several bugs discovered by these RubySpec were fixed,  
but surprisingly we didn't have so much failing specs. Huge kudos to  
Eloy!


- Patrick started working on optimizing floating point arithmetic (in  
a branch, called fp-optimized-experimental). The idea is to make Float  
objects immediate so that we don't have to allocate memory in order to  
do float arithmetic. The work is still under progress, it will be  
merged back to the experimental branch once it's done and stable.


Changes:

- Fixed a crash when trying to symbolicate a backtrace when the JIT  
compiler has not been initialized yet (command line argument parsing).


- Disable the recursive dispatch optimization in case there is an  
arity mismatch (optional arguments).


- Fixed a bug in the #send optimization compilation where the basic  
block created by the exception handler was not honored.


- Fixed a GC-related bug in File.readlink.

- Removed the builtin oniguruma copy which wasn't working great with  
our GC, because it was using GC memory and missing some write  
barriers, and added a snapshot of the latest one (5.9.1) which works  
using regular malloc memory.


- Fixed several bugs in the way we create CF IO streams and do error  
reporting.


- Fixed lots of 10.6-only bugs in the way we check for mutability on  
builtin types (string, array, hash, set).


- Fixed a critical bug in the code path that was used to verify if a  
given builtin type is tainted or not.


- We now require LLVM revision 72741. The MacRuby source code won't  
compile anymore with the previous revision because of an API change in  
LLVM. Markus Prinz graciously offered a binary installer for this very  
specific version of LLVM that you can use instead of compiling your  
own (read http://lists.macosforge.org/pipermail/macruby-devel/2009-June/001908.html 
 for more information).


- When subclassing a builtin type class, only insert the mutable  
primitives if the subclass is the mutable version of this builtin type.
- Don't forget to reload class constants every time a new framework is  
loaded.
- Fixed a bug when we weren't actually passing the method selector  
from the dispatcher to -2 arity methods defined in C.


- Added some preliminary support to call variadic C functions /  
Objective-C methods.


- Implemented implemented String#bytesize and String#each_byte.

- Fixed Bignum#+.

- ByteString objects can now be frozen/tainted.

- Define Encoding::ASCII_8BIT as a shortcut to US_ASCII (for now).

- Fixed ByteString#encoding to always return US_ASCII (for now).

- Implemented the undefinition of methods.

- Undefined Symbol#to_str.

- Fixed lex_io_gets_fast() to deal better with scripts containing non- 
ASCII characters. This allows us to parse and compile scripts  
containing non-ASCII characters.


- Fixed a bug in the file loader, when the given path is absolute and  
contains the file extension.


- Ported process.c to the new runtime API.

- Implemented File#chown.

- Before calling #method_missing, raise an ArgumentError in case we  
tried to call a method with an argument when there exists a method  
under the same Ruby name that accepts no argument.


- Made Eumerator a top-level class.

- Fixed lots of bugs in the Struct class, it's now usable again.

- Fixed bugs discovered by RubySpec in the following Array methods:  
#choice (deleted), #concat, #fill, #flatten, #initialize, #insert,  
#pack, #push, #sample (added), #sort, #unshift, #zip,


- Fixed bugs discovered by RubySpec in the following String methods:  
#capitalize, #center, #chomp, #delete, #downcase, #dump, #gsub,  
#ljust, #rjust, #squeeze, #sub, #swapcase, #tr_s, #tr, #upcase


- Enabled most of the RubySpec core specifications!

Laurent
___
MacRuby-devel mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel


[MacRuby-devel] [MacRuby] #282: cannot be included in Objective-C++ source files

2009-06-07 Thread MacRuby
#282:  cannot be included in Objective-C++ source files
---+
 Reporter:  ea...@…|   Owner:  lsansone...@…
 Type:  defect |  Status:  new  
 Priority:  minor  |   Milestone:   
Component:  MacRuby|Keywords:   
---+
 The definitions in ruby/ruby.h contain code that will not compile in an
 Objective-C++ source file.  In particular, RCLASS_VERSION, RCLASS_META and
 similar definitions like it use a (void *) pointer as the base for some
 pointer arithmetic. For example:

 #  define RCLASS_VERSION(m) (*(long *)((void *)m + (sizeof(void *) * 3)))

 The problem is the (void *) typecast before "m".  C++ does not allow
 pointer arithmetic based off of a (void *) pointer.

 I was able to work around this issue by hacking my local copy of the
 header to use an unsigned char * in the place of the void * value.  I'm
 not sure this is the right solution... but it appears that "m" should be
 typecast to some kind of "pointer to a byte".

-- 
Ticket URL: 
MacRuby 

___
MacRuby-devel mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel