Hello All,
We are trying to build Wine Source on Linux with native wchar_t size 4 bytes (instead of 2 bytes), is there any way it can be done? I started with doing following changes:
diff --git a/tools/winapi/winapi_test b/tools/winapi/winapi_test
index b9628e8..91daac3 100644
--- a/tools/winapi/winapi_test
+++ b/tools/winapi/winapi_test
@@ -206,7 +206,11 @@ sub _find_align_kind_size($) {
$align = 2;
$kind = "signed";
$size = 2;
- } elsif (/^(?:char16_t|wchar_t|USHORT|WCHAR|WORD)$/) {
+ } elsif (/^(?:wchar_t|WCHAR)$/) {
+ $align = 4;
+ $kind = "unsigned";
+ $size = 4;
+ } elsif (/^(?:char16_t|USHORT|WORD|WCHAR_nt)$/) {
$align = 2;
$kind = "unsigned";
$size = 2;
Also started changing some of headers e.g. winnt.h - removed "typedef unsigned short WCHAR;" Any pointers/suggestion are welcome. Thanking you.
regards,
Mahin
Are the Windows Kits SDK WinRT .idl files acceptable to read-rework
inside the wine source? They are akin to header files, no?
I asked on the irc but didn't get any reply.
There was a follow up comment asking about ReactOS headers as well:
> on the topic of headers, are we allowed to look at ReactOS NDK headerS
> s/headerS/headers/
> they contain internal structure definitions only, nothing else
Thank you,
James
Binary packages for various distributions will be available from:
https://www.winehq.org/download
Summary since last release
* Rebased to current wine 7.22 (474 patches are applied to wine vanilla)
The number is quiet lower compared to the previous version due to the
disabling of the
nvidia dll patchesets.
Upstreamed (Either directly from staging or fixed with a similar patch).
* ntdll: Add support for FreeBSD style extended attributes.
Added:
* None
Updated:
* ntdll-DOS_Attributes
Where can you help
* Run Steam/Battle.net/GOG/UPlay/Epic
* Test your favorite game.
* Test your favorite applications.
* Improve staging patches and get them accepted upstream.
* Suggest patches to be included in staging.
As always, if you find a bug, please report it via
https://bugs.winehq.org
Best Regards
Alistair.
Hello,
you committed a fix for Bug 52263, but I think that only masks the issue, not
really fixing it.
Your fix is here: https://gitlab.winehq.org/wine/wine/-/commit/
7e5eeecdfb5c90042945d9e84a3a9f8b2ed0036a
I described what happens in https://bugs.winehq.org/show_bug.cgi?id=52314#c4
I think we can only time out in this wait, so this doesn't seem right. Could
you please take a second look?
Regards,
Fabian Maurer
I'd like suggesting to merge the 17 patches from
wine-staging/patches/nvcuda-CUDA_Support patches into upstream wine for
the following reasons:
Currently Cuda applications for Windows do not run in native Wine. Such
an application is Warpem (available for Windows only), and CUDA-Z for
Windows.
I assume there are other applications as well. This could be fixed by
pulling in the 17 patches wine-staging/patches/nvcuda-CUDA_Support.
Possible disadvantages:
- build dependency to cuda - some distros might not want to have a build
dependency on cuda.h
That's the choice of the package manager, but this should be endorsed
and recommended for the above reason.
- run-time dependency on cuda
wine does not have a runtime dependency on cuda (probably due to
dynamic linking)
e.g. cuda-z can be started under wine, and stops gracefully with a
message the cuda is not available.
- number of APIs to maintain
is currently done anyway (by the wine-staging team)
From a the perspective of some application, Cuda is part of the
operating system should be provided by the platform (Wine in our case).
Overall, it seems merging the nvcuda-CUDA_Support into upstream Wine are
the right thing to do.
Best regards,
Alois
Folks,
With the end of the year approaching, it will soon be time to start the
code freeze towards Wine 8.0. My plan is to have another two development
releases, and start code freeze with Wine 7.23, on December 9.
So if there are things that you want in 8.0, you have another 4 weeks to
get them upstreamed...
--
Alexandre Julliard
julliard(a)winehq.org
Binary packages for various distributions will be available from:
https://www.winehq.org/download
Summary since last release
* Rebased to current wine 7.21 (495 patches are applied to wine vanilla)
Upstreamed (Either directly from staging or fixed with a similar patch).
* mshtml: Add IHTMLLocation::hash property's getter implementation.
* uxtheme: Protect CloseThemeData() from invalid input.
* user32/tests: Add some tests to see when MessageBox gains
WS_EX_TOPMOST style.
* user32: MessageBox should be topmost when MB_SYSTEMMODAL style is set.
Added:
* None
Updated:
* eventfd_synchronization
* ntdll-Syscall_Emulation
* ntdll-ForceBottomUpAlloc
Where can you help
* Run Steam/Battle.net/GOG/UPlay/Epic
* Test your favorite game.
* Test your favorite applications.
* Improve staging patches and get them accepted upstream.
* Suggest patches to be included in staging.
As always, if you find a bug, please report it via
https://bugs.winehq.org
Best Regards
Alistair.
Hi all,
We'd like to release vkd3d 1.6 in about 4 weeks. As we're nearing that
date, the vkd3d tree is going to become progressively frozen, starting
today. Now is the time to test your applications for any regressions,
review any API changes since vkd3d 1.5, review and improve the API
documentation, and so on.
The next release, vkd3d 1.7, is tentatively planned for late March next
year.
Regards,
Henri
Hello,
I am not sure if this is the appropriate channel but here we go.
I am trying to port a windows c++ application using winelib and I found an issue while using some c++ STL containers.
Here is a minimal example:
# winelib.dll.so
```c++
#include <windows.h>
#include <unordered_map>
#include <string>
extern "C"
int f1(long z)
{
std::unordered_map<int, std::string> y;
return 10;
}
spec file
```c++
2 stdcall f1(long)
```
# Building winelib.dll.so
winemaker --console --dll .
winebuild --implib -E winedll.spec -o libwinedll.a
winebuild --fake-module --dll -E winedll.spec -o winedll.dll
make
cp libwinedll.a winedll.dll.so /usr/local/lib/wine/x86_64-unix
cp winedll.dll /home/$USER/.wine/drive_c/windows/system32
win64 app
```c++
#include <iostream>
extern "C"{
int f1(long z);
}
int main(){
int ret = f1(2);
std::cout << ret << std::endl;
}
```
# Building win64 app
winemaker . -iwinedll
make
# Running
wine64 win64app.exe.so
# Output
0110:err:virtual:virtual_setup_exception stack overflow 2128 bytes in thread 0110 addr 0x17008c804 stack 0x207b0 (0x20000-0x21000-0x120000)
If I remove the "std::unordered_map<int, std::string> y" from the custom lib it runs normally.
I suspect that wine uses too much of the stack to construct the object, but it's just a wild guess.
Does anybody know what the issue could be?
Is it possible to increase the stack size?
Thanks.