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

206 Коммитов

Автор SHA1 Сообщение Дата
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
nobu f3e0252e5e * lib/mkmf.rb (merge_libs): squeeze successive same libraries.
[ruby-dev:22652]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-21 07:44:24 +00:00
nobu 482b9c2ce7 * configure.in (LIBPATHFLAG, RPATHFLAG): enclose paths with single
quotes.  [ruby-dev:22564]

* lib/mkmf.rb (libpathflag): do not enclose with quotes always.

* {bcc32,win32,wince}/Makefile.sub (LIBPATHFLAG): quoted.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-10 14:01:50 +00:00
nobu bafe6d8504 * ext/extmk.rb (extmake): should not reduce necessary libraries.
[ruby-dev:22440]

* lib/mkmf.rb (merge_libs): merge libraries according to
  dependency.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-09 02:20:28 +00:00
nobu 6f69b2b00a * lib/mkmf.rb (libpathflag): use single quotes. [ruby-dev:22440]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-09 01:05:27 +00:00
usa d110f97055 * lib/mkmf.rb (create_makefile): remove duplicated object files
from $objs on DOSISH platforms.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5370 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-04 16:48:45 +00:00
matz b9a79bc020 * io.c (rb_f_backquote): need not to check nil result.
[ruby-core:02078]

* io.c (rb_io_getline): should return nil on eof, even when nil rs is
  specified. [ruby-core:02077]

* pack.c (pack_pack): add sign check for 'i', and 'l'.
  [ruby-dev:22427]

* bignum.c (rb_quad_pack): add range check for 'quad int'.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-26 15:34:33 +00:00
usa b3b5b5e6b6 * eval.c (stack_extend): ignore inline optimization on VC7.
* win32/Makefile.sub (OS, RT): can override.

* win32/Makefile.sub (LDFLAGS): ditto. shouldn't use pdb:none
  option. based on Tietew's patch [ruby-dev:22289]

* lib/mkmf.rb (create_makefile): should remove deffile if it's
  made by miniruby. based on nobu's patch.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-18 12:48:43 +00:00
nobu b1fd732b4f * ext/extmk.rb (MTIMES): let makefiles depend to mkmf.rb.
* lib/mkmf.rb (configuration): DLDFLAGS was duplicated.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-12-03 02:36:48 +00:00
eban c93b7ae9bd * lib/mkmf.rb (TRY_LINK, link_command): added support for DLDFLAGS
and ARCH_FLAG.  [ruby-dev:22085]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-30 16:09:42 +00:00
eban 21e9506b22 * lib/mkfm.rb (configuration): add ARCH_FLAG to DLDFLAGS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-30 14:00:05 +00:00
eban c3f1c5280b * configure.in: keep ARCH_FLAG separate. export ARCH_FLAG.
[ruby-core:01819]

* Makefile.in: add ARCH_FLAG to CFLAGS.

* Makefile.in: add @CPPFLAGS@ to CPPFLAGS.

* lib/mkmf.rb (link_command, cc_command): use ARCH_FLAG.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-30 11:27:34 +00:00
eban 9a8cc1f4ab * configure.in: do not override CCDLDFLAGS, LDFLAGS, XLDFLAGS,
DLDFLAGS and LDSHARED.

* configure.in: XCFLAGS for compiling ruby itself.  ARCH_FLAG is
  reflected in CFLAGS.

* lib/mkmf.rb: ditto.  do not import XCFLAGS from config.status.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-30 09:33:03 +00:00
matz 6212cfb9c5 * gc.c (Init_stack): stack region is far smaller than usual if
pthread is used.

* marshal.c (w_extended): singleton methods should not be checked
  when dumping via marshal_dump() or _dump(). [ruby-talk:85909]

* file.c (getcwdofdrv): avoid using getcwd() directly, use
  my_getcwd() instead.

* merged NeXT, OpenStep, Rhapsody ports patch from Eric Sunshine
  <sunshine@sunshineco.com>.  [ruby-core:01596]

* marshal.c (w_object): LINK check earlier than anything else,
  i.e. do not dump TYPE_IVAR for already dumped objects.
  (ruby-bugs PR#1220)

* eval.c (rb_eval): call "inherited" only when a new class is
  generated; not on reopening.

* eval.c (eval): prepend error position in evaluating string to

* configure.in: revived NextStep, OpenStep, and Rhapsody ports which
  had become unbuildable; enhanced --enable-fat-binary option so that
  it accepts a list of desired architectures (rather than assuming a
  fixed list), or defaults to a platform-appropriate list if user does
  not provide an explicit list; made the default list of architectures
  for MAB (fat binary) more comprehensive; now uses -fno-common even
  when building the interpreter (in addition to using it for
  extensions), thus allowing the interpreter to be embedded into a
  plugin module of an external project (in addition to allowing
  embedding directly into an application); added checks for
  <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now
  ensures that -I/usr/local/include is employed when extensions'
  extconf.rb scripts invoke have_header() since extension checks on
  NextStep and OpenStep will fail without it if the desired resource
  resides in the /usr/local tree; fixed formatting of --help message.

* Makefile.in: $(LIBRUBY_A) rule now deletes the archive before
  invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives
  (see configure's --enable-fat-binary option); added rule for new
  missing/getcwd.c.

* defines.h: fixed endian handling during MAB build (see configure's
  --enable-fat-binary option) to ensure that all portions of the
  project see the correct WORDS_BIGENDIAN value (some extension modules
  were getting the wrong endian setting); added missing constants
  GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep
  and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H
  define in NeXT section.

* dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on
  NextStep since, on some installations, this value always resolves
  uselessly to zero.

* dln.c: added error reporting to NextStep extension loader since the
  previous behavior of failing silently was not useful; now ensures
  that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined
  for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice
  on Rhapsody since this header lacks multiple-include protection,
  which resulted in "redefinition" compilation errors.

* main.c: also create hard reference to objc_msgSend() on NeXT
  platforms (in addition to Apple platforms).

* lib/mkmf.rb: now exports XCFLAGS from configure script to extension
  makefiles so that extensions can be built MAB (see configure's
  --enable-fat-binary option); also utilize XCFLAGS in cc_command()
  (but not cpp_command() because MAB flags are incompatible with
  direct invocation of `cpp').

* ext/curses/extconf.rb: now additionally checks for presence of these
  curses functions which are not present on NextStep or Openstep:
  bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(),
  setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(),
  wscrl(), wsetscrreg()

* ext/curses/curses.c: added appropriate #ifdef's for additional set of
  curses functions now checked by extconf.rb; fixed curses_bkgd() and
  window_bkgd() to correctly return boolean result rather than numeric
  result; fixed window_getbkgd() to correctly signal an error by
  returning nil rather than -1.

* ext/etc/etc.c: setup_passwd() and setup_group() now check for null
  pointers before invoking rb_tainted_str_new2() upon fields extracted
  from `struct passwd' and `struct group' since null pointers in some
  fields are common on NextStep/OpenStep (especially so for the
  `pw_comment' field) and rb_tainted_str_new2() throws an exception
  when it receives a null pointer.

* ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup().

* ext/socket/getaddrinfo.c: cast first argument of getservbyname(),
  gethostbyaddr(), and gethostbyname() from (const char*) to non-const
  (char*) for older platforms such as NextStep and OpenStep.

* ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup(); include
  <netinet/in_systm.h> if present for NextStep and OpenStep; cast first
  argument of gethostbyaddr() and getservbyname() from (const char*) to
  non-const (char*) for older platforms.

* ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for
  platforms such as NextStep and OpenStep which lack strdup().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-11-22 04:00:03 +00:00