aboutsummaryrefslogtreecommitdiffstats
path: root/win32
Commit message (Collapse)AuthorAgeFilesLines
* win32.c: Remove unused calls to StartSockets (#2312)Gabriel Nagy2019-10-111-75/+2
| | | | | | | | NtSocketsInitialized behavior changed in e33b1690, requiring a call to rb_w32_sysinit for starting Windows Sockets. This commit removes NtSocketsInitialized entirely to avoid confusion. Signed-off-by: Gabriel Nagy <gabriel.nagy@puppet.com>
* Adjusted spaces [ci skip]Nobuyoshi Nakada2019-09-271-1/+1
|
* [EXPERIMENTAL] MakeMakefile::CXX for C++Nobuyoshi Nakada2019-09-181-0/+1
|
* fix CentOS 6 compile error卜部昌平2019-09-101-0/+1
| | | | See also https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos6/ruby-master/log/20190910T003005Z.fail.html.gz
* Try to fix compile error on win32Kazuhiro NISHIYAMA2019-09-061-0/+2
| | | | | | | | https://github.com/ruby/ruby/runs/213995386#step:7:810 ``` cxxanyargs.cpp C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt\corecrt_malloc.h(54): error C2485: '__restrict': unrecognized extended attribute ```
* drop-in type check for rb_define_method卜部昌平2019-08-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The rb_define_method function takes a pointer to ANYARGS-ed functions, which in fact varies 18 different prototypes. We still need to preserve ANYARGS for storages but why not check the consistencies if possible. Q&As: Q: Where did the magic number "18" came from in the description above? A: Count the case branch of vm_method.c:call_cfunc_invoker_func(). Note also that the 18 branches has lasted for at least 25 years. See also 200e0ee2fd3c1c006c528874a88f684447215524. Q: What is this __weakref__ thing? A: That is a kind of function overloading mechanism that GCC provides. In this case for instance rb_define_method0 is an alias of rb_define_method, with a strong type. Q: What is this __transparent_union__ thing? A: That is another kind of function overloading mechanism that GCC provides. In this case the attributed function pointer is either VALUE(*)(int,VALUE*,VALUE) or VALUE(*)(int,const VALUE*,VALUE). This is better than void* or ANYARGS because we can reject all other possibilities than the two. Q: What does this rb_define_method macro mean? A: It selects appropriate alias of the rb_define_method function, depending on the arity. Q: Why the prototype change of rb_f_notimplement? A: Function pointer to rb_f_notimplement is special cased in vm_method.c:rb_add_method_cfunc(). That should be handled by the __builtin_choose_expr chain inside of rb_define_method macro expansion. In order to do so, comparison like (func == rb_f_notimplement) is inappropriate for __builtin_choose_expr's expression (which must be a compile-time integer constant but the address of rb_f_notimplement is not fixed until the linker). So instead we are using __builtin_types_compatible_p, and in doing so we need to distinguish rb_f_notimplement from others, by type.
* Added license comment [Bug #12230] [ci skip]Nobuyoshi Nakada2019-08-271-0/+1
|
* * expand tabs. [ci skip]git2019-08-191-10/+10
|
* Set flag to allow unprivileged users to create symlinks (#2381)Nobuyoshi Nakada2019-08-191-2/+22
| | | | * [Win32] set flag to allow unprivileged users to create symlinks
* [DOC] "nmake check" is preferable to "nmake exam" now [ci skip]Nobuyoshi Nakada2019-08-041-4/+4
| | | | [Feature #14187]
* [DOC] updated about icons in win32/README.win32 [ci skip]Nobuyoshi Nakada2019-08-041-5/+9
| | | | [Bug #13348]
* [DOC] "nmake check" is preferable to "nmake exam" now [ci skip]Nobuyoshi Nakada2019-08-041-1/+1
| | | | [Feature #14187]
* [DOC] Mark up path names to show a backslash [ci skip]Nobuyoshi Nakada2019-08-041-2/+2
|
* Fix errno at seeking socket/pipe on WindowsNobuyoshi Nakada2019-07-251-0/+11
| | | | [Bug #12230]
* Improve build process and coroutine implementation selection.Samuel Williams2019-07-181-13/+13
|
* Remove IA64 support.Samuel Williams2019-06-194-15/+9
|
* Do not export InitVM functionsNobuyoshi Nakada2019-05-171-1/+1
|
* No longer svn & git-svn are usedNobuyoshi Nakada2019-05-101-6/+1
|
* Forgotten to removeNAKAMURA Usaku2019-04-301-1/+0
|
* Revert previous commit; it was meaninglessNAKAMURA Usaku2019-04-301-20/+0
|
* * expand tabs.git2019-04-301-16/+16
|
* Use CreateToolhelp32Snapshot instead of NtQueryInformationProcess to get ↵NAKAMURA Usaku2019-04-301-0/+21
| | | | | | ppid on Windows Try to get rid of a spec error.
* Makefiles need to be indented by tabsNobuyoshi Nakada2019-04-281-1/+1
|
* Now only supports Git repositoryNAKAMURA Usaku2019-04-221-8/+6
|
* Remove debug linesusa2019-04-211-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Show/unshow executing command as specified by `V`usa2019-04-211-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* FindFirstFile cannot glob share namesnobu2019-03-041-0/+14
| | | | | | | | * win32/file.c (replace_to_long_name): do not try to glob host names and share names by FindFirstFile which is useless for that purpose. [ruby-core:91656] [Bug #15633] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Parenthesize `for` to ignore errorsnobu2019-02-131-4/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Ignore errors on cleaningnobu2019-02-131-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67067 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* README.win32: [DOC] added modeline [ci skip]nobu2019-02-051-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Update requirementsusa2019-02-041-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* README.win32: mention GIT as well as SVNnobu2019-02-021-2/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* README.win32: update required commands and platform namesnobu2019-02-021-2/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* README.win32: use label-listnobu2019-02-021-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* README.win32: reformat as RDocnobu2019-02-011-40/+35
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/Makefile.sub: try to use __restrict on Visual Studio 2013k0kubun2019-01-041-1/+1
| | | | | | | | | as well. Follows up r66598. https://bugs.ruby-lang.org/issues/15347#note-7 is saying __restrict is supported on Visual Studio 2013. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add RUBY_API_VERSION to rbconfig.rb on mswin toonobu2018-12-281-1/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* RUBY_PROGRAM_VERSION for MJIT_PRECOMPILED_HEADERnobu2018-12-281-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Moved version numbersnobu2018-12-282-11/+6
| | | | | | | | | | | | * Define major and minor version numbers only in the public include/ruby/version.h header, as the API version numbers. * Define only teeny version number in the private version.h header. * RUBY_VERSION moved to version.c. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Check if restrict keyword is supportednobu2018-12-281-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/Makefile.sub: missing dependency of mjit_config.hnobu2018-12-101-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix compile error at r66280nobu2018-12-081-1/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* update-deps: support coroutine dependenciesnobu2018-12-031-8/+9
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix for coroutine/win32/Context.objnobu2018-11-281-2/+2
| | | | | | | | | | | * coroutine/win32/Context.asm: old ml version 9 needs CPU directive before `.model` directive. * win32/Makefile.sub: specify object directories to separate Win32 and Win64 targets. Win32 rule was overridden by Win64 rule and just ignored. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32/Makefile.sub: add flags for ASnobu2018-11-282-4/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io + socket: make pipes and sockets nonblocking by defaultnormal2018-11-221-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | All normal Ruby IO methods (IO#read, IO#gets, IO#write, ...) are all capable of appearing to be "blocking" when presented with a file description with the O_NONBLOCK flag set; so there is little risk of incompatibility within Ruby-using programs. The biggest compatibility risk is when spawning external programs. As a result, stdin, stdout, and stderr are now always made blocking before exec-family calls. This change will make an event-oriented MJIT usable if it is waiting on pipes on POSIX_like platforms. It is ALSO necessary to take advantage of (proposed lightweight concurrency (aka "auto-Fiber") or any similar proposal for network concurrency: https://bugs.ruby-lang.org/issues/13618 Named-pipe (FIFO) are NOT yet non-blocking by default since they are rarely-used and may introduce compatibility problems and extra syscall overhead for a common path. Please revert this commit if there are problems and if I am afk since I am afk a lot, lately. [ruby-core:89950] [Bug #14968] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.ac: add --disable-fiber-coroutine optionnobu2018-11-211-3/+3
| | | | | | | * configure.ac: add --disable-fiber-coroutine option, and disable it on x86-mingw32 for now. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Make coroutine object directory for each archnobu2018-11-201-2/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65887 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix typo and make directorynobu2018-11-201-2/+0
| | | | | | | | | * common.mk (coroutine/amd64/Context.$(OBJEXT)): fix a typo, $(OBJECT). * common.mk (coroutine/amd64): recipe to make object directory. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Support Visual C++ (mswin)samuel2018-11-201-0/+23
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e