[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [hackers] Which Visual Studio versions are in active use?

On 3/14/2023 2:27 AM, Martin Burnicki wrote:
Dave Hart wrote:
Currently the NTP distribution has Visual Studio solution and project files for:

Visual Studio 2005 (earliest supported)
Visual Studio 2008
Visual Studio 2013
Visual Studio 2015

Once upon a time some of the NTP maintainers decided to use VS2008, because there was an "Express" version available (IIRC). I'm still using that version today to build the installation package we provide at Meinberg.

I don't like VS very much and try to avoid using it whenever possible. The main reason is because it is very hard to keep track of the properties, especially if you change some setting via the GUI, etc.

It would be great when we could simply use something like MSYS2/Mingw to build the Windows version of the binaries.

I don't do any development on Windows, and the good news is several/many other NTP developers who do and are good at Windows development.

My original goal was that maybe 'configure' could be run in a Cygwin environment, and that would give us the build tools I'm used to using. And folks who actually do Windows builds said that Cygwin is not a generally useful build environment for Windows executables.

But this is just my understanding, and others can say better.

I've prototyped the addition of support for Visual Studio 2022 but
some things have been rearranged in the next ntp-stable release that
might make it easier to redo the work rather than merge it.
Incidentally, the Visual Studio 2015 tools and SDK can be used with
VS2022 by adding the right optional components.  Those are the last
tools that support targeting Windows XP, VS2019 and later only support
building for Windows Vista and later.

Sorry I have to say that, but that's the typical Microsoft Bullshit.

Currently there's really lot of confusion when you do kernel driver development for Windows, with different signing requirements, some of which Microsoft refuses to keep supporting, options for inf files that are not supported anymore, the way installation directories have to be specified in inf files for different Windows builds, etc.

What I'm wondering is which of those versions are actually being used
today.  If you build the NTP distribution from source, or would like
that retain the capability even if you haven't done it lately, please
speak up about which Visual Studio version you're using, and whether
you'd have a problem installing a newer version.  Visual Studio 2022
Community Edition is cost-free and I believe it can be installed
side-by-side with older versions.

Basically I wouldn't have a problem with porting changes from some newer version like VS2022 back to an older version like VS2008.

However, the big problem that I see in the NTP project is a missing clean way to access pre-release versions of the NTP code base, which seem to be distributed across the home directories of several developers.

It would be good if a repo with 4.2.8p15 plus the collected changes would be available, so that everybody could easily keep track of the changes, and make commits based on the latest pre-release version, like it's usual today e.g. with git repos.

We're working on that.

And it will be "more" than the STAGED changes, because security bugs are embargoed until the public release. But it will be "more" than what's there now.

For example, I've done some cleanup in the source code of 4.2.8p15, e.g. added an .editorconfig file and removed trailing spaces from many files. It doesn't make much sense to commit these changes, though, if some other folks have changed some files so you had to do a manual merge just to remove trailing spaces.

Are your patches in a repo that I can merge?

If we had a common (accessible) code base with the collected commits from different people, I could have removed the trailing spaces from the latest/current pre-release code, which would have been mu