Commit graph

619 commits

Author SHA1 Message Date
nobu
514df9097e * lib/mkmf.rb (create_makefile): support platforms have file separator
other than /.

* {bcc32,win32,wince}/Makefile.sub (BUILD_FILE_SEPARATOR): separator
  of building platform.

* {bcc32,win32,wince}/Makefile.sub (CP, INSTALL): use COPY command.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-20 15:08:36 +00:00
usa
07f61642e4 * lib/mkmf.rb (configuration): shouldn't output hdrdir twice.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-11 06:26:49 +00:00
nobu
06c1a64ebb * ext/extmk.rb (extmake): hdrdir needs to be defined also in
Config::CONFIG.

* lib/mkmf.rb (configuration, create_makefile): get rid of recursive
  macro reference.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-08 11:18:17 +00:00
nobu
9ea857d7ee * ext/extmk.rb (extmake): keep directory names in Makefile as macros.
* lib/mkmf.rb (configuration, create_makefile): ditto.

* lib/mkmf.rb (CXX_EXT): separate C++ extensions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-07 14:59:24 +00:00
nobu
df9cf4fc67 * lib/mkmf.rb (create_makefile): ensure library directories get made
before copying libraries there.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-02 14:39:38 +00:00
nobu
fb707a7704 * configure.in (CP, INSTALL): get rid of less portable options.
* lib/mkmf.rb (configuration, create_makefile): correct configuration
  variable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-02 13:30:49 +00:00
nobu
0f52655b06 * lib/mkmf.rb (SRC_EXT): exclude just case different suffixes on case
insensitive file system platforms.

* README.EXT, README.EXT.ja (Appendix C): utility functions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-31 13:24:27 +00:00
nobu
15df6bd4f7 * lib/mkmf.rb (macro_defined?): try to compile for an old compiler
which doesn't bail out at #error directive.  [ruby-dev:25818]

* lib/mkmf.rb (check_sizeof): refine logging messages.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-24 14:11:27 +00:00
nobu
25012d5420 * lib/mkmf.rb (mkmf_failed): check if Makefile is created without
create_makefile.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-20 13:51:48 +00:00
nobu
4783944876 * lib/mkmf.rb (create_makefile): allow putting spaces between target
and colon in depend file.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-05 03:52:21 +00:00
kou
6b68105ab2 * lib/mkmf.rb (mkmf_failed): fixed typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-22 15:39:40 +00:00
nobu
984f9a0df1 * configure.in, lib/mkmf.rb: use simple commands if available.
* mkconfig.rb: remove autoconf internal variables from rbconfig.rb.

* lib/mkmf.rb (create_makefile): substitute implicit rules in depend
  file.

* {bcc32,win32,wince}/Makefile.sub (COMPILE_RULES, RULE_SUBST):
  include $(topdir) and $(hdrdir) to search path.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-22 14:52:59 +00:00
nobu
74240f58c3 * lib/mkmf.rb (create_makefile): reverted wrongly removed lines.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-19 04:31:36 +00:00
nobu
9648e68d88 * ext/extmk.rb (extract_makefile): remove no longer existing installed
files.

* lib/mkmf.rb (install_dirs): return installation directory list.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-19 01:43:58 +00:00
usa
0de2877326 * lib/mkmf.rb (create_makefile): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7941 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10 03:58:50 +00:00
nobu
80f4330973 * bcc32/Makefile.sub (COMMON_LIBS): add libraries included in
import32.lib.

* lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to
  rule lines, add search path to implicit rules, and set Borland make
  special macros for search path.

* win32/win32.c, win32/win32.h (read): aboid a BCC runtime bug.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-10 03:07:24 +00:00
nobu
ef8f1ff3df * lib/mkmf.rb (with_cppflags, with_cflags, with_ldflags): keep flags
modified if the block returned true.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-06 16:23:03 +00:00
nobu
7a07ffe479 * ext/extmk.rb (extract_makefile): extract previously collected
informations from existing Makefile.

* ext/socket/extconf.rb: check if getaddrinfo() works fine only when
  wide-getaddrinfo option is not given.  fixed: [ruby-dev:25422]

* ext/tk/extconf.rb: separate tkutil configuration.

* lib/mkmf.rb ($extmk): check if under ext directory.

* lib/mkmf.rb (Logging.postpone): allow recursive operation.

* lib/mkmf.rb (try_constant): make sure if really a constant, reduce
  the number of times of compile.

* lib/mkmf.rb (have_macro, have_var, byte_order): new functions.

* lib/mkmf.rb (find_library): allow directory list with separators.

* lib/mkmf.rb (arg_config): manage provided configuration options.

* lib/mkmf.rb (dir_config): accept arrays of directory names as
  default values.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-02-06 14:51:44 +00:00
nobu
420a708098 * Makefile.in, configure.in: made EXTOUT configurable.
* ext/extmk.rb (extmake), lib/mkmf.rb: keep topdir as relative style.

* lib/mkmf.rb: make extensions in depth order.  [ruby-dev:25522]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-01-31 15:19:27 +00:00
nobu
326ebac3db * lib/mkmf.rb (create_makefile): create RUBYARCHDIR also when no extension
is installed.  fixed: [ruby-dev:25215]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-16 14:31:21 +00:00
eban
19f57ce144 * process.c (rb_spawn): support for DJGPP.
* lib/mkmf.rb (VPATH): specify the implicit path separator for DJGPP.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-12-08 11:14:53 +00:00
nobu
740b2d99ce * lib/mkmf.rb (create_makefile): install-rb is needed for statically
linked extensions.  [ruby-dev:24491]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-16 01:56:44 +00:00
matz
e77ddaf0d1 * array.c (rb_ary_delete): element comparison might change array
size. [ruby-dev:24273]

* parse.y: make ruby parser reentrant. merge ripper parser to the
  real one.  this change makes ruby require bison.

* file.c (rb_file_truncate): clear stdio buffer before truncating
  the file.  [ruby-dev:24191]

* ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
  which might return singleton class.  [ruby-dev:24202]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-09-17 09:24:13 +00:00
nobu
7e28ad63ff * ext/tcltklib/extconf.rb (find_tcl, find_tk): find stub library.
* lib/mkmf.rb (arg_config, with_config): deal with '-' and '_'
  uniformly.  [ruby-dev:24118]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6802 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-08-20 21:42:21 +00:00
knu
db850b21fd * lib/mkmf.rb (init_mkmf): Do not add $(libdir) to $LIBPATH in
extmk mode.

* lib/mkmf.rb (dir_config): Prepend a new library path instead of
  appending so it is tried first.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-07-13 06:54:01 +00:00
nobu
6f9195ec91 * configure.in, lib/mkmf.rb (LIBPATHFLAG): use double quotes due to
DOSISH compilers.  [ruby-core:03107]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-28 05:58:13 +00:00
nobu
1f16f35849 * lib/mkmf.rb (libpathflag): should not quote here.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-26 03:43:26 +00:00
nobu
4cf1e8654d * lib/mkmf.rb (libpathflag, find_header, dir_config): quote directory
names if necessary.  [ruby-talk:104505]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-26 02:07:30 +00:00
nobu
fc04396ea3 * lib/mkmf.rb (check_sizeof): define result size. [ruby-core:02911]
* lib/mkmf.rb (create_header): macro name should not include equal
  sign.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-20 08:02:11 +00:00
matz
a6a8847190 * numeric.c (flo_eq): alway check if operands are NaN.
[ruby-list:39685]

* lib/cgi/session.rb: use LOCK_SH to read, and a few other
  improvements.  [ruby-core:02328]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-20 04:34:14 +00:00
nobu
41e4c5de36 * lib/mkmf.rb (have_type): do not check pointer to incomplete type,
which always get compiled.
  [ruby-list:39683]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-20 03:22:20 +00:00
nobu
93472ba0ed * lib/mkmf.rb (have_type, check_sizeof): replace unusable characters.
[ruby-talk:99788]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-12 10:59:52 +00:00
nobu
7792d9026a * lib/mkmf.rb: $hdrdir should not contain macros, for backward
compatibility.  [bruby-dev:28]

* lib/mkmf.rb (create_makefile): in the case of extout, just copy
  script files, without comparison.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-23 14:24:51 +00:00
nobu
fa7a5d5477 * ext/extmk.rb (extmake): skip uncompiled extensions.
* lib/mkmf.rb (create_makefile): emit no rules for static library if
  $static is nil, e.g., outside of ext/.

* lib/test/unit/ui/console/testrunner.rb (test_started): show test
  name via $0.

* runruby.rb: set environments to use the compiled binary.

* test/runner.rb: do nothing while cross-compiling.

* test/drb/drbtest.rb, test/soap/calc/test_calc_cgi.rb: use envutil to
  know ruby binary.

* test/ruby/envutil.rb: give priority to RUBY environment variable to
  use just compiled binary and libraries.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-08 10:45:21 +00:00
nobu
5c51ccc35c * ext/extmk.rb (extmake): extract necessary variables for static link
from Makefile.

* lib/mkmf.rb (create_makefile): save preload and libpath for next
  compile.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-04-02 09:00:12 +00:00
