Граф коммитов

170 Коммитов

Автор SHA1 Сообщение Дата
nobu 0e60b2c6a3 static-linked-ext: into libruby
* Makefile.in, common.mk (PROGRAM): no extension libraries.
* common.mk (build-ext): pass macros for libruby.so.
* ext/extmk.rb (command_output): link extension libraries and encoding
  libraries into libruby.so, not ruby executable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-19 02:37:21 +00:00
nobu 1a6b07d716 ext/extmk.rb: fold long macro
* ext/extmk.rb (command_output): fold long macro lines.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-19 02:36:25 +00:00
nobu c7c7dfd2fc ext/extmk.rb: link archives only
* ext/extmk.rb (extmake): link archives only, skip script only
  extension libraries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-18 08:41:02 +00:00
kosaki 899bf4981a * ext/extmk.rb: Show a message when extconf.rb raised an exception.
* ext/openssl/extconf.rb: Use exception raising instead of message
  and/or abort. We want to display error message to console _and_
  logging into mkmf.log.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-18 06:19:25 +00:00
nobu 291f3a10f2 * ext/extmk.rb (extmake): remove particular platform specific condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-18 04:50:09 +00:00
yugui 76bc2d1ed7 Imports Ruby's port to NativeClient (a.k.a NaCl).
Patch by Google Inc. [ruby-core:45073].

* configure.in (RUBY_NACL): New M4 func to configure variables for
  NaCl.
  (RUBY_NACL_CHECK_PEPPER_TYPES): New M4 func to check the old names
  of Pepper interface types.
  (BTESTRUBY): New variable to specify which ruby should be run on
  "make btest". NaCl can run the built binary by sel_ldr, but it need
  rbconfig.rb. So this variable is distinguished from $MINIRUBY.
  
* thread_pthread.c: Disabled some features on NaCl.

* io.c: ditto.

* process.c: ditto.

* signal.c: ditto.

* file.c: ditto.

* missing/flock.c: ditto.

* nacl/pepper_main.c: An example implementation of Pepper application
  that embeds Ruby.

* nacl/example.html: An example of web page that uses the Pepper
  application.

* nacl/nacl-config.rb: Detects variants of NaCl SDK.

* nacl/GNUmakefile.in: Makefile template for NaCl specific build
  process.

* nacl/package.rb: script for packaging a NaCl-Ruby embedding
  application. 

* nacl/reate_nmf.rb: Wrapper script of create_nmf.py

* dln.c (dln_load): Added a hack to call on NaCl.

* util.c (ruby_getcwd): Path to the current directort is not available
  on NaCl.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-17 02:48:59 +00:00
nobu 77c4a51cef fix static-linked-ext
* ext/extmk.rb: EXTLDFLAGS also needs to be passed.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35667 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-17 01:34:35 +00:00
usa 5950dd1967 * ext/extmk.rb (exts.mk): use double quotes instead of single quotes
for commandline because it's not recognized as quotes on Windows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-16 06:45:00 +00:00
yugui 3fa3f9abb9 Supports static linking of extensions and encodings again.
Fixes --with-static-linked-ext.

Patch by Google Inc. [ruby-core:45073].

* Makefile.in (ENCOBJS, EXTOBJS): New variables to specify static
  linked libraries. Also reintroduces extinit.o, introduces encinit.o
  introduces encinit.o

* common.mk: Builds static libraries rather than shared objects if
  specified.

* configure.in (LD): new substitution. 
  Avoids PIE if s

* enc/depend: Supports static linked libraries
  (libencs, libenc, libtrans): New target.

* enc/encinit.c.erb: new template to generate the initialization of
  statically linked encodings.

* enc/make_encmake.rb (--module): new flag to specify whether static
  or dynamic.

* transcode_data.h (TRANS_INIT): New macro to get rid of the name
  collision of encoding initializers and transcoder initializers.

* ext/extmk.rb: Fixes the behavior on $extstatic is true.

* lib/mkmf.rb (clean-static): new target to clean up static linked
  libraries.

* ruby.c (process_options): New initializes statically linked
  encodings here.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-16 05:39:06 +00:00
naruse 57657a0b9b suppress warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-25 07:08:47 +00:00
usa f6a2a43116 * ext/extmk.rb (extract_makefile): should sort after map, not before
it.  in this case there is no difference, but we should write better
  code.  this bad smell was caught by nagachika.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-08 14:28:28 +00:00
usa d9d841e353 * ext/extmk.rb (extract_makefile): need to sort the array of current
srcs before comparing to the sorted old srcs.
  fixed the problem that the configuring stage of exts were always
  run, introduced at r33801.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-08 13:34:33 +00:00
drbrain 8b7ecdc11e * lib/mkmf.rb: Use MakeMakefile's rm_f to avoid conflict with Rake or
FileUtils.
* test/ruby/test_module.rb:  Hide MakeMakefile's inclusion in Object


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-30 00:57:24 +00:00
naruse 302b6f6e02 Don't break tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-29 08:42:13 +00:00
drbrain 194882cc40 * lib/mkmf.rb: Wrap mkmf.rb in module MakeMakefile to clean up Object
documentation.  [Ruby 1.9 - Feature #5658]
* ext/extmk.rb:  Use MakeMakefile::CONFIG instead of Object::CONFIG
* test/mkmf/base.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-28 21:54:33 +00:00
nobu c2c6687ddb * ext/extmk.rb (extract_makefile, extmake): regenerate makefiels
if globbed source file list is changed.
* lib/mkmf.rb (create_makefile): store ORIG_SRCS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-20 14:22:44 +00:00
yugui 3b63aee193 * ext/extmk.rb (extmake): suppresses outputs from extconf.rb.
(extmake) warns a failure in extconf.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-03 14:44:59 +00:00
usa 0dcb387abe * ext/extmk.rb: set MFLAGS from MAKEFLAGS when using nmake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-28 02:08:18 +00:00
nobu d9e5dd3b0f * ext/extmk.rb: nmake substitutes all occurences in macro.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-08 15:45:33 +00:00
nobu c74a962aab * ext/extmk.rb: workaround for nmake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-08 15:15:55 +00:00
nobu acd036bcdc * common.mk (configure-ext, build-ext), ext/extmk.rb (extmake):
support paralell-make under ext.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-08 00:33:05 +00:00
nobu f8b2f4e05d * ext/extmk.rb: strip current directory prefix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-29 11:37:47 +00:00
naruse 1cdcd40ec8 * ext/extmk.rb: remove $makeflags.defined?, it should be $mflags.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-02 01:46:42 +00:00
naruse a04d93acc2 * ext/extmk.rb: define $makeflags.defined? like $mflags.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-02 01:03:55 +00:00
nobu 49959bfd62 * lib/mkmf.rb (create_makefile): make extension libraries messages
brief.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-17 10:13:25 +00:00
nobu e4e9758aa5 * ext/extmk.rb (extract_makefile): follow the change of
install-rb-default line format at r28850, which causes second
  run to create dummy makefiles.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 08:18:42 +00:00
naruse b5dc2576cc * ext/mkext.rb: remove purelib, fixes a bug in r28440, r28441.
* spec/default.mspec: ditto.

* template/Doxyfile.tmpl: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-03 05:48:05 +00:00
nobu 45992b4b25 * ext/purelib.rb: no longer used since the default load path of
miniruby is empty.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-02 22:52:25 +00:00
akr fe98a03c53 * ext/socket/extconf.rb: suppress a warning.
* ext/extmk.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-26 12:34:51 +00:00
nobu 1b26041724 * Makefile.in (clean-ext): allow glob patterns.
* ext/extmk.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-19 05:29:18 +00:00
nobu 8de8d8b562 * ext/extmk.rb: fix for extstatic.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-30 16:58:51 +00:00
nobu 53e884f32d * ext/extmk.rb (command_output): $makeflags are already quoted.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-30 07:57:47 +00:00
akr c42a5df5c1 * ext/extmk.rb: use RbConfig instead of Config.
* instruby.rb: ditto.

* lib/rubygems.rb: ditto.

* test/rubygems/test_config.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-30 16:34:01 +00:00
nobu 2b7279ba5f * ext/extmk.rb: quotes arguments with spaces always.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-03 03:45:58 +00:00
nobu 27cc677088 * ext/extmk.rb (extmake): removes object files no longer used and
files to be removed by old distclean.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-03 08:10:10 +00:00
nobu 2b3a204832 * ext/extmk.rb (extmake), lib/mkmf.rb (create_makefile): $objs and
$srcs are always Array or nil now.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-03 07:25:50 +00:00
nobu 2233d34b39 * ext/extmk.rb (extmake): initialize $objs before extrace_makefile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-03 06:28:55 +00:00
nobu 078928bbdd * ext/extmk.rb (extmake): removes object files no longer used.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-03 05:57:30 +00:00
nobu 91c9a4becb * common.mk (main): passes $(MAKE) to mkmain_cmd
* ext/extmk.rb (command_output): uses arguments to invoke make.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-03 05:53:18 +00:00
nobu 9632241261 * common.mk (main): split from exts and makes main program after
building exts with miniruby, to get rid of overwriting running
  program.  [ruby-core:22339]

* Makefile.in, win32/Makefile.sub (RUNCMD, MKMAIN_CMD): macros to
  run script file.

* ext/extmk.rb (parse_args): added --command-output option which
  creates script file to make main program.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-24 10:01:08 +00:00
nobu 2478f1caaf * lib/xmlrpc/server.rb (Server#serve): gets rid of hardcoded
platform names.

* lib/resolv.rb (Resolv::Hosts::DefaultFileName),
  (Resolv::DNS::Config.default_config_hash): tries win32/resolv on
  mswin64 too.

* lib/rubygems/specification.rb (Gem::Specification#ruby_code):
  aded mswin64.

* lib/drb/extservm.rb (DRb::ExtServManager#invoke_service_command):
  spawn is better to start a process in background.

* ext/extmk.rb: uses FNM_SYSCASE.

* instruby.rb: installs win32.h on mswin64 platform.
  [ruby-core:21722]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-01 23:12:52 +00:00
nobu a7999ab13c * ext/extmk.rb (extmake): does not use both of makefile.rb and
extconf.rb at the same time.

* lib/mkmf.rb (DLLIB): depends on Makefile.  [ruby-core:21096]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-04 02:11:33 +00:00
nobu 8e39257025 * lib/mkmf.rb ($config_h): now always defines for old libraries.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-05 14:34:37 +00:00
yugui 642e081879 * dln.c: Ruby no longer supports MacOS 9 or before.
* eval.c: ditto.

* eval_intern.h: ditto.

* ext/extmk.rb: ditto.

* ext/tk/sample/tkextlib/treectrl/demo.rb: ditto.

* ext/tk/stubs.c: ditto.

* file.c: ditto.

* hash.c: ditto.

* include/ruby/defines.h: ditto.

* ruby.c: ditto.

* signal.c: ditto.

* vm_core.h: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04 13:42:00 +00:00
yugui bbbd9c0b7b * x68/_dtos18.c: removed. Ruby no longer supports human68k.
* x68/_round.c: ditto.

* x68/fconvert.c: ditto.

* x68/select.c: ditto.

* ext/Setup.x68: ditto.

* missing/x68.c: ditto.

* dln.c (dln_find_exe_r): removed human68k supports.
  (dln_find_1): ditto.

* lib/mkmf.rb: ditto.

* ext/extmk.rb (Init_ext): ditto.

* ext/socket/socket.c (init_sock): ditto.

* gc.c (GC_MALLOC_LIMIT): ditto.
  (rb_setjmp, rb_jmpbuf): ditto.
  (mark_current_machine_context): ditto.

* include/ruby/defines.h (PATH_ENV): ditto.

* io.c: ditto.

* process.c: ditto.

* ruby.c: ditto.

* test/ruby/test_env.rb: ditto.

* test/ruby/test_path.rb: ditto.

* LEGAL


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04 13:12:13 +00:00
nobu 8aa74a17ef * ext/extmk.rb (extmake): check if compile before showing message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-19 12:43:57 +00:00
nobu f955217028 * ext/extmk.rb: negate default of --without-ext if --with-ext is
given.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-10 11:13:58 +00:00
nobu 6f8bf830b4 * ext/extmk.rb: negate default of --without-ext.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-10 09:12:19 +00:00
nobu b745b792e6 * common.mk, ext/extmk.rb, lib/mkmf.rb: use absolute path for RUBYOPT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-08 08:44:15 +00:00
nobu 279b358d00 * common.mk, ext/extmk.rb, lib/mkmf.rb: removed RUBYOPT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-08 08:29:24 +00:00