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

[Actions] Adding a MacOS build workflow, fixing several MacOS specific compilation errors and warnings #285

Merged
merged 19 commits into from
Nov 18, 2024

Conversation

VeithMetro
Copy link
Contributor

No description provided.

[2/55] Building CXX object Source/displayinfo/CMakeFiles/ClientDisplayInfo.dir/DisplayInfo.cpp.o
FAILED: Source/displayinfo/CMakeFiles/ClientDisplayInfo.dir/DisplayInfo.cpp.o 
/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -DClientDisplayInfo_EXPORTS -DPROCESSCONTAINERS_ENABLED=1 -DTHUNDER_PLATFORM_PC_UNIX=1 -DWARNING_REPORTING_ENABLED -D_TRACE_LEVEL=0 -D__CORE_MESSAGING__ -D__CORE_NO_WCHAR_SUPPORT__ -D__CORE_WARNING_REPORTING__ -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/include -isystem /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/include/Thunder -isystem /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/include -isystem /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/include/Thunder/processcontainers -Wall -Wextra -Wpedantic -Werror -O3 -DNDEBUG -std=gnu++11 -arch arm64 -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT Source/displayinfo/CMakeFiles/ClientDisplayInfo.dir/DisplayInfo.cpp.o -MF Source/displayinfo/CMakeFiles/ClientDisplayInfo.dir/DisplayInfo.cpp.o.d -o Source/displayinfo/CMakeFiles/ClientDisplayInfo.dir/DisplayInfo.cpp.o -c /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/DisplayInfo.cpp
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/DisplayInfo.cpp:217:51: error: unused variable 'index' [-Werror,-Wunused-variable]
        OperationalStateChangeCallbacks::iterator index(_operationalStateCallbacks.find(callback));
                                                  ^
1 error generated.
[7/55] Building CXX object Source/ocdm/CMakeFiles/ClientOCDM.dir/open_cdm.cpp.o
FAILED: Source/ocdm/CMakeFiles/ClientOCDM.dir/open_cdm.cpp.o 
/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -DClientOCDM_EXPORTS -DPROCESSCONTAINERS_ENABLED=1 -DTHUNDER_PLATFORM_PC_UNIX=1 -DWARNING_REPORTING_ENABLED -D_TRACE_LEVEL=0 -D__CORE_MESSAGING__ -D__CORE_NO_WCHAR_SUPPORT__ -D__CORE_WARNING_REPORTING__ -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/ocdm/.. -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/ocdm/adapter -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/ocdm -isystem /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/include/Thunder -isystem /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/include -isystem /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/include/Thunder/processcontainers -Wall -Wextra -Wpedantic -Werror -O3 -DNDEBUG -std=gnu++11 -arch arm64 -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -Wno-psabi -MD -MT Source/ocdm/CMakeFiles/ClientOCDM.dir/open_cdm.cpp.o -MF Source/ocdm/CMakeFiles/ClientOCDM.dir/open_cdm.cpp.o.d -o Source/ocdm/CMakeFiles/ClientOCDM.dir/open_cdm.cpp.o -c /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/ocdm/open_cdm.cpp
In file included from /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/ocdm/open_cdm.cpp:21:
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/ocdm/open_cdm_impl.h:917:13: error: ambiguous conversion of delete expression of type 'std::atomic<DataExchange *>' to a pointer
            delete _decryptSession;
            ^      ~~~~~~~~~~~~~~~
/Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__atomic/atomic_base.h:63:5: note: conversion to pointer type 'OpenCDMSession::DataExchange *'
    operator _Tp() const volatile _NOEXCEPT {return load();}
    ^
/Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk/usr/include/c++/v1/__atomic/atomic_base.h:65:5: note: conversion to pointer type 'OpenCDMSession::DataExchange *'
    operator _Tp() const _NOEXCEPT          {return load();}
    ^
1 error generated.
[32/55] Building C object Source/deviceinfo/device_info/CMakeFiles/device_info.dir/main.c.o
FAILED: Source/deviceinfo/device_info/CMakeFiles/device_info.dir/main.c.o 
/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -DTHUNDER_PLATFORM_PC_UNIX=1 -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/deviceinfo/device_info/.. -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/deviceinfo -Wall -Wextra -Wpedantic -Werror -Os -DNDEBUG -arch arm64 -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk -MD -MT Source/deviceinfo/device_info/CMakeFiles/device_info.dir/main.c.o -MF Source/deviceinfo/device_info/CMakeFiles/device_info.dir/main.c.o.d -o Source/deviceinfo/device_info/CMakeFiles/device_info.dir/main.c.o -c /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/deviceinfo/device_info/main.c
In file included from /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/deviceinfo/device_info/main.c:21:
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/deviceinfo/device_info/../deviceinfo.h:448:33: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
EXTERNAL void deviceinfo_dispose();
                                ^
                                 void
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/deviceinfo/device_info/main.c:58:14: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
void ShowMenu()
             ^
              void
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/deviceinfo/device_info/main.c:83:9: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
int main()
        ^
         void
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/deviceinfo/device_info/main.c:54:41: error: token pasting of ',' and __VA_ARGS__ is a GNU extension [-Werror,-Wgnu-zero-variadic-macro-arguments]
        fprintf(stdout, "<< " fmt "\n", ##__VA_ARGS__); \
                                        ^
[34/55] Building C object Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o
FAILED: Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o 
/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -DTHUNDER_PLATFORM_PC_UNIX=1 -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/display_info/../include -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/include -Wall -Wextra -Wpedantic -Werror -O3 -DNDEBUG -arch arm64 -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk -MD -MT Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o -MF Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o.d -o Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o -c /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/display_info/main.c
In file included from /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/display_info/main.c:20:
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/display_info/../include/displayinfo.h:473:45: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
EXTERNAL bool displayinfo_is_atmos_supported();
                                            ^
                                             void
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/display_info/../include/displayinfo.h:479:34: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
EXTERNAL void displayinfo_dispose();
                                 ^
                                  void
[34/55] Building C object Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o
FAILED: Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o 
/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -DTHUNDER_PLATFORM_PC_UNIX=1 -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/display_info/../include -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo -I/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/include -Wall -Wextra -Wpedantic -Werror -O3 -DNDEBUG -arch arm64 -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk -MD -MT Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o -MF Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o.d -o Source/displayinfo/display_info/CMakeFiles/display_info.dir/main.c.o -c /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/display_info/main.c
/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/ThunderClientLibraries/Source/displayinfo/display_info/main.c:255:9: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
int main()
        ^
         void
1 error generated.
[53/55] Linking CXX shared library Source/cryptography/libClientCryptography.1.0.0.dylib
FAILED: Source/cryptography/libClientCryptography.1.0.0.dylib 
: && /Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -Wall -Wextra -Wpedantic -Werror -O3 -DNDEBUG -arch arm64 -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk -dynamiclib -Wl,-headerpad_max_install_names -Wl,--no-as-needed   -compatibility_version 1.0.0 -current_version 1.0.0 -o Source/cryptography/libClientCryptography.1.0.0.dylib -install_name @rpath/libClientCryptography.1.dylib Source/cryptography/CMakeFiles/ClientCryptography.dir/Module.cpp.o Source/cryptography/CMakeFiles/ClientCryptography.dir/Cryptography.cpp.o Source/cryptography/CMakeFiles/ClientCryptography.dir/NetflixSecurity.cpp.o  -Wl,-rpath,/Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/lib  /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/lib/libThunderCOM.5.0.0.dylib  -Wl,--whole-archive  Source/cryptography/implementation/OpenSSL/libimplementation.a  -Wl,--no-whole-archive  /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/lib/libThunderWarningReporting.5.0.0.dylib  /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/lib/libThunderProcessContainers.5.0.0.dylib  /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/lib/libThunderMessaging.5.0.0.dylib  /Users/runner/work/ThunderClientLibraries/ThunderClientLibraries/Release/install/usr/lib/libThunderCore.5.0.0.dylib  /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libssl.dylib  /opt/homebrew/Cellar/openssl@3/3.4.0/lib/libcrypto.dylib && :
ld: unknown options: --no-as-needed --whole-archive --no-whole-archive 
clang: error: linker command failed with exit code 1 (use -v to see invocation)

There is no direct equivalent to --no-as-needed on macOS, but the macOS linker typically includes all linked libraries by default, so the absence of --no-as-needed should not cause issues.
@VeithMetro VeithMetro requested a review from sebaszm November 15, 2024 11:25
@VeithMetro VeithMetro merged commit a1f931a into master Nov 18, 2024
31 checks passed
@VeithMetro VeithMetro deleted the development/Actions-macOS branch November 18, 2024 11:20
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.

2 participants