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

179 Коммитов

Автор SHA1 Сообщение Дата
shyouhei 21429b1488 __alignof__ to take alignment of a type
C11 and C++11 has this feature so why not use it when available.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61828 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-15 02:35:17 +00:00
shyouhei f089a52865 __attibute__((__aligned__)) for RSTRING_PTR()
For instance array.c:rb_ary_product() uses RSTRING_PTR() as an
array of int. So to avoid misaligned memory access RSTRING_PTR()
must at least be sizeof(int)-aligned.  However the type of
RSTRING_PTR() is char*, which of course can expect alignment as
much as 1.  This is a problem.

The reality is, there is no misaligned memory access because the
memory region behind RSTRING_PTR() is allocated using malloc().
Memory regions returned from malloc() are always aligned
appropriately.  So let's tell the compiler about this information.
It seems GCC, clang, and MSVC have such feature.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-15 02:35:16 +00:00
hsbt afcd060a92 Fix a typo.
configure.ac: delcares -> declares.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-13 11:10:08 +00:00
normal 043e1fd559 thread_pthread: remove checks for pthread_cond*_init
These were added for NaCL support in r36022, and we dropped NaCL
in r60374.

IMHO, any pthreads implementation without these basic functions
is not worth the time to support.

[ruby-core:84758] [Misc #14342]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-09 08:26:43 +00:00
normal e8f40bd8f8 thread_pthread: remove HAVE_PTHREAD_ATTR_INIT ifdefs
ifdefs make code confusing for my easily-confused mind :<
These were added for NaCL support in r36022, and we dropped NaCL
in r60374.  There are more #ifdefs to remove...

[ruby-core:84758] [Misc #14342]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-09 08:26:38 +00:00
nobu ecbb128273 fix fd mask detection on os x
This was broken in r59440 (3215b27a9a)
[Bug #14248]

From: Stefan Kaes <skaes@railsexpress.de>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-27 14:07:49 +00:00
naruse 4b798a3989 initialize should be outside
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-15 09:43:40 +00:00
naruse a32e3fee79 check icc version inside condition
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61276 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-15 07:58:02 +00:00
naruse 41b76e98a9 suppress icc warnings
* subscript out of range
* enumerated type mixed with another type

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61275 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-15 07:58:00 +00:00
naruse b7747df13e particular_werror_flags=no on ICC
fix r61261

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-14 18:33:33 +00:00
naruse dd25f5052f ICC doesn't support -Werror= but ignore
It cause warnings when ruby remove error= on compiling ext/*.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-14 16:47:28 +00:00
nobu 6875e3242f configure.ac: fixed a typo [Feature #4052]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-29 14:48:02 +00:00
nobu defcaf89dd file.c: File.lutime
* file.c (utime_internal): add File.lutime.  [Feature #4052]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-29 09:59:20 +00:00
nobu 8fc8587e05 sysconfdir on Windows
* ext/etc/etc.c (etc_sysconfdir): mentioned special case on
  Windows.  [ruby-core:43110] [Bug #6121]

* ext/etc/extconf.rb: define SYSCONFDIR only if sysconfdir is set
  in RbConfig::CONFIG and not empty.

* win32/Makefile.sub (config.status): sysconfdir is not used on
  Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-24 13:48:08 +00:00
naruse 1333c0f0df Revert "sysconfdir on Windows"
This reverts commit r60279.
This breaks mswin build:
https://ci.appveyor.com/project/ruby/ruby/build/1.0.5571

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-24 11:15:20 +00:00
hsbt 0e2d2e6a79 Drop to support NaCl platform.
Because NaCl and PNaCl are already sunset status.
  see https://bugs.chromium.org/p/chromium/issues/detail?id=239656#c160

  configure.ac: Patch for this file was provided by @nobu.

  [Feature #14041][ruby-core:83497][fix GH-1726]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-23 05:56:25 +00:00
nobu e4ff51b05a sysconfdir on Windows
* ext/etc/etc.c (etc_sysconfdir): mentioned special case on
  Windows.  [ruby-core:43110] [Bug #6121]

* win32/Makefile.sub (config.status): sysconfdir is not used on
  Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-21 14:19:23 +00:00
nobu 20685cdc85 Get rid of shadowing local variables
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-18 04:35:25 +00:00
nobu 90ab739ae4 configure.ac: fix SOEXT on Windows
* configure.ac (SOEXT): shoud be "dll" on Windows.
  [ruby-core:83208] [Bug #14002]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-16 05:00:21 +00:00
nobu ae0eea21bf fix missing variables in ruby.pc
* configure.ac (LIBRUBY_SO): get rid of referrence to
  LIBRUBY_SONAME which is not present in ruby.pc.

* template/ruby.pc.in (RUBY_API_VERSION, SOEXT): add new
  variables.  [ruby-core:83208] [Bug #14002]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-16 04:15:19 +00:00
nobu b625191054 configure.ac: fix SONAME
* configure.ac (RUBY_SO_NAME): revert $(RUBY_API_VERSION:.=) to
  $(MAJOR)$(MINOR), as a string in middle is not replaced.
  [ruby-core:83208] [Bug #14002]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-15 02:31:29 +00:00
nobu 8b182a7f7d configure.ac: link Foundation framework
* configure.ac (XLDFLAGS): link against Foundation framework and
  let __NSPlaceholderDictionary initialize, to get rid of crash
  after fork on macOS High Sierra.  [ruby-core:83239] [Bug #14009]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-14 15:55:14 +00:00
nobu c739150c1e configure.ac: LIBRUBY_SONAME
* configure.ac (LIBRUBY_SONAME): add new variable for the name of
  the library name with compatibility version.
  [ruby-core:83208] [Bug #14002]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-14 15:35:05 +00:00
nobu 7402c35c49 configure.ac: no _objc_msgSend trick
* configure.ac (XLDFLAGS): _objc_msgSend is no longer needed to
  link CoreFoundation, that framework is always used for CFString
  functions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-14 01:59:47 +00:00
naruse 4f966c0a68 configure.ac: detect mandoc and set MANTYPE=doc
OpenBSD uses mandoc [Feature #13981] [ruby-core:83146]
Note: AC_PATH_PROGS_FEATURE_CHECK is autoconf 2.62 feature,
but current CRuby declares AC_PREREQ(2.67); it's safe to use.
Patched by kernigh (George Koehler)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-06 11:17:38 +00:00
glass 7f2fd38be6 configure.ac: remove --enable-pthread option.
* configure.ac: remove --enable-pthread option.
  it was obsoleted in 2009.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-30 09:27:30 +00:00
glass d00c9d7e06 configure.ac: remove unused macro
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-30 06:45:24 +00:00
glass 9189cf5793 configure.ac: use m4_version_prereq
* configure.ac: use m4_version_prereq to check
  running autoconf version.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-30 06:30:44 +00:00
nobu 3133a5c971 configure.ac
* configure.ac: renamed configure.in.  [Feature #13946]

* Makefile.in, common.mk, ext/rbconfig/sizeof/depend: use
  configure.ac.

* README.ja.md, README.md: update document for configure.ac.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-29 13:21:17 +00:00