nobu
5e23ff603f * lib/mkmf.rb ($ruby, $topdir, $hdrdir): should not be affected by
DESTDIR after installed.

* lib/mkmf.rb (dummy_makefile): default file lists to be cleaned.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-24 09:48:09 +00:00
nobu
52a67fe60d * Makefile.in, */Makefile.sub, common.mk (clean-local, distclean-local):
separate files under directories due to directory separator.

* */Makefile.sub (MKFILES): common.mk and */Makefile.sub should not be
  removed.

* win32/Makefile.sub, wince/Makefile.sub: $* cannot appear in explicit
  rules.

* cygwin/GNUmakefile.in: some mingw stuffs were missed.

* lib/mkmf.rb (create_makefile): Borland make wrongly removes braces
  from command lines.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-23 05:32:01 +00:00
usa
5af30c19a4 * lib/mkmf.rb ($beos, $solaris): add OS flags.
* lib/mkmf.rb (RUBY): / is not recognized as path separator on
   nmake/bmake. [ruby-list:39388]

* lib/mkmf.rb (CLEANLIBS, CLEANOBJS): should remove *.exp with *.so.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-19 02:35:27 +00:00
nobu
311fdfdfea * mkconfig.rb: no longer embed srcdir and compile_dir into
rbconfig.rb.

* ext/extmk.rb, lib/mkmf.rb: obtain top_srcdir and topdir from library
  paths.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-18 09:50:14 +00:00
nobu
21410f4dfe * configure.in (rb_cv_noreturn): default for platforms not support
prototypes.

* ruby.c (ruby_init_loadpath): buffer for path name should have
  MAXPATHLEN.

* lib/mkmf.rb (configuration): include topdir and hdrdir in VPATH.

* lib/mkmf.rb (create_makefile): default dependency rule.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-12 11:19:22 +00:00
nobu
1184dd33d5 * lib/mkmf.rb ($topdir): use compile_dir only when not installed yet.
[ruby-talk:94098]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-03 00:52:10 +00:00
nobu
e10564a578 * lib/mkmf.rb (init_mkmf): $INCFLAGS also should be lazy-evaluated.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-22 05:58:10 +00:00
nobu
bab1372a33 * ext/extmk.rb (extmake): $extout_prefix doesn't vary for libraries.
* ext/extmk.rb (extmake): remove compile directory if empty.

* ext/extmk.rb (parse_args) lib/mkmf.rb (create_makefile): move
  initialization of $extout_prefix from lib/mkmf.rb.  [ruby-dev:22928]

* ext/extmk.rb: clear ext and extout directory when cleaning.

* lib/mkmf.rb (CLEANLIBS): should be under $(arch) directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-17 10:34:31 +00:00
nobu
33f78212ce * ext/extmk.rb (parse_args): delay expanding $(extout) until invoking
make.

* lib/mkmf.rb (CLEANLIBS): should remove files have specific
  extensions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-17 03:12:53 +00:00
usa
cab6d2dadd * win32/Makefile.sub (config.status): should create *.pdb on ext/,
not .ext/.

* win32/Makefile.sub (config.status): convert the name of import
  library.

* lib/mkmf.rb (create_makefile): now don't need to remove
  $(TARGET).lib.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-16 09:39:48 +00:00
gotoyuzo
19cb7ffd6c * lib/mkmf.rb: absolute path of ruby is assigned to $(RUBY).
[ruby-dev:22870]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-14 16:51:12 +00:00
matz
829a44822d * re.c (KR_REHASH): wrong hash value on sizeof(long) > sizeof(int).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-13 16:03:15 +00:00
nobu
8bc9475793 * lib/mkmf.rb (create_tmpsrc): cpp32 of Borland C++ ignores #error
directives in DOS line-ending files at all.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-12 11:31:52 +00:00
nobu
3d4b83aaba * ext/extmk.rb, lib/mkmf.rb: rename $outdir to $extout.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-09 09:20:52 +00:00
nobu
ff9c34b3f4 * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub, configure.in,
runruby.rb: run rdoc, test and so on with compiled extension
  libraries.  [ruby-dev:22688]

* ext/extmk.rb, lib/mkmf.rb: make extension libraries in separated
  directory, similar to the actual directory structure.

* lib/fileutils.rb (FileUtils.copy_file): use the mode of the original
  file to create new file.

* lib/rdoc/ri/ri_paths.rb (RI::Paths::SYSDIR): get rid of unexpected
  influence by envirionment variable.

* bcc32/configure.bat, win32/configure.bat: add install-doc options.

* win32/win32.c, win32/win32.h (rb_w32_fstat): fix Borland C runtime
  bug which returns wrong mode.  [ruby-dev:22846]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-09 08:48:55 +00:00