Skip to content
Snippets Groups Projects

Add support for pc-windows-msvc target

Merged Kacper Michajłow requested to merge kasper93/libplacebo:msvc into master
All threads resolved!

Depends on !419 (merged)

Works correctly (all demos and tests) with clang (x86_64-pc-windows-msvc) + lld-link. MSVC (cl) would require a lot more changes to port all gcc/clang specific things that are done in the codebase. But clang build with MS SDK is perfectly fine and allows to avoid using mingw, which has its own problems.

Unfortunately there is an issue in meson and this (https://github.com/mesonbuild/meson/pull/11715) patch is required to fix target directory and name of .lib file. It is not breaking, because everything compiles/link fine, but one needs to manually rename and move the files.

If there are any native Windows workers available, I can add a test for this build configuration, but would require MS build tools installed.

Merge request reports

Pipeline #336066 passed

Pipeline passed for 1c09a574 on kasper93:msvc

Test coverage 79.96% (0.00%) from 1 job

Merged by Niklas HaasNiklas Haas 1 year ago (Apr 24, 2023 3:03pm UTC)

Merge details

  • Changes merged into with 1c09a574.
  • Deleted the source branch.

Pipeline #336089 passed

Pipeline passed for 1c09a574 on master

Test coverage 79.98% (0.00%) from 1 job

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Jean-Baptiste Kempf
  • Jean-Baptiste Kempf
  • Niklas Haas
  • Niklas Haas
  • Kacper Michajłow added 29 commits

    added 29 commits

    • 8ab8c2e7...400003d0 - 8 commits from branch videolan:master
    • 24edc170 - thread: add abstraction for actual threads
    • 2a988549 - thread/win32: implement thread creation for win32
    • 1c981977 - meson: remove pl_threads dependency on internal config
    • 1447bb4d - plplay: use pl_thread
    • 5a05cdb0 - meson: remove unused variable
    • 6a736f6e - meson: handle test dependencies in more fine-grained way
    • ad1b6b73 - ci: add -Werror to clang builds too
    • 83e8fd47 - ci: merge UBSAN and ASAN builds
    • 239a680e - ci: instead of disabling code just disable MSAN with attribute
    • 8f672caa - ci: enable shaderc and glslang
    • 77ced96c - meson: do not exclude-libs=ALL if sanitizers are enabled
    • 6922344a - api: decorate all API functions with PL_API
    • a280e276 - common: remove unneded includes
    • eec41e5a - plplay: add PL_BASENAME for Windows compatibility
    • 1d92e20a - tests: use standard timespec_get
    • c556091e - meson: define _USE_MATH_DEFINES in whole build instead of one by one
    • d71471e6 - meson: disable CRT deprecation warnings
    • 85e36eda - meson: add missing vulkan_headers dependency on bench
    • 360fe68a - win32: add compatibility between posix and MS SDK
    • d19b0624 - meson: allow Vulkan discovery by using VULKAN_SDK env
    • aeb17d74 - meson: suppress warnings about unsupported args with MS link

    Compare with previous version

  • Kacper Michajłow added 10 commits

    added 10 commits

    • 3db245fb - api: decorate all API functions with PL_API
    • 9382deec - common: remove unneded includes
    • 58f9fcde - plplay: add PL_BASENAME for Windows compatibility
    • 2b9c01a6 - tests: use standard timespec_get
    • 7883ea8c - meson: define _USE_MATH_DEFINES in whole build instead of one by one
    • d69ee21e - meson: disable CRT deprecation warnings
    • 9d4c470d - meson: add missing vulkan_headers dependency on bench
    • 72ecc7a5 - win32: add compatibility between posix and MS SDK
    • 8e5bd2b5 - meson: allow Vulkan discovery by using VULKAN_SDK env
    • af71c28e - meson: suppress warnings about unsupported args with MS link

    Compare with previous version

  • Kacper Michajłow marked this merge request as draft

    marked this merge request as draft

  • Kacper Michajłow added 10 commits

    added 10 commits

    • 5afd386a - api: decorate all API functions with PL_API
    • ba31d4d5 - common: remove unneded includes
    • 944ae8e2 - plplay: add PL_BASENAME for Windows compatibility
    • 3bc638d0 - tests: use standard timespec_get
    • 47630bf3 - meson: define _USE_MATH_DEFINES in whole build instead of one by one
    • 0d07ede9 - meson: disable CRT deprecation warnings
    • edd762d4 - meson: add missing vulkan_headers dependency on bench
    • c0ad5c13 - win32: add compatibility between posix and MS SDK
    • e46dacef - meson: allow Vulkan discovery by using VULKAN_SDK env
    • 81706137 - meson: suppress warnings about unsupported args with MS link

    Compare with previous version

  • Kacper Michajłow marked this merge request as ready

    marked this merge request as ready

  • Niklas Haas approved this merge request

    approved this merge request

  • Niklas Haas resolved all threads

    resolved all threads

  • Kacper Michajłow added 24 commits

    added 24 commits

    • 81706137...86e83d68 - 14 commits from branch videolan:master
    • 4cd2f111 - api: decorate all API functions with PL_API
    • 846684e4 - common: remove unneded includes
    • 0e661ae2 - plplay: add PL_BASENAME for Windows compatibility
    • 0aa6e4a3 - tests: use standard timespec_get
    • 06da91fe - meson: define _USE_MATH_DEFINES in whole build instead of one by one
    • bf55edc9 - meson: disable CRT deprecation warnings
    • 34b5d189 - meson: add missing vulkan_headers dependency on bench
    • 1ea3d0ad - win32: add compatibility between posix and MS SDK
    • 2feb7a88 - meson: allow Vulkan discovery by using VULKAN_SDK env
    • 17ed2761 - meson: suppress warnings about unsupported args with MS link

    Compare with previous version

  • Kacper Michajłow added 7 commits

    added 7 commits

    • cc3c0800 - tests: use standard timespec_get
    • 9b246596 - meson: define _USE_MATH_DEFINES in whole build instead of one by one
    • caaeb54c - meson: disable CRT deprecation warnings
    • 7b2e1836 - meson: add missing vulkan_headers dependency on bench
    • 17ddadf3 - win32: add compatibility between posix and MS SDK
    • e74b5b5a - meson: allow Vulkan discovery by using VULKAN_SDK env
    • 1c09a574 - meson: suppress warnings about unsupported args with MS link

    Compare with previous version

  • merged

  • Please register or sign in to reply
    Loading