Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use CMake for building #31

Closed
KOLANICH opened this issue Mar 11, 2023 · 2 comments
Closed

Use CMake for building #31

KOLANICH opened this issue Mar 11, 2023 · 2 comments
Labels

Comments

@KOLANICH
Copy link

KOLANICH commented Mar 11, 2023

Describe the feature
Currently in order to build this one needs Visual Studio. Visual Studio is a non-free toolchain with telemetry. It'd be preferred to build it using Clang + MinGW-w64 stdlib.

In ordert o have cross-toolchain building it is preferred to set building with CMake. I have a set of toolchain files that can be helpful for cross-building from Debian machines.

@hfiref0x
Copy link
Owner

hfiref0x commented Mar 11, 2023

Hello,

you can build it with free version of Visual Studio, Community Edition iirc (non-free problem solved) under VM environment isolated from internet (telemetry solved). This is Windows internals tool full of Microsoft VC specific usage, nonstandard RTL/headers usage, that is painfully to port on anything else because... it never was intented to be build by anything else except MSVC. However you are free to fork and do whatever you want, if you succeed with your proposal and result won't break anything in current state of things then you also free to do a PR.

@KOLANICH
Copy link
Author

KOLANICH commented Mar 11, 2023

non-free problem solved

free as in freedom, not as in free beer. I dislike Microsoft attitude to users of their software. Free software authors usually behave in a more respecting manner than the ones who are sure that their monopoly leave people no other choice but to tolerate them.

under VM environment isolated from internet (telemetry solved).

  1. doesn't it need Internet to be installed? AFAIK there is no offline ISOs for pretty a lot of time.
  2. MS toolchains are too heavyweight(*) to install them into VMs. Also they require new Windows OSes, which are also too heavy(*) for VMs (of Windows OSes I usually use only Win XP and ReactOS within VMs). Though just pulling out the cable should do the job, if those toolchains work in Wine.

(*) for the PC I work on

This is Windows internals tool full of Microsoft VC specific usage, nonstandard RTL/headers usage, that is painfully to port on anything else because... it never was intented to be build by anything else except MSVC.

Yeah, non-standard headers are pain. Some time ago (~5 years) I tried to build a driver (https://github.com/basil00/Divert) using only free SDKs and have failed (though some drivers (the ones used in ReactOS) are built using them, the SDKs are just incomplete and driven mainly by the needs of ReactOS). Then I tried to combine WDK to to free SDKs and DDKs without success.

But I also has another experience. But it is not driver-related. When I was trying to build a TTS module for Windows using the official Speech SDK (designed to be used with Visual Studio) + clang + MinGW, it turned out a few minor automatically applicable patches (in the form of a CMake script rewriting sources with regexps) were enough to make that work.

However you are free to fork and do whatever you want, if you succeed with your proposal and result won't break anything in current state of things then you also free to do a PR.

Thanks for the info :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants