Commit graph

619 commits

Author SHA1 Message Date
nobu
7d4cdab8f8 mkmf.rb: get rid of error messages
* lib/mkmf.rb (create_makefile): add TARGET_SO to CLEANLIBS only
  when the extension library will be build, to get rid of trying
  to remove $(TARGET_SO_DIR).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-27 07:37:55 +00:00
nobu
afdd2fa7e9 mkmf.rb: clean generated files
* lib/mkmf.rb (try_link0): remove generated files other than the
  executable file.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-27 05:55:32 +00:00
nobu
e3e2a2c715 Makefile.in: verify-static-library
* Makefile.in (verify-static-library): separate from LIBRUBY_A.
  no check every times by default.

* lib/mkmf.rb (try_link): remove debugging symbol directory after
  linking, instead of try_do.

* lib/mkmf.rb (try_link): bccwin32 support has been removed long
  ago.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-02-27 05:14:30 +00:00
nobu
df5d84bb41 mkmf.rb: message format string
* lib/mkmf.rb (checking_for): message needs format string.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-31 08:03:08 +00:00
nobu
b3dbeb6e90 mkmf.rb: fix script installation
* lib/mkmf.rb (MakeMakefile): fix condition to install script
  files.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-01-28 05:02:39 +00:00
nobu
0cc169d1de fid typos [ci skip]
* fix typos, "a" before "Integer" to "an".  [Fix GH-1438]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-24 02:28:25 +00:00
nobu
f9b36a3958 mkmf.rb: fix for bundled gems
* lib/mkmf.rb (install_dirs): enable extout in RUBYARCHDIR only
  when extmk.

* lib/mkmf.rb (create_makefile): ditto for TIMESTAMP_DIR.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-18 05:21:05 +00:00
nobu
c06ec0bc3d extmk.rb: fix conflict of timestamp files
* ext/extmk.rb (timestamp_file): move extmk.rb specific tricks
  from lib/mkmf.rb.  keep RUBYCOMMONDIR prefix not to conflict
  with a timestamp file in the toplevel.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-01 15:55:13 +00:00
nobu
cea6c9d2f5 mkmf.rb: architecture timestamp directories
* lib/mkmf.rb (timestamp_file): substitute TARGET_SO_DIR with
  RUBYARCHDIR seprately from other normal paths, to make timestamp
  files for architecture dependent directories separately.  and
  remove RUBYCOMMONDIR prefix.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-01 07:02:32 +00:00
nobu
e3590ddb86 mkmf.rb: fix up r56053
* lib/mkmf.rb (timestamp_file): TARGET_SO_DIR is defaulted to
  RUBYARCHDIR but different for each extension libraries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-01 05:54:25 +00:00
nobu
68d5d0f372 extmk.rb: hacks for bundled gems
* ext/extmk.rb (gems): move dirty hacks for bundled gems from
  mkmf.rb.
* lib/mkmf.rb (create_makefile): yield all configuration strings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-01 05:24:19 +00:00
nobu
886bef681a no Borland make [ci skip]
* ext/extmk.rb: remove Borland make support.  Borland C++ has not
  been supported since years ago.

* lib/mkmf.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-01 03:58:01 +00:00
nobu
a6447af4da mkmf.rb: fix up r56047
* lib/mkmf.rb (create_makefile): install to $(RUBYARCHDIR) other
  than bundled extension libraries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-31 11:27:24 +00:00
nobu
3b5da7e574 mkmf.rb: fix up r56047
* lib/mkmf.rb (create_makefile): TARGET_SO_DIR should not be the
  root directory when sodir is empty.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-31 11:20:45 +00:00
nobu
1b6a42d968 mkmf.rb: TARGET_SO_DIR
* ext/extmk.rb: move TARGET_SO_DIR stuffs to mkmf.rb.
* lib/mkmf.rb (create_makefile): create target shared object files
  under $(TARGET_SO_DIR) which is $sodir if it is defined with
  $extout.  [ruby-core:77058] [Bug #12681]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-31 06:36:12 +00:00
nobu
506b45db9c mkmf.rb: separate timestamp files
* lib/mkmf.rb (timestamp_file): separate timestamp files for each
  architectures.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-31 02:41:31 +00:00
nobu
39e3db3510 mkmf.rb: use TARGET_SO
* lib/mkmf.rb (create_makefile): use TARGET_SO consistently.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-17 07:20:23 +00:00
usa
5e1ee25ad8 * configure.in, lib/mkmf.rb, win32/Makefile.sub (CSRCFLAG): make the
compiler option replacable in Makefile.

* win32/Makefile.sub (OUTFLAG, COUTFLAG): ditto.

* win32/Makeile.sub, win32/setup.mak (CC): should not append `-nologo`
  option forcely.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-11 16:30:03 +00:00
nobu
1bdc1a5529 Local header dependencies
* lib/mkmf.rb (create_makefile): store $headers in LOCAL_HDRS for
  depend files.
* ext/digest/digest_conf.rb (digest_conf): add implementation
  specific headers to $header.
* ext/digest/{md5,rmd160,sha1,sha2}/depend: add LOCAL_HDRS to the
  dependencies.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-07-06 05:44:58 +00:00
nobu
15dba481a2 mkmf.rb: sort lists of source and object files
* lib/mkmf.rb (create_makefile): sort lists of source and object
  files in generated Makefile, unless given by extconf.rb.
  [Fix GH-1367]

Without sorting the list of object files explicitely, its order is
indeterministic, because readdir() is also not deterministic.
When the list of object files varies between builds, they are
linked in a different order, which results in an unreproducible
build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55265 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-03 08:44:27 +00:00
nobu
f37f881a58 lib/mkmf.rb: use xsystem to pkg-config --exists
* lib/mkmf.rb (pkg_config): use xsystem consistently to set up
  library path environment variable as well as latter pkg-config
  calls.  [ruby-dev:49619] [Bug #12379]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-05-14 00:04:36 +00:00
nobu
6ff3a8e3bb mkmf.rb: fix conflict in have_library
* lib/mkmf.rb (try_func): get rid of conflict of declarations of
  main().  checking local symbol reference does not make sense.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-05-11 16:54:10 +00:00
nobu
22f1db4b8e mkmf: Unquote directory strings
* lib/mkmf.rb (find_executable0): On Windows, it is actually valid
  to surround individual PATH directory entries with double
  quotes. Remove these before joining the path as otherwise the
  literal quotes would become part of the path, resulting in the
  executable not to be found.  [Fix GH-1305]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-24 16:10:43 +00:00
nobu
fdcc924fce mkmf.rb: Do not modify caller strings
* lib/mkmf.rb (with_{cpp,c,ld}flags): copy caller strings not to
  be modified, in append_{cpp,c,ld}flags respectively.
  [Fix GH-1246]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-14 08:32:15 +00:00
naruse
9bed6e8e8e * configure.in: improve ICC (Intel C Compiler) support.
* configure.in (CXX): The name of icc's c++ compiler is `icpc`.

* configure.in (warnings): Add `-diag-disable=2259` to suppress
  noisy warnings: "non-pointer conversion from "..." to "..." may
  lose significant bits".

* configure.in (optflags): Add `-fp-model precise` like -fno-fast-math.

* lib/mkmf.rb: icc supports -Werror=division-by-zero
  and -Werror=deprecated-declarations, but doesn't support
  -Wdivision-by-zero and -Wdeprecated-declarations.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-17 12:20:15 +00:00
naruse
84d9d4857e Additional fix of r53450
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-07 06:51:09 +00:00
nobu
f2ba23ace5 mkmf.rb: fix for ODE make
* lib/mkmf.rb (create_makefile): get rid of placing @ at the
  beginning of replacement, which is the loop expansion mechanism
  from the OSF Development Environment (ODE) make.  fix failures
  with bmake by r53448.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-07 06:37:44 +00:00
nobu
b032d111ab mkmf.rb: library installation messages
* lib/mkmf.rb (configuration, dummy_makefile, create_makefile):
  show library installation messages only when any files need to
  be updated.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-07 03:06:58 +00:00
naruse
63f486f1db remove duplicated frozen_string_literal magic comment
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 09:25:48 +00:00
naruse
3e92b635fb Add frozen_string_literal: false for all files
When you change this to true, you may need to add more tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:07:31 +00:00
nobu
01c432169f disable frozen-string-literal
* lib/mkmf.rb, lib/shellwords.rb: disable frozen-string-literal.
  [ruby-core:72011] [Bug #11800]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-10 00:32:53 +00:00
nobu
13a935b0ba Drop support for BeOS
* beos: Drop support for BeOS now that Haiku is stable.
  [Fix GH-1112]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-24 00:17:11 +00:00
nobu
051127abec mkmf.rb: revert r52431
* lib/mkmf.rb: it's an issue of test/mkmf.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-04 01:31:09 +00:00
nobu
6d57a52685 mkmf.rb: log messages
* lib/mkmf.rb (xsystem, xpopen, egrep_cpp, pkg_config): log
  messages to the log file too.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-03 07:52:22 +00:00
sorah
d9bf31ccef * lib/mkmf.rb: Revert r45640 because it may lead to link
with different libruby. [Bug #9760]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-24 12:10:48 +00:00
kosaki
3a49d35352 * lib/mkmf.rb: Good-by Borland-C (cont).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-18 02:17:46 +00:00
kosaki
4ad2057f27 * ChangeLog: Good-bye OS/2.
* common.mk: ditto.
* configure.in: ditto.
* dln_find.c: ditto.
* ext/Setup.emx: ditto.
* ext/extmk.rb: ditto.
* ext/socket/extconf.rb: ditto.
* ext/zlib/extconf.rb: ditto.
* file.c: ditto.
* include/ruby/defines.h: ditto.
* io.c: ditto.
* lib/mkmf.rb: ditto.
* missing/os2.c: ditto.
* process.c: ditto.
* ruby.c: ditto.
* NEWS: announce OS/2 is no longer supported.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52161 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-18 01:18:34 +00:00
nobu
2d1b2f0ecf mkmf.rb: remove unnecessary variables
* lib/mkmf.rb (configuration): remove unnecessary variables,
  top_srcdir is defined above, builddir is not used.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-09-04 03:54:29 +00:00
nobu
50226fb61c mkmf.rb: move r40537
* lib/mkmf.rb (create_makefile): move r40537 from extmk.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-09-04 03:54:23 +00:00
nobu
6cb284a2cf mkmf.rb: suppress warnings
* lib/mkmf.rb (check_sizeof, what_type): remove static qualifiers
  to suppress unneeded-internal-declaration warnings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-29 03:43:21 +00:00
nobu
db577345ca mkmf.rb: suppress warnings
* lib/mkmf.rb (try_func): suppress implicit-function-declaration
  warnings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-17 00:46:30 +00:00
nobu
71ebbe334d mkmf.rb: suppress warnings
* lib/mkmf.rb (try_func, try_var): suppress
  unused-but-set-variable warnings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-17 00:12:30 +00:00
ngoto
edb8c7a9f3 * lib/mkmf.rb: revert r50804 because of build failure when specifying
LDFLAGS during configure, observed on Solaris with GCC 4.6.
  [Bug #11245]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-10 13:37:03 +00:00
nobu
c5e8342d4f mkmf.rb: macro assigments
* lib/mkmf.rb ($configure_args): store macro assigments as-is, not
  only in option style.  e.g., ruby extconf.rb optflags=-O0

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-09 06:58:18 +00:00
nobu
5c18ffe29a mkmf.rb: split --libs
* lib/mkmf.rb (pkg_config): split --libs if --libs-only-l option
  is not available.  patch in [ruby-core:69428] by Hans Mackowiak.
  [ruby-core:69421] [Bug #11201]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-01 13:01:52 +00:00
nobu
d9d0594a1a mkmf.rb: logging pkg_config
* lib/mkmf.rb (pkg_config): log executing command and its results.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-01 09:46:41 +00:00
usa
b528172eba * lib/mkmf.rb (MakeMakefile#configuration): DESTDIR should never affect
top_srcdir and builddir.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-20 07:52:10 +00:00
nobu
42e149c9ad mkmf.rb: fix VC failures
* lib/mkmf.rb (xsystem): assume all warnings go to stderr but not
  stdout.  cl.exe always prints input file names.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50233 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-11 13:49:02 +00:00
nobu
335cd8ab6a mkmf.rb: fix syntax errors
* lib/mkmf.rb (append_cppflags, append_cflags, append_ldflags):
  fix missing parentheses.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-11 02:01:57 +00:00
nobu
bb96ab6fb6 mkmf.rb: methods to append flags
* lib/mkmf.rb (append_cppflags, append_cflags, append_ldflags):
  utility methods to append compiler options.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-11 02:00:02 +00:00