diff --git a/.github/workflows/build_internal.yml b/.github/workflows/build_internal.yml index c49823b..bf5e2d8 100644 --- a/.github/workflows/build_internal.yml +++ b/.github/workflows/build_internal.yml @@ -85,10 +85,15 @@ jobs: with: python-version: 3.12.10 architecture: x64 - - - uses: seanmiddleditch/gha-setup-vsdevenv@master + - if: matrix.qthost == 'windows' + uses: seanmiddleditch/gha-setup-vsdevenv@master with: arch: ${{ matrix.arch }} + - if: matrix.binding == 'PySide6' && matrix.qtarch == 'win64_msvc2019_64' + uses: TheMrMilchmann/setup-msvc-dev@v4 + with: + arch: x64 + toolset: 14.29 - run: python scripts/dobuild.py ${{matrix.pythonversion}} ${{ matrix.qtarch }} ${{ matrix.version }} ${{ matrix.arch }} ${{matrix.binding}} - uses: actions/attest-build-provenance@v4 with: @@ -96,4 +101,4 @@ jobs: - uses: actions/upload-artifact@v7 with: name: ${{matrix.qthost}}_${{ matrix.binding }}_${{ matrix.arch }} - path: scripts/objects \ No newline at end of file + path: scripts/objects diff --git a/scripts/pyside6/CMakeLists.txt b/scripts/pyside6/CMakeLists.txt index 86770e1..e283d2d 100644 --- a/scripts/pyside6/CMakeLists.txt +++ b/scripts/pyside6/CMakeLists.txt @@ -19,17 +19,6 @@ set(CMAKE_PREFIX_PATH ${MY_QT_INSTALL}) set(CMAKE_BUILD_TYPE Release) -if(MSVC AND MSVC_VERSION GREATER_EQUAL 1940) # VS2026 的 _MSC_VER 约为 1940+ - message(STATUS "Detected VS2026 or newer, adding compatibility definitions") - add_compile_definitions( - _SILENCE_ALL_MS_EXT_DEPRECATION_WARNINGS - _HAS_CXX17=1 - _HAS_CXX20=1 - _CRT_SECURE_NO_WARNINGS - ) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /std:c++17 /Zc:__cplusplus") -endif() - message(STATUS "Python3_ROOT_DIR: ${Python3_ROOT_DIR}") message(STATUS "Python3_EXECUTABLE: ${Python3_EXECUTABLE}") diff --git a/scripts/pyside6/gen_xml.py b/scripts/pyside6/gen_xml.py index 6ed2ea5..f719364 100644 --- a/scripts/pyside6/gen_xml.py +++ b/scripts/pyside6/gen_xml.py @@ -289,7 +289,23 @@ def maybeparse(xx: str): ff.write(wrapperbase.format(internal=H_internal + "\n" + h)) +sysinclude = "" +if "msvc2019" in MY_QT_INSTALL: + # <=6.7必须使用msvc2019的头文件 + vspath = "C:/Program Files/Microsoft Visual Studio/18/Community/VC/Tools/MSVC" + if not os.path.exists(vspath): + vspath = ( + "C:/Program Files/Microsoft Visual Studio/18/Enterprise/VC/Tools/MSVC" + ) + print(os.listdir(vspath)) + for _ in os.listdir(vspath): + if _.startswith("14.29"): + msvc2019 = _ + sysinclude = vspath + "/" + msvc2019 + "/include" + print(sysinclude) + sysinclude = f'--system-include-paths="{sysinclude}"' if sys.platform=='linux': + print(os.listdir('/usr/lib/gcc/x86_64-linux-gnu/')) inc='/usr/lib/gcc/x86_64-linux-gnu/14/include' if not os.path.exists(inc): inc='/usr/lib/gcc/x86_64-linux-gnu/11/include' @@ -299,7 +315,7 @@ def maybeparse(xx: str): sysinclude = f' -I{inc} -I{pyDir} ' os.system( - f"""shiboken6 + f"""shiboken6 {sysinclude} --generator-set=shiboken --output-directory=OUTPUTDIR -I{ELA_INCLUDE_PATH} diff --git a/scripts/wheel/setup.py b/scripts/wheel/setup.py index d9465e6..3de1600 100644 --- a/scripts/wheel/setup.py +++ b/scripts/wheel/setup.py @@ -7,7 +7,7 @@ bit = sys.argv[-1] sys.argv.pop(-1) -version="0.11.0" +version="0.11.1" req = "PySide6"