Skip to content

Port: restore Windows XP minimal support#958

Merged
bradh352 merged 6 commits into
c-ares:mainfrom
bradh352:winxp
Jan 9, 2025
Merged

Port: restore Windows XP minimal support#958
bradh352 merged 6 commits into
c-ares:mainfrom
bradh352:winxp

Conversation

@bradh352

@bradh352 bradh352 commented Jan 8, 2025

Copy link
Copy Markdown
Member

Windows XP support was removed in 2021, but we've had a recent request for basic Windows XP support. It looks like the needed changes are very minimal these days, the only real requirement is to build without threading support, everything else can be conditionally bypassed.

This changeset mostly just disables building the event subsystem if threading is disabled then makes a couple minor build system changes to allow overriding of the _WIN32_WINNT macro.

Fixes #956

@bradh352 bradh352 marked this pull request as draft January 8, 2025 16:59
@bradh352

bradh352 commented Jan 8, 2025

Copy link
Copy Markdown
Member Author

needed to create this as a PR to spawn off AppVeyor tests that actually test building of Windows XP support

…or issues (c-ares#957)

Containerized tests now need to be run with sudo to gain access to
chroot(). Also, `gcov` in ubuntu 24.04 is broken with googletest so
revert back to 22.04 for coverage.

Finally, codespell is updated in 24.04 to detect more issues and there
were some typos that needed to be fixed.

Signed-off-by: Brad House (@bradh352)
@bradh352 bradh352 marked this pull request as ready for review January 9, 2025 00:48
@bradh352 bradh352 changed the title Try to restore building for Windows XP Port: restore Windows XP minimal support Jan 9, 2025
@bradh352 bradh352 merged commit 5d7abd1 into c-ares:main Jan 9, 2025
@bradh352 bradh352 deleted the winxp branch January 9, 2025 00:51
bradh352 added a commit that referenced this pull request Jan 9, 2025
Windows XP support was removed in 2021, but we've had a recent request
for basic Windows XP support. It looks like the needed changes are very
minimal these days, the only real requirement is to build without
threading support, everything else can be conditionally bypassed.

This changeset mostly just disables building the event subsystem if
threading is disabled then makes a couple minor build system changes to
allow overriding of the `_WIN32_WINNT` macro.

Fixes #956

---------

Signed-off-by: Brad House (@bradh352)
bradh352 added a commit that referenced this pull request Jan 14, 2025
continuation of PR #958

This brings forward Threading and Event Subsystem support by doing a few
additional ifdefs and falling back for functions that were not part of
Windows XP.

I don't know how likely this is to work on a real XP system, but at
least targeting XP while compiling and running through test cases on the
CI/CD system works as expected (CI/CD runs a recent Windows Server
version) .

Signed-off-by: Brad House (@bradh352)
michael-dev pushed a commit to HamelinPorts/android_external_c-ares that referenced this pull request Apr 25, 2026
Windows XP support was removed in 2021, but we've had a recent request
for basic Windows XP support. It looks like the needed changes are very
minimal these days, the only real requirement is to build without
threading support, everything else can be conditionally bypassed.

This changeset mostly just disables building the event subsystem if
threading is disabled then makes a couple minor build system changes to
allow overriding of the `_WIN32_WINNT` macro.

Fixes c-ares#956

---------

Signed-off-by: Brad House (@bradh352)
michael-dev pushed a commit to HamelinPorts/android_external_c-ares that referenced this pull request Apr 25, 2026
…res#960)

continuation of PR c-ares#958

This brings forward Threading and Event Subsystem support by doing a few
additional ifdefs and falling back for functions that were not part of
Windows XP.

I don't know how likely this is to work on a real XP system, but at
least targeting XP while compiling and running through test cases on the
CI/CD system works as expected (CI/CD runs a recent Windows Server
version) .

Signed-off-by: Brad House (@bradh352)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Disable NotifyIpInterfaceChange symbol check in cmake (for windows XP target)

1 participant