mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
69ac654c90
* configure.in (RUBY_NACL and others): Supports PNaCl.
* dln.c: replace the old hacky dynamic loading over HTTP with nacl_io.
* file.c: tenatively use access(2) instead of eaccess.
(rb_file_load_ok): weaken with attribute but not by postprocess.
* io.c (socket.h): now NaCl has socket.h
(flock): disable here instead of nacl/ioctl.h
* nacl/GNUmakefile.in (CC, LD, NM, AR, AS, RANLIB, OBJDUMP, OBJCOPY):
respect path to them if they are absolute.
This helps naclports to build ruby in their source tree.
(PROGRAM_NMF, .SUFFIXES): support .pnexe for PNaCl.
(ruby.o, file.o): move the hack to attributes in ruby.c and file.c
* nacl/ioctl.h: removed. move the hack to io.c.
* nacl/nacl-config.rb: support arm, pnacl and others.
* nacl/pepper_main.c: support build in a naclports tree.
* ruby.c (rb_load_file): weaken with attribute but not by postprocess.
The patch is by sbc@google.com and the Native Client Authors.
It is available at:
*
|
||
---|---|---|
.. | ||
create_nmf.rb | ||
dirent.h | ||
example.html | ||
GNUmakefile.in | ||
nacl-config.rb | ||
package.rb | ||
pepper_main.c | ||
README.nacl | ||
resource.h | ||
select.h | ||
signal.h | ||
stat.h | ||
unistd.h | ||
utime.h |
=begin = Native Client port of Ruby = How to build == Prerequisites You need to install the following things before building NaCl port of Ruby. * Ruby 1.9.3 or later * Python 2.6 or later * NativeClient SDK pepper 37 or later * GNU make == Steps (1) Extract all files from the tarball: $ tar xzf ruby-X.Y.Z.tar.gz (2) Set NACL_SDK_ROOT environment variable to the path to the Native Client SDK you installed: $ export NACL_SDK_ROOT=/home/yugui/src/nacl_sdk/pepper_37 (3) Configure $ ./configure --prefix=/tmp/nacl-ruby --host=x86_64-nacl --with-baseruby=/path/to/ruby-1.9.3 (4) Make $ make $ make package Now you have ruby.nexe. You can run it by sel_ldr in NaCl SDK. "make package" installs "pepper-ruby.nexe", an example Pepper application that embeds Ruby", and libraries to $prefix. You can run it by the following steps: (5) Publish the $prefix directory on a web server (6) Visit the example.html on the web server by a browser that implements Pepper 18 or later. -- e.g., Chrome 18 implements Pepper 18, Chrome 19 implements Pepper 19, ... = Copyright * Copyright 2012 Google Inc. All Rights Reserved. * Author: yugui@google.com (Yugui Sonoda) =end