-
Notifications
You must be signed in to change notification settings - Fork 6.6k
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
Update macOS to 2024-10-02. #41307
Update macOS to 2024-10-02. #41307
Conversation
Contains macOS 15 "Sequoia" and XCode Command Line Tools 16.
Close and reopen to kick CLABot |
…kg/Data/work/2/s/scripts/azure-pipelines/../ci.baseline.txt). PASSING, REMOVE FROM FAIL LIST: atliac-minitest:x64-osx (/Users/vcpkg/Data/work/2/s/scripts/azure-pipelines/../ci.baseline.txt). PASSING, REMOVE FROM FAIL LIST: libcoro:arm64-osx (/Users/vcpkg/Data/work/2/s/scripts/azure-pipelines/../ci.baseline.txt). PASSING, REMOVE FROM FAIL LIST: libcoro:x64-osx (/Users/vcpkg/Data/work/2/s/scripts/azure-pipelines/../ci.baseline.txt).
Build results from https://dev.azure.com/vcpkg/public/_build/results?buildId=107535
:)
'OSAtomicIncrement32' is deprecated: first deprecated in macOS 10.12 - Use std::atomic_fetch_add_explicit(std::memory_order_relaxed) from <atomic> instead [-Wdeprecated-declarations]
162 | return OSAtomicIncrement32((int32_t*)&value);
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/libkern/OSAtomicDeprecated.h:173:9: note: 'OSAtomicIncrement32' has been explicitly marked deprecated here
173 | int32_t OSAtomicIncrement32( volatile int32_t *__theValue );
| ^
/Users/vcpkg/Data/b/angelscript/src/elscript_2-a9741774b9.clean/angelscript/source/as_atomic.cpp:167:9: warning: 'OSAtomicDecrement32' is deprecated: first deprecated in macOS 10.12 - Use std::atomic_fetch_sub_explicit(std::memory_order_relaxed) from <atomic> instead [-Wdeprecated-declarations]
167 | return OSAtomicDecrement32((int32_t*)&value);
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/libkern/OSAtomicDeprecated.h:192:9: note: 'OSAtomicDecrement32' has been explicitly marked deprecated here
192 | int32_t OSAtomicDecrement32( volatile int32_t *__theValue );
| ^
2 warnings generated. Fixed with pragma push/disable/pop suppressions. (It isn't obvious to me how to adapt this to std:: as clang suggests; certainly not without involvement of upstream.) I emailed the upstream maintainer.
/Users/vcpkg/Data/b/awlib/src/2024-04-06-4d0885f5ee.clean/io/include/aw/io/mmap_file.h:91:7: warning: case value not in enumerated type 'map_perms' [-Wswitch]
91 | case mp::read|mp::exec:
| ^
/Users/vcpkg/Data/b/awlib/src/2024-04-06-4d0885f5ee.clean/io/include/aw/io/mmap_file.h:95:7: warning: case value not in enumerated type 'map_perms' [-Wswitch]
95 | case mp::write|mp::exec:
| ^
/Users/vcpkg/Data/b/awlib/src/2024-04-06-4d0885f5ee.clean/io/include/aw/io/mmap_file.h:97:7: warning: case value not in enumerated type 'map_perms' [-Wswitch]
97 | case mp::rdwr|mp::exec:
| ^
3 warnings generated. I think making the switch see the underlying
/Users/vcpkg/Data/b/freerdp/src/3.4.0-9495f3f830.clean/server/shadow/Mac/mac_shadow.c:254:8: error: 'CGDisplayStreamStart' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
254 | err = CGDisplayStreamStart(subsystem->stream);
| ^ This is FreeRDP/FreeRDP#10558 , no reasonable workaround available. /cc @dg0yt due to #32416
/Users/vcpkg/Data/b/juce/src/7.0.12-cb25bcc0dc.clean/modules/juce_gui_basics/native/juce_PerScreenDisplayLinks_mac.h:110:52:
warning: 'CVDisplayLinkCreateWithCGDisplay' is deprecated: first deprecated
in macOS 15.0 - use NSView.displayLink(target:selector:),
NSWindow.displayLink(target:selector:), or
NSScreen.displayLink(target:selector:) [-Wdeprecated-declarations]
110 | [[maybe_unused]] const auto result = CVDisplayLinkCreateWithCGDisplay (display, &ptr);
| ^ Upstream already aware and unwilling to fix in JUCE 7.
error: The following files are already installed in /Users/vcpkg/Data/installed/arm64-osx and are in conflict with libproxy:arm64-osx
Installed by influxdb-cxx:arm64-osx
include/Proxy.h This is a preexisting failure now detected by microsoft/vcpkg-tool#1483
/Users/vcpkg/Data/b/msquic/src/v2.4.5-9d07a67b94.clean/src/core/quicdef.h:243:66: error: encoding prefix 'L' on an unevaluated string literal has no effect [-Werror,-Winvalid-unevaluated-string]
243 | CXPLAT_STATIC_ASSERT(IS_POWER_OF_TWO(QUIC_MAX_RANGE_ALLOC_SIZE), L"Must be power of two");
| ^ If this fix works I need to submit to https://github.com/microsoft/msquic/
I am not sure what to do here :/
Fixed upstream already: IntelRealSense/librealsense@5a24405
I think this should be delisted completely given that it broke and upstream is archived but given that this is just supposed to be an infrastructure update, I'm just skipping it for now.
These are broken by freerdp or qtbase missing. |
urho3d: #27407 |
Angelscript failed again with:
Since that seems to be by design on macOS I'm not sure what to do here. awlib:
Needs either I missed some msquic literals. |
We have decided that we will not update our build lab to macOS 15/XCode 16 for now given the number of important components broken by the screen reading API removals. I'm going to finish the couple of patches here to submit them upstream, then close this PR. |
These build failures were detected while attempting to update vcpkg's test lab, which builds awlib, to macOS 15 "Sequoia" and XCode CLT 16: microsoft/vcpkg#41307 ```console /Users/vcpkg/Data/b/awlib/src/2024-04-06-4d0885f5ee.clean/io/include/aw/io/mmap_file.h:91:7: warning: case value not in enumerated type 'map_perms' [-Wswitch] 91 | case mp::read|mp::exec: | ^ /Users/vcpkg/Data/b/awlib/src/2024-04-06-4d0885f5ee.clean/io/include/aw/io/mmap_file.h:95:7: warning: case value not in enumerated type 'map_perms' [-Wswitch] 95 | case mp::write|mp::exec: | ^ /Users/vcpkg/Data/b/awlib/src/2024-04-06-4d0885f5ee.clean/io/include/aw/io/mmap_file.h:97:7: warning: case value not in enumerated type 'map_perms' [-Wswitch] 97 | case mp::rdwr|mp::exec: | ^ 3 warnings generated. ``` Fixed by casting these values to `unsigned` before going into the switch. I don't think this is particularly 'pretty' but at least it builds. A better solution in vcpkg would be to somehow make these warnings not errors, but I was less confident in being able to suppress that in ways that awlib's maintainers would find acceptable. ``` /Library/Developer/CommandLineTools/usr/bin/c++ -DAW_MODULE_PLATFORM -DAW_STATIC_BUILD -I/Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/platform/include -I/Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/awlib/include -I/Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/types/include -I/Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/meta/include -I/Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/algorithm/include -I/Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/utility/include -I/Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/math/include -fPIC -g -std=c++2b -arch x86_64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk -fPIC -fvisibility=hidden -MD -MT platform/CMakeFiles/awplatform.dir/demangle.c++.o -MF platform/CMakeFiles/awplatform.dir/demangle.c++.o.d -o platform/CMakeFiles/awplatform.dir/demangle.c++.o -c /Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/platform/demangle.c++ In file included from /Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/platform/demangle.c++:10: /Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/types/include/aw/types/byte_buffer.h:25:75: error: no member named 'malloc' in namespace 'std'; did you mean simply 'malloc'? 25 | std::unique_ptr<byte_type, free_deleter> memory{ static_cast<byte_type*>(std::malloc(size)) }; | ^~~~~~~~~~~ | malloc /Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/usr/include/malloc/_malloc.h:54:35: note: 'malloc' declared here 54 | void * __sized_by_or_null(__size) malloc(size_t __size) __result_use_check __alloc_size(1) _MALLOC_TYPED(malloc_type_malloc, 1); | ^ In file included from /Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/platform/demangle.c++:10: /Users/vcpkg/Data/b/awlib/src/2024-04-06-b57ded9dee.clean/types/include/aw/types/byte_buffer.h:19:45: error: no type named 'free' in namespace 'std' 19 | void operator()(byte_type* memory) { std::free(memory); } | ~~~~~^ 2 errors generated. ``` Fixed by adding missing <cstdlib> for std::malloc and std::free.
This resolves build failures on macOS 15 "Sequoia" / XCode Command Line Tools 16 detected while attempting to update vcpkg's build and test lab: microsoft/vcpkg#41307 Example: ``` /Users/vcpkg/Data/b/msquic/src/v2.4.5-9d07a67b94.clean/src/core/quicdef.h:243:66: error: encoding prefix 'L' on an unevaluated string literal has no effect [-Werror,-Winvalid-unevaluated-string] 243 | CXPLAT_STATIC_ASSERT(IS_POWER_OF_TWO(QUIC_MAX_RANGE_ALLOC_SIZE), L"Must be power of two"); | ^ ```
This resolves build failures on macOS 15 "Sequoia" / XCode Command Line Tools 16 detected while attempting to update vcpkg's build and test lab: microsoft/vcpkg#41307 Example: ``` /Users/vcpkg/Data/b/msquic/src/v2.4.5-9d07a67b94.clean/src/core/quicdef.h:243:66: error: encoding prefix 'L' on an unevaluated string literal has no effect [-Werror,-Winvalid-unevaluated-string] 243 | CXPLAT_STATIC_ASSERT(IS_POWER_OF_TWO(QUIC_MAX_RANGE_ALLOC_SIZE), L"Must be power of two"); | ^ ```
Contains macOS 15 "Sequoia" and XCode Command Line Tools 16.