summaryrefslogtreecommitdiff
path: root/win32
AgeCommit message (Collapse)Author
34 hoursRevert the leftover of 90cb2bb871ff5d6d4d0dfbed2ee352c7ff818a87Nobuyoshi Nakada
3 daysGererate prism source files dependencies from template.rbNobuyoshi Nakada
Update included file list automatically.
4 daysGererate prism source files dependencies from template.rbNobuyoshi Nakada
9 daysNMake needs caret to escape a hash signNobuyoshi Nakada
10 daysWin: Use `@` instead of `echo off` in `vssetup.cmd`Nobuyoshi Nakada
`echo off` affects the batch files called from this file as well.
2025-08-03Revert to shell execution when invoking nm toolLars Kanis
This reverts a change of commit b3598cf2a355497693bb66097edc156af3152e9b . On Windows on ARM64 with LLVM the "NM" tool is called with a parameter like so: ``` RbConfig::CONFIG["NM"] # => "llvm-nm --no-llvm-bc" ``` Therefore the command must be called with a shell string.
2025-08-01Win: Strip CRs from `cpp` and `nm` outputNobuyoshi Nakada
The combination of mingw tools and cygin/msys2 ruby leaves CRs.
2025-07-25Split autogenerated dependency to depend file from common.mkHiroshi SHIBATA
2025-07-24Win32: Suppress an error message when baseruby is not foundNobuyoshi Nakada
2025-06-01Win: Use `VsDevCmd.bat` instead of old `vcvarsall.bat`Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/13490
2025-06-01Win: Fix `winget` command to `install`Nobuyoshi Nakada
2025-05-30Win: Add scripts to install and setupNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/13473
2025-05-27[Bug #21255] Win32: Do not export `__declspec(selectany)` symbolsNobuyoshi Nakada
``` x64-vcruntime140-ruby350.def : error LNK2001: unresolved external symbol Avx2WmemEnabledWeakValue ```
2025-05-27Win: Suppress false warnings from Visual C 17.14.1Nobuyoshi Nakada
https://developercommunity.visualstudio.com/t/warning-C5287:-operands-are-different-e/10877942? It is not able to silence "operands are different enum types" warnings, even using an explicit cast, as the message says.
2025-05-22Fix for old mingw without `clock_gettime` and `clock_getres`Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/13405
2025-05-12digest.so needs ruby/digest.h which is installed by build-extNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/13302
2025-05-12Revert "Try removing building C API specs in CRuby makefiles entirely"Nobuyoshi Nakada
This reverts commit 2a9236366d6016738a756caecab03263565a20c7. spec/ruby/optional/capi/spec_helper.rb doesn't work well for mingw. Notes: Merged: https://github.com/ruby/ruby/pull/13302
2025-05-12Fix redefinition of `clock_gettime` and `clock_getres`Nobuyoshi Nakada
winpthreads-git 12.0.0.r720 provides `clock_gettime` and `clock_getres` as inline functions. Notes: Merged: https://github.com/ruby/ruby/pull/13302
2025-05-11Revert "Fix redefinition of `clock_gettime` and `clock_getres`"Hiroshi SHIBATA
This reverts commit 585598623da949c92d0f2ea94029a863142ec908. This broke Windows CIs ``` linking miniruby.exe Creating library miniruby.lib and object miniruby.exp process.obj : error LNK2019: unresolved external symbol clock_gettime referenced in function rb_clock_gettime random.obj : error LNK2001: unresolved external symbol clock_gettime thread.obj : error LNK2001: unresolved external symbol clock_gettime time.obj : error LNK2001: unresolved external symbol clock_gettime process.obj : error LNK2019: unresolved external symbol clock_getres referenced in function rb_clock_getres miniruby.exe : fatal error LNK1120: 2 unresolved externals NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.EXE"' : return code '0x2' ``` Notes: Merged: https://github.com/ruby/ruby/pull/13300
2025-05-10Fix redefinition of `clock_gettime` and `clock_getres`Nobuyoshi Nakada
winpthreads-git 12.0.0.r720 provides `clock_gettime` and `clock_getres` as inline functions.
2025-05-09Try removing building C API specs in CRuby makefiles entirelyBenoit Daloze
* Since it does not work when using some configure options such as: .../configure --with-ext=-test-/cxxanyargs,+ --enable-shared as the CI does. * It also duplicates the logic of spec/ruby/optional/capi/spec_helper.rb incorrectly. ruby/spec maintainers have no experience and no interest in dealing with these complicated CRuby build system issues. We asked help on the CRuby Slack and nobody helped so far. Notes: Merged: https://github.com/ruby/ruby/pull/13265
2025-03-19fix rb_w32_strerror when errno < 0YO4
change SystemCallError.new(-1) message on Windows (Bug #21083) https://bugs.ruby-lang.org/issues/21083 Notes: Merged: https://github.com/ruby/ruby/pull/12622
2025-03-12Win32: Remove intermediate files for rubyspec-capiextNobuyoshi Nakada
2025-03-12Win32: Make object files in the same place as the DLLsNobuyoshi Nakada
2025-03-12[Bug #21177] Win32: Allow longer path nameNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12901
2025-02-17Pass XINCFLAGS for gmp build with Windows platformHiroshi SHIBATA
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/12763
2025-02-13[Feature #21116] Extract RJIT as a third-party gemNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12740
2025-02-13Remove a stale function for MJITNobuyoshi Nakada
2025-02-13Remove stale comment for MJITNobuyoshi Nakada
2025-01-14Use LRAMA instead of YACCydah
Notes: Merged: https://github.com/ruby/ruby/pull/12556
2024-12-31Win32: Fix rm.batNobuyoshi Nakada
- `if exist` and `del` ignore directories matching the wildcard, remove both separately. - `rd /s` ignores wildcards, while `del` removes ordinary files by the wildcard, iterate over matching directories by `for /D`.
2024-12-27Win32: Update clean commands for bundled gemsNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12481
2024-12-27Win32: Rewrite rm.batNobuyoshi Nakada
`rd` cannot remove ordinary files, use `del` or `rd` for each entry. Notes: Merged: https://github.com/ruby/ruby/pull/12481
2024-12-27Win32: Remove win32 directory if emptyNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12481
2024-12-24Win32: Defer change of timezone name encoding after 3.4Nobuyoshi Nakada
This change will be merged into 3.5 along with other encoding, command line, environment variables, etc. Revert following commits: - bd831bcca534955533d9135d8c2f22d7ae5b9aa8 [Bug #20929] Win32: Use `wcsftime` - 1c15f641cc2bb88fa88123a11036ed58fbf9aa6d [Bug #20929] Win32: Encode timezone name in UTF-8 - 78762b52185aa80ee55c0d49b495aceed863dce2 [Bug #20929] Fix `assert_zone_encoding` Notes: Merged: https://github.com/ruby/ruby/pull/12448
2024-12-23Implements [Feature #3456]: Support pkgconf on windowsJulien Marrec
1. Store the `PKG_CONFIG` variable in Makefile.sub (or try to get it from the ENV var PKG_CONFIG in mkmf.rb) 2. Try to use --msvc-syntax, with a fallback to replacing -Lxxx with -libpath:xxx. --msvc-syntax has been in pkgconf since 1.4.0 (released 7 years ago). pkg-config (freedesktop), does not support it, hence the fallback. 3. The `try_ldflags` passes these `ldflags` as the `opt` parameter to the `link_command`, not as `ldflags`. Unix systems are forgiving in that regard, MSVC is not: as a result as passing them as `opt`, they (specifically the `/libpath:xxx` ones) end up passed before the `-link` command to `cl.exe` and it throws because it ignores it and therefore can't find the lib. ``` cl : Command line warning D9002 : ignoring unknown option '-libpath:C:/Users/julien/.conan2/p/libff3726d89a6255c/p/lib' ``` Notes: Merged: https://github.com/ruby/ruby/pull/9815
2024-12-22modular-gc-precheck for mswinNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12428
2024-12-22Allow variables in modular_gc_dirNobuyoshi Nakada
Such as `$(ruby_version)`, `$(arch)` and so on. Notes: Merged: https://github.com/ruby/ruby/pull/12428
2024-12-17Win32: Add coroutine for mswin on arm64Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12367
2024-12-17Win32: Allow arm64 platformNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12367
2024-12-10Split system dependent commands to clean modular-gcNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12300
2024-12-06[Bug #20929] Win32: Encode timezone name in UTF-8Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12269
2024-12-02TypofixHiroshi SHIBATA
2024-12-01Win32: Accept slashes in --with-opt-dir argumentNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12225
2024-12-01Win32: Use the symbolic name for the default NTVERNobuyoshi Nakada
And embed the given `_WIN32_WINNT` in config.h as well, for extension libraries. Notes: Merged: https://github.com/ruby/ruby/pull/12225
2024-12-01Win32: Make waring 4013 errorNobuyoshi Nakada
``` 'function' undefined; assuming extern returning int The compiler encountered a call to an undefined function. ``` Notes: Merged: https://github.com/ruby/ruby/pull/12225
2024-11-30Win32: Accept a symbolic name for `--with-ntver` optionNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12224
2024-11-30[win32] fix arm64 instruction decodingjeremyd2019
Two minor fixes to arm64 instruction decoding when looking for __pioinfo: 1. add_mask was shifted by one bit, it was intended to be 0x7f800000. However, since the mask was already excluding matching the 'sh' bit, and since the purpose of the add following the adrp is to add in the lower 12 bits, I opted to set the mask to 0x7fc00000 and simply remove the handling for the 12 bit shift option which is now required to be disabled in order to match. 2. adrp's immediate was supposed to be sign extended. So far, I have not seen cases where the global variable ends up before the code in memory, but it's a possibility, so handle the sign extension. Notes: Merged: https://github.com/ruby/ruby/pull/12222
2024-11-24Fix `--empty` option of `ifchange`Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/12159
2024-11-22[Feature #20563] Update required Windows versionNobuyoshi Nakada
Update the default `NTVER`, so that the declarations of APIs introduced since Windows 8 will be enabled. https://learn.microsoft.com/cpp/porting/modifying-winver-and-win32-winnt