summaryrefslogtreecommitdiff
path: root/win32
AgeCommit message (Collapse)Author
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 <[email protected]> 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
2024-11-18win32/ifchange.bat: Remove code for old `command.com` [ci skip]Nobuyoshi Nakada
2024-11-18win32/ifchange.bat: Discard useless messageNobuyoshi Nakada
When the destination does not exist, `del` needs to do nothing.
2024-11-18win32/setup.mak: Remove unnecessary quotes and adjust quoting styleNobuyoshi Nakada
2024-11-17Win32: Expose wchar main routine onlyNobuyoshi Nakada
Warned if both of `main` and `wmain` are exposed: ``` LINK : warning LNK4067: ambiguous entry point; selected 'mainCRTStartup' ``` Notes: Merged: https://github.com/ruby/ruby/pull/12108
2024-11-17Win32: Remove unreferenced COMDAT from object filesNobuyoshi Nakada
Windows 11 SDK Version 10.0.26100.0 introduced a new internal inline function in ucrt/corecrt_math.h. Even it appears in object files and will be included in the DEF file, it will be removed from the DLL and result in a linker error. Notes: Merged: https://github.com/ruby/ruby/pull/12107
2024-11-17Workaround for VC 19.42.34433 againNobuyoshi Nakada
Prefix underscore is already removed here.
2024-11-17Workaround for VC 19.42.34433Nobuyoshi Nakada
Suddenly it began to add `_ucrt_int_to_float` by the recent version.
2024-11-16mkexports.rb: Revert removed flip-flopNobuyoshi Nakada
This reverts commit 63ae1e3cb5d302e5229143c00152328166d26780.
2024-10-28Win32: Refactor configurationsNobuyoshi Nakada
Pass configure options to the generated Makefile as-is.