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

build: require Windows XP or newer #12225

Closed
wants to merge 3 commits into from
Closed

Conversation

vszakats
Copy link
Member

@vszakats vszakats commented Oct 28, 2023

After this patch we assume availability of getaddrinfo and
freeaddrinfo, first introduced in Windows XP. Meaning curl
now requires building for Windows XP as a minimum.

TODO: assume these also in autotools.

Ref: #12221 (comment)
Closes #12225


https://github.com/curl/curl/pull/12225/files?w=1

After this patch we assume availability of `getaddrinfo` and
`freeaddrinfo`, first introduced in Windows XP.

TODO: assume these also in autotools.

Ref: curl#12221 (comment)
Closes #xxxxx
@vszakats vszakats added build Windows Windows-specific labels Oct 28, 2023
@jay
Copy link
Member

jay commented Oct 29, 2023

I think this is reasonable but here is some context. There is some version of Windows CE that was still supported by MS until earlier this month. curl survey says for the lesser used versions of Windows (page 11) that they are hardly used:

Version 2023
Windows XP 4.6%
Windows Server 2019 2.9%
Windows Server 2008 2.6%
Windows Vista 2.3%
Windows 2000 1.4%
Windows Server 2003 1.1%
Windows Server 2022 0.9%
Windows CE/Embedded 0.6%
Windows 98 0.6%
Windows 95 0.3%

The sample size at 600+ is not definitive but is useful. Note the respondents may have selected multiple versions.

I suspect anyone using very old versions of Windows is probably using very old versions of curl, just because we don't get reports for anything older than XP. I wonder how many of those users are using a curl from 5 years ago because everything "just works".

For next year's survey I think it would be good to ask which version of curl the user is using. curl 8, curl 7, both, the latest, multiple versions, etc. maybe for those who build how often they build as well (I may have overlooked this if it's there already). There's a similar suggestion in the survey "How often do you update cURL and how do you receive updates?". @bagder

@bagder
Copy link
Member

bagder commented Oct 29, 2023

@jay excellent suggestions. I have recorded these notes now, let's just make sure they are remembered when the user survey time comes again.

Copy link
Member

@bagder bagder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm fine with bumping the Windows requirement to XP.

@vszakats
Copy link
Member Author

vszakats commented Oct 29, 2023

Not directly related, but, may I ask if curl intends to support Windows CE? [ esp. in the light that it has been deprecated by MS as @jay mentioned. Code has references to it, but it's rarely if ever mentioned. ]

@vszakats
Copy link
Member Author

Merged.

I'd be interesed in the Window CE support status regardless!

Also this leaves a pending TODO for autotools, where we might also avoid detecting these features for Windows and assume them.

@vszakats vszakats deleted the req-win-xp branch October 30, 2023 10:49
@jay
Copy link
Member

jay commented Nov 1, 2023

I'd be interesed in the Window CE support status regardless!

AFAICT we don't have a standard build process for it. My guess is it's embedded device manufacturers that use it and don't contribute back. Maybe they build it using Visual Studio 2008 and winbuild? It appears possible to build OpenSSL and wolfSSL (at least in 2019) for Windows CE as well.

The problem is we don't know how it's being done, if it's even still being done or what to support.

@vszakats
Copy link
Member Author

vszakats commented Nov 1, 2023

Thanks @jay!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Windows Windows-specific
Development

Successfully merging this pull request may close these issues.

None yet

3 participants