Commit graph

289 commits

Author SHA1 Message Date
nobu
fb2011f7f0 extmk.rb: expand target_prefix
* ext/extmk.rb (timestamp_file): should expand target_prefix in
  timestamp file name.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-04 04:56:56 +00:00
nobu
f578e02345 extmk.rb: append target_prefix
* ext/extmk.rb (timestamp_file, create_makefile): should append
  target_prefix as RUBYARCHDIR does.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-09-04 04:44:06 +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
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
7f7aa9d442 extmk.rb: build_complete
* ext/extmk.rb (create_makefile): make gem.build_complete file
  under TARGET_SO_DIR and install it only when the gem build
  succeeded.  [ruby-core:77057] [Bug #12681]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-31 08:39:23 +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
d484b0a3b8 extmk.rb: filter gems
* ext/extmk.rb: filter gems as well as exts.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-31 02:03:07 +00:00
nobu
a846ecf59f extmk.rb: fix gem target directory name
* ext/extmk.rb: make the gems target directory under the expanded
  name.  [ruby-core:77102] [Bug #12714]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-30 15:52:24 +00:00
nobu
438f52d1a4 extmk.rb: makefiles for gems
* ext/extmk.rb (extmake): now yield makefile content at creation.
  substitute makefiles for gems in the block, not to rewrite when
  nothing changed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-19 04:38:20 +00:00
nobu
9839d82d1e gem extensions
* ext/extmk.rb: build gem extensions into separate directories
* tool/rbinstall.rb: install pre-built gem extension files gem
  extension directories.  [ruby-core:76931] [Bug #12681]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-17 14:14:44 +00:00
nobu
5e0fa644ed extmk.rb: no static-ext in gems
* ext/extmk.rb (extmake): extension libraries in gems cannot link
  statically.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-15 02:46:53 +00:00
nobu
489456e999 extmk.rb: suppress a warning
* ext/extmk.rb: get rid of shadowing outer local variable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-07 10:05:57 +00:00
nobu
78728b89df extmk.rb: remove sysquote
* ext/extmk.rb (sysquote): removed.  unnecessary since r52161.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-07 10:04:41 +00:00
nobu
c7924b1305 extmk.rb: build gems
* ext/extmk.rb: [EXPERIMENTAL] build extension libraries in
  extracted gems.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-08-01 12:39:54 +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
c15ad4a4ac Fix static-linked-ext encodings
* common.mk (build-ext), ext/extmk.rb: use variable EXTENCS
  different than ENCOBJS, to get rid of circular dependency.
  build libencs when linking encodings statically.
  [ruby-core:75618] [Bug #12401]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55434 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-18 01:13:39 +00:00
nobu
b14c93e6ca extmk.rb: fix skipping messages
* ext/extmk.rb (extmake): select the message if skipped because
  its parent extension is not configured.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-05-16 00:16:13 +00:00
nobu
8cd05857c6 extmk.rb: failures format
* ext/extmk.rb: show extension failures in compilation-mode
  friendly format.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-05-12 23:35:22 +00:00
nobu
2b7c721499 extmk.rb: failed messages at the end
* ext/extmk.rb: output failed configurations at the end, not to be
  scrolled out.
  TODO: show the message at the end of the whole build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-05-12 11:19:43 +00:00
nobu
f4afd05260 extmk.rb: refactor
* ext/extmk.rb: extract non-blank part without intermediate
  objects.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-25 07:56:03 +00:00
nobu
9bfa5d917f extmk.rb: cygwin case
* ext/extmk.rb: add cygwin case, nothing excluded.
  [ruby-core:73806] [Bug#12071]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-19 02:09:06 +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
c4fdfabcc8 handle ext/ as r53141
g -L frozen_string_literal ext/**/*.rb|xargs ruby -Ka -e'ARGV.each{|fn|puts
fn;open(fn,"r+"){|f|s=f.read.sub(/\A(#!.*\n)?(#.*coding.*\n)?/,"\\&#
frozen_string_literal: false\n");f.rewind;f.write s}}'

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:31:54 +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
usa
adbf87232c * ext/extmk.rb (--extflags): new option to pass EXTLDFLAGS to children,
expecially exts.mk.

* common.mk (EXTMK_ARGS): use above option.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-18 15:55:39 +00:00
nobu
29a1905c7d common.mk: showflags only once
* common.mk (showflags): do not show flags from recursive make.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-22 14:56:37 +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
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
54d9c77c8b extmk.rb: silently skip never-installed extensions
* ext/extmk.rb (extmake): as extension libraries start with '-'
  are not installed always, no problems if no errors occurred.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-07-10 01:22:55 +00:00
nobu
e282d78a44 extmk.rb: fix with-ext condition
* ext/extmk.rb: if no with-ext option is given, dafault to
  enable everything.  [ruby-dev:49108] [Bug #11280]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-18 22:58:14 +00:00
nobu
65ab26604b extmk.rb: fix with-ext condition
* ext/extmk.rb: configure intersection of with-ext and not
  without-ext, as withouts is no longer true by default if
  with-ext option is given.  [ruby-dev:49108] [Bug #11280]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-18 14:25:54 +00:00
nobu
dcdbe0f22a extmk.rb: extract CLEANFILES and DISTCLEANFILES
* ext/extmk.rb (extract_makefile): extract CLEANFILES and
  DISTCLEANFILES regardless previous configration succeeded, as
  ext/tk/extconf.rb makes config_list file always.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49363 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-21 04:22:07 +00:00
nobu
13e15287cb extmk.rb: do not exclude readline
* ext/extmk.rb: do not exclude readline by default on win32.  it
  would not be completely impossible.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-11 07:35:13 +00:00
nobu
ae752cc546 extmk.rb: default without-ext
* ext/extmk.rb: move the default execluded extensions from
  configure.in so that it works on win32 too.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-01-11 04:44:09 +00:00
nobu
5b6fc3f006 extmk.rb: replace current directory name
* ext/extmk.rb (extmake): replace "./" at beginning in LOCAL_LIBS
  with the current directory name for values cached in previous
  Makefile.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-23 13:05:47 +00:00
nobu
1e6a101237 extmk.rb: no EXTOBJS to main if enable-shared
* ext/extmk.rb: as all extension objects including initializations
  of ext and enc shouild be linked to libruby if enable-shared,
  EXTOBJS should not be linked to main programs.
  [ruby-core:66675] [Bug #10566]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48711 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-04 17:27:49 +00:00
nobu
c2228158c9 extmk.rb: include UPDATE_LIBRARIES
* ext/extmk.rb: include UPDATE_LIBRARIES in SUBMAKEOPTS for NMAKE
  which does not include macro definitions given by command line
  in MAKEFLAGS.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-31 03:49:43 +00:00
yugui
4883d12552 * ext/extmk.rb: generates the rule for extinit.$(OBJEXT).
extinit.$(OBJEXT) used to be generated by the builtin rule, thus
  didn't accept custom $(CC) and caused linkage error for cross
  compiling.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-11 13:33:19 +00:00
nobu
c2b0992156 configure.in: fix static-linked-ext
* configure.in (--with-static-linked-ext): fix for extensions to
  be linked statically.
* Makefile.in, common.mk: use ENCSTATIC for enc directory.
* ext/extmk.rb: supply dependencies of statically linked extension
  libraries.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-03 03:40:24 +00:00
nobu
0b4e4b20cb extmk.rb: GNU make -C option
* ext/extmk.rb: use -C option for GNU make instead of shell.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-03 03:38:13 +00:00
nobu
057186a986 extmk.rb: non-installed extensions when statick-linked-ext
* ext/extmk.rb: exclude extension libraries not to be installed if
  `--with-statick-linked-ext` is set, not only shared library is
  not built.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-22 14:34:56 +00:00
nobu
108aa6143e extmk.rb: non-installed extensions cannot link statically
* ext/extmk.rb: exclude extension libraries not to be installed
  unless shared library is built, as they cannot be linked
  statically.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-21 04:46:00 +00:00
nobu
e627a028f3 extmk.rb: discard empty Makefile
* ext/extmk.rb (extmake): discard empty Makefile which can be left
  accidentally.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 06:08:54 +00:00
nobu
77811031e5 extmk.rb: check if parent is build
* ext/extmk.rb (extmake): don't build nested libraries if parent
  library isn't build.

* ext/{dl/callback,tk/tkutil}/extconf.rb: no longer need to check
  if the parent is build.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45887 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-09 05:52:59 +00:00
nobu
ecb8b52f56 extmk.rb: fix extstatic
* ext/extmk.rb: fix variable name for --extstatic option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-09 05:52:57 +00:00
akr
07b12e1ee2 * ext/extmk.rb: Re-generate extmk.mk and dummy makefiles only if
really required.
  This fixes a problem to run multiple test-all concurrently as:
  make test-all & make test-all & make test-all & ...


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-15 10:29:01 +00:00
nobu
5c2f4fbcbd extmk.rb: static extensions
* ext/extmk.rb (extmake): should make static libraries for extensions
  to be statically linked.  [Bug #7948]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-28 11:10:52 +00:00
nobu
b0e7ec8c9a extmk.rb: untouch makefiles
* ext/extmk.rb (extmake): leave makefiles untouched if the content is
  not changed, to get rid of unnecessary re-linking.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-28 02:30:13 +00:00
nobu
4ea690ea3b extmk.rb: don't duplicate
* ext/extmk.rb (extract_makefile): do not add dldflags if duplicated.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-05-23 15:18:05 +00:00