1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/wince
nobu e34b2a73e6 * ruby.h, lib/mkmf.rb (create_header): clear command line options for
macros moved to extconf.h.

* ext/extmk.rb (extract_makefile, extmk): made RUBY_EXTCONF_H and
  EXTSTATIC permanent.

* ext/{dbm,digest/*,socket,zlib}/extconf.rb: used $defs and $INCFLAGS.

* {bcc32,win32,wince}/Makefile.sub (COMPILE_C, COMPILE_CXX): added
  $(INCFLAGS).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-25 23:44:08 +00:00
..
sys * configure.in: Check for the availability of pid_t, gid_t and uid_t and 2005-05-14 14:57:53 +00:00
assert.c
assert.h
configure.bat
direct.c
direct.h
errno.c
errno.h
fcntl.h
io.h
io_wce.c
Makefile.sub * ruby.h, lib/mkmf.rb (create_header): clear command line options for 2006-05-25 23:44:08 +00:00
process.h
process_wce.c
README.wince
setup.mak * common.mk, Makefile.in, {bcc32,win32,wince}/Makefile.sub: integrated 2005-08-03 15:27:13 +00:00
signal.h
signal_wce.c
stddef.h
stdio.c
stdlib.c
string_wce.c
time.h
time_wce.c
varargs.h
wince.c
wince.h
wincemain.c
wincon.h
winsock2.c

=begin

= How to build ruby using eMbedded Visual C++

== Requirement

(1) eMbedded Visual C++ 3.0 or later.

(2) ruby executable on the compiling host environment.

(3) Please set environment variable (({INCLUDE})), (({LIB})), (({PATH})),
    (({CE_TOOLS_DIR})), (({EMBEDDED_TOOLS_DIR})) to run required commands
    properly from the command line.

    Note: building ruby requires following commands.
     * nmake
     * clarm or clmips or shcl
     * lib
     * dumpbin

== How to compile and install

(1) Execute wince\configure.bat on your build directory.
    You can specify the target platform as an argument.
    For example, run `((%configure arm-hpc2k-wince%))'
    You can also specify the install directory.
    For example, run `((%configure --prefix=<install_directory>%))'
    Default of the install directory is /usr .

(2) Change ((|RUBY_INSTALL_NAME|)) and ((|RUBY_SO_NAME|)) in (({Makefile}))
    if you want to change the name of the executable files. 

(3) Run `((%nmake%))'

(4) Run `((%nmake DESTDIR=<install_directory> install%))'

    This command will create following directories and copy (not install :-P)
    files onto them.
      * <install_directory>\bin
      * <install_directory>\lib
      * <install_directory>\lib\ruby
      * <install_directory>\lib\ruby\<MAJOR>.<MINOR>
      * <install_directory>\lib\ruby\<MAJOR>.<MINOR>\<PLATFORM>
      * <install_directory>\lib\ruby\site_ruby
      * <install_directory>\lib\ruby\site_ruby\<MAJOR>.<MINOR>
      * <install_directory>\lib\ruby\site_ruby\<MAJOR>.<MINOR>\<PLATFORM>
      * <install_directory>\man\man1
    If Ruby's version is `x.y.z', the ((|<MAJOR>|)) is `x' and the ((|<MINOR>|)) is `y'.
    In case of `mips-hpc2k-wince', The ((|<PLATFORM>|)) is `(({mips-mswince}))'.

(5) Copy <install_directory> to your WindowsCE machine.

== Icons

Any icon files(*.ico) in the build directory, directories specified with
((|icondirs|)) make variable and (({win32})) directory under the ruby
source directory will be included in DLL or executable files, according
to their base names.
    $(RUBY_INSTALL_NAME).ico or ruby.ico   --> $(RUBY_INSTALL_NAME).exe
    $(RUBYW_INSTALL_NAME).ico or rubyw.ico --> $(RUBYW_INSTALL_NAME).exe
    the others                             --> $(RUBY_SO_NAME).dll

Although no icons are distributed with the ruby source or in the official 
site, you can use anything you like. For example, followings are written 
in Japanese, but you can download at least.

* ((<URL:http://member.nifty.ne.jp/ueivu/rubyico.html>)) or
  ((<zipped icons|URL:http://member.nifty.ne.jp/ueivu/Ruby_ico.zip>))
* ((<URL:http://homepage1.nifty.com/a_nakata/ruby/>)) or
  ((<icon itself|URL:http://homepage1.nifty.com/a_nakata/ruby/RubyIcon.ico>))

== Build examples

* Build on the ruby source directory.

  ex.)
    ruby source directory:  C:\ruby
    build directory:        C:\ruby
    install directory:      C:\usr\local

    C:
    cd \ruby
    win32\configure --prefix=/usr/local
    nmake
    nmake install

* Build on the relative directory from the ruby source directory.

  ex.)
    ruby source directory:  C:\ruby
    build directory:        C:\ruby\mswin32
    install directory:      C:\usr\local

    C:
    cd \ruby
    mkdir mswin32
    cd mswin32
    ..\win32\configure --prefix=/usr/local
    nmake
    nmake install

* Build on the different drive.

  ex.)
    ruby source directory:  C:\src\ruby
    build directory:        D:\build\ruby
    install directory:      C:\usr\local

    D:
    cd D:\build\ruby
    C:\src\ruby\win32\configure --prefix=C:/usr/local
    nmake
    nmake install

== Bugs

You can ((*NOT*)) use a path name contains any white space characters as
the ruby source directory, this restriction comes from the behavior of
(({!INCLUDE})) directives of (({NMAKE})).
((- you may call it a bug. -))

=end