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

470 Коммитов

Автор SHA1 Сообщение Дата
nobu ea3edd2744 mkmf.rb: fix typo
* lib/mkmf.rb (configuration): fix typo, should never return nil.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 12:07:19 +00:00
nobu 5a03c25690 mkmf.rb: hack for -framework
* lib/mkmf.rb (have_framework): get rid of separating -framework
  option and its argument and dealing with the argument as a library
  or an object name.  if $LDFLAGS were an array...


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 07:17:43 +00:00
nobu 6684ade9a3 configure.in: EXTDLDFLAGS
* configure.in (EXTDLDFLAGS): split options for each extension
  libraries, and unused in ruby.pc.  [Bug #6734]
* lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 05:53:23 +00:00
nobu 37c8b68555 mkmf.rb: add TARGET_NAME
* configure.in (DLDFLAGS): use TARGET_ENTRY to specify an entry point
  instead of TARGET which may contain non-identifer characters.
* lib/mkmf.rb (create_makefile): add TARGET_NAME which is the first
  part consists of only word characters.  [ruby-core:46248][Bug #6709]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-09 04:28:40 +00:00
naruse 720dc30458 * lib/mkmf.rb: add dummy clean-static target to prevent errors for the
case real clean-static target doesn't exist.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-12 14:46:29 +00:00
drbrain 5b2df41b35 * README.EXT (prepare extconf.rb): Added note to see MakeMakefile for
documentation of extconf.rb functions.  Patch by Zachary Scott.
  [ruby-trunk - Feature #6522]
* README.EXT (Appendix C):  Removed in favor of MakeMakefile.
  Patch by Zachary Scott.
* lib/mkmf.rb:  Merged documentation from README.EXT Appendix C.  Patch
  by Zachary Scott.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-06-08 23:21:50 +00:00
nobu 03570f8091 ext/extmk.rb: workaround for -framework option
* ext/extmk.rb (extmake): assume non-option words are arguments.
  workaround for -framework option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-20 15:58:03 +00:00
nobu 2641f1d19f [ruby-dev:45650]
* lib/mkmf.rb (MakeMakefile#configuration): keep space at end of
  OUTFLAG and COUTFLAG.  [ruby-dev:45650]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-18 09:13:47 +00:00
nobu 58e7c45fc7 fix static-linked-ext
* lib/mkmf.rb (MakeMakefile#have_framework): combine -framework option
  and its argument with an equal sign not to be separated in merge_libs.
* ext/tk/extconf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-17 01:37:08 +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
nobu 74134f57b1 lib/mkmf.rb: check pkg-config result
* lib/mkmf.rb (MakeMakefile#pkg_config): check if libs resulted from
  pkg-config works actually.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-09 07:36:03 +00:00
nobu 28b7df7820 * revert r35510 and r35511 which caused removing the headers everytime.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-01 07:15:18 +00:00
nobu 1735969296 extconf.h dependency
* lib/mkmf.rb (MakeMakefile#depend_rules): deal with extconf.h
  dependency.  just remove it and bail out right now.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-01 06:52:25 +00:00
nobu 3417dd28a6 TRY_LINK needs EXEEXT
* lib/mkmf.rb (TRY_LINK): need EXEEXT for cross-compiling.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-22 04:57:04 +00:00
nobu 24513fe21e workaround for mingw
* lib/mkmf.rb (try_link0, try_compile, try_cpp): check if the target
  file get created actually.  workaround for the case that the exit
  status of a cygwin program seems lost on mingw.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-22 02:17:30 +00:00
nobu b1bdada158 remove conftest files
* lib/mkmf.rb (try_constant): remove conftest files.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35100 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-22 02:17:26 +00:00
nobu ce2211bf04 * lib/mkmf.rb (try_cppflags, try_cflags, try_ldflags): replace the
target flags if the given flag is accepted.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-27 01:54:23 +00:00
nobu 7d0066c542 * lib/mkmf.rb (create_header): log the content of header.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-17 00:56:25 +00:00
nobu 912b6606b3 * lib/mkmf.rb: fix r33904 and revert r33905. initialize global
variables with init_mkmf before initializing constants.
  [ruby-dev:45124] [Bug #5879]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-12 09:44:34 +00:00
kazu c6fb7c1c87 * lib/mkmf.rb: verbose-mode can use by RM, RMDIRS, etc.
(e.g. make V=1 realclean)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-11 16:04:25 +00:00
usa 3fbc62445e * common.mk,Makefile.in,win32/Makefile.sub (ECHO1): move platform
specific hack from common.mk to Makefile.in (and win32/Makefile.sub).
  [Bug #5711]

* lib/mkmf.rb: we can generate Makefile as we like.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-14 11:02:00 +00:00
nobu 53df70d92b * Makefile.in (CFLAGS): append ARCH_FLAG.
* configure.in (ARCH_FLAG): exclude from CFLAGS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-02 22:17:34 +00:00
nobu b5be930979 * lib/mkmf.rb (MakeMakefile#try_func): fix broken patch at r33834.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-12-01 07:20:20 +00:00
naruse 6a894686d6 Fix r33904.
It breaks following tests if RUBYOPT=-w
* test_class_build(TestGemExtExtConfBuilder)
* test_class_build_rbconfig_make_prog(TestGemExtExtConfBuilder)
* test_class_build_env_make(TestGemExtExtConfBuilder)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-30 03:20:04 +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 2ba247275a * lib/mkmf.rb: Fix indentations of constants at end of module.
Document some constants.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-29 01:08:16 +00:00
drbrain b1f1e46ce2 * lib/mkmf.rb: Wrap comments to 78 columns and clean up formatting.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-28 23:45:42 +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
kosaki b418bc9be4 * lib/mkmf.rb: get rid of warnings of mkmf.rb if -Wmissing-declarations
and/or -Wold-style-definition warnings if specified.
  Patch by Nikolai Weibull. Thank you! [Bug #5459] [ruby-core:40200]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-24 23:02:44 +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
nobu a0146d1e87 * lib/mkmf.rb (checking_for): should not modify the result.
* lib/mkmf.rb (have_struct_member): accept compiler opttions.
* lib/mkmf.rb (convertible_int): add restricted support of struct
  member, and TYPEOF_ macro.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-13 14:46:01 +00:00
nobu 214fd6ce77 * lib/mkmf.rb (have_library, find_library, have_func): allow
arguments of function to be checked.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-11 08:21:17 +00:00
nobu fc5f37f0e1 * lib/mkmf.rb (try_func): ignore empty opts.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33697 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 06:13:37 +00:00
nobu cfe220d8f3 * lib/mkmf.rb (have_library, have_func, have_var, have_header):
add compiler option parameter.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-10 06:02:40 +00:00
nobu 7c7514b206 * lib/mkmf.rb (cpp_command): remove multiple -arch flags since cpp
cannot work.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-08 08:30:53 +00:00
ktsj c3749b6a6d * ext/pathname/lib/pathname.rb, ext/tk/lib/multi-tk.rb,
ext/tk/sample/demos-en/widget, lib/benchmark.rb, lib/irb/cmd/fork.rb,
  lib/mkmf.rb, lib/net/ftp.rb, lib/net/smtp.rb, lib/open3.rb,
  lib/pstore.rb, lib/rexml/element.rb, lib/rexml/light/node.rb,
  lib/rinda/tuplespace.rb, lib/rss/maker/base.rb,
  lib/rss/maker/entry.rb, lib/scanf.rb, lib/set.rb, lib/shell.rb,
  lib/shell/command-processor.rb, lib/shell/process-controller.rb,
  lib/shell/system-command.rb, lib/uri/common.rb: remove unused block
  arguments to avoid creating Proc objects.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-05 07:37:47 +00:00
nobu 49cc468ad4 * lib/mkmf.rb (have_framework): try as Objective-C.
https://twitter.com/nagachika/status/120294447660539904

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-10-02 01:03:30 +00:00
nobu 0eb903aa98 * lib/mkmf.rb (link_command): use LIBRUBYARG in rbconfig for
unbundled extensions.  [ruby-core:38802] [Bug #5147]
* lib/mkmf.rb (init_mkmf): revert r32902.  [ruby-core:38903]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-11 06:07:37 +00:00
nobu 6bf7dd725b * lib/mkmf.rb (init_mkmf): set $LIBRUBYARG regardless of shared
option.  [ruby-core:38802] [Bug #5147]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-10 05:11:10 +00:00
nobu ae51324199 * lib/mkmf.rb (link_command): use static library only for bundled
extensions.  [Bug #5147]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-08-03 17:21:12 +00:00
yugui 2dafa21892 Forward-ports r32778 from branches/ruby_1_9_3 to trunk.
--
* lib/mkmf.rb (configuration:ECHO1): Same as the recent fix in
  common.mk.
  ":" in a make variable replacement cause a syntax error with
  /usr/ccs/bin/make on Solaris.  Uses $(NULLCMD) instead.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-07-31 14:17:34 +00:00
nobu ac0ab1f675 * lib/mkmf.rb: should quote arch_hdrdir and libpath for the case
installed prefix contains spaces.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-11 01:32:49 +00:00
nobu d371e3583e * lib: revert r31635-r31638 and untabify with expand(1).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-19 00:07:25 +00:00
drbrain 8d90611563 * lib/mkmf.rb: Fix indentation of EOM for heredoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-18 21:31:13 +00:00
drbrain 7bbf2f3085 * lib: Convert tabs to spaces for ruby files per
http://redmine.ruby-lang.org/projects/ruby/wiki/DeveloperHowto#coding-style
	  Patch by Steve Klabnik [Ruby 1.9 - Bug #4730]
	  Patch by Jason Dew [Ruby 1.9 - Feature #4718]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-18 21:19:18 +00:00
nobu 3a47cf3395 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-15 11:55:52 +00:00
usa 9a7d41ae19 * lib/mkmf.rb (Logging.postpone): copy only when tmporary logfile
exists.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-12 05:48:41 +00:00
drbrain 615e7987ca * object.c (rb_obj_equal): Add documentation. Patch by Vincent Batts.
[Ruby 1.9 - Bug #4664]
	* lib/rexml:  ditto
	* lib/mkmf.rb:  ditto
	* ext/socket/lib/socket.rb:  ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-11 22:56:13 +00:00
nobu e77a9ad446 * lib/mkmf.rb (find_executable0): should exclude directories.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-11 09:42:46 +00:00