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

When using a Windows XP compatible toolset, socketmodule.c fails to build #76463

Closed
MaximeBelanger mannequin opened this issue Dec 12, 2017 · 8 comments
Closed

When using a Windows XP compatible toolset, socketmodule.c fails to build #76463

MaximeBelanger mannequin opened this issue Dec 12, 2017 · 8 comments
Assignees
Labels
build The build process and cross-build OS-windows

Comments

@MaximeBelanger
Copy link
Mannequin

MaximeBelanger mannequin commented Dec 12, 2017

BPO 32282
Nosy @pfmoore, @larryhastings, @tiran, @tjguk, @berkerpeksag, @zware, @zooba
PRs
  • bpo-32282: Remove incorrect gate for VersionHelpers.h in socketmodule.c on Windows #4805
  • [3.6] bpo-32282: Remove unnecessary check for VersionHelpers.h in socketmodule.c on Windows #5120
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = 'https://github.com/zooba'
    closed_at = <Date 2018-09-21.20:46:11.428>
    created_at = <Date 2017-12-12.00:00:54.495>
    labels = ['build', 'OS-windows']
    title = 'When using a Windows XP compatible toolset, `socketmodule.c` fails to build'
    updated_at = <Date 2018-09-21.20:46:11.427>
    user = 'https://bugs.python.org/MaximeBelanger'

    bugs.python.org fields:

    activity = <Date 2018-09-21.20:46:11.427>
    actor = 'steve.dower'
    assignee = 'steve.dower'
    closed = True
    closed_date = <Date 2018-09-21.20:46:11.428>
    closer = 'steve.dower'
    components = ['Windows']
    creation = <Date 2017-12-12.00:00:54.495>
    creator = 'Maxime Belanger'
    dependencies = []
    files = []
    hgrepos = []
    issue_num = 32282
    keywords = ['patch']
    message_count = 8.0
    messages = ['308081', '308108', '308140', '308155', '309595', '317039', '317041', '326037']
    nosy_count = 8.0
    nosy_names = ['paul.moore', 'larry', 'christian.heimes', 'tim.golden', 'berker.peksag', 'zach.ware', 'steve.dower', 'Maxime Belanger']
    pr_nums = ['4805', '5120']
    priority = 'normal'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'compile error'
    url = 'https://bugs.python.org/issue32282'
    versions = ['Python 3.5']

    @MaximeBelanger
    Copy link
    Mannequin Author

    MaximeBelanger mannequin commented Dec 12, 2017

    If Python is built using the Windows XP "variant" of the toolset (e.g. v140_xp), build errors can occur in socketmodule.c. This is due to the include of VersionHelpers.h being gated on _MSC_VER, which "lies" if v140_xp is in use.

    We'll be contributing our patch to this issue here.

    @MaximeBelanger MaximeBelanger mannequin added 3.7 (EOL) end of life OS-windows labels Dec 12, 2017
    @tiran
    Copy link
    Member

    tiran commented Dec 12, 2017

    • 3.5 receives only security updates.
    • XP is no longer supported.

    @zooba
    Copy link
    Member

    zooba commented Dec 12, 2017

    If you can't compile, security fixes aren't worth anything. And while we don't support XP, the v140_xp toolset is in more of a grey area. There are real ways you could be forced into using it besides targeting XP.

    Max - I'd rather just remove the ifdef checks completely. Fairly sure I added them in the migration from VC10, but they are simply incorrect (the header is from the WinSDK which is not the same as _MSC_VER) and will always be there for the versions of the SDK we allow, even back to 3.5.

    @zooba zooba added the build The build process and cross-build label Dec 12, 2017
    @MaximeBelanger
    Copy link
    Mannequin Author

    MaximeBelanger mannequin commented Dec 12, 2017

    Works for me. We no longer rely on the _xp toolset so no objections.

    @zooba
    Copy link
    Member

    zooba commented Jan 7, 2018

    New changeset af11a15 by Steve Dower (Max Bélanger) in branch 'master':
    bpo-32282: Remove unnecessary check for VersionHelpers.h in socketmodule.c on Windows
    af11a15

    @berkerpeksag
    Copy link
    Member

    New changeset 09eb6fe by Berker Peksag (Miss Islington (bot)) in branch '3.6':
    bpo-32282: Remove unnecessary check for VersionHelpers.h in socketmodule.c on Windows (GH-5120)
    09eb6fe

    @berkerpeksag
    Copy link
    Member

    It looks like we need to backport this manually for 3.5 (if Larry approves)

    @berkerpeksag berkerpeksag removed the 3.7 (EOL) end of life label May 18, 2018
    @zooba
    Copy link
    Member

    zooba commented Sep 21, 2018

    I'm going to just close this without fixing 3.5. If there's demand, we can consider it, but at this stage it's so easy for people to migrate to 3.6 or later that I'm sure that's already been done.

    @zooba zooba closed this as completed Sep 21, 2018
    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    build The build process and cross-build OS-windows
    Projects
    None yet
    Development

    No branches or pull requests

    3 participants