Page MenuHomeWildfire Games

Fix atlas Signals usage of pre-c++11 functions
AbandonedPublic

Authored by wraitii on Dec 1 2020, 9:51 AM.

Details

Reviewers
None
Trac Tickets
#5862
Summary

Atas uses boost::signals with some pre-c++11 functions that are now removed in C++17. We need to update them to carry on.

Test Plan

Compile on all three platforms.

Event Timeline

wraitii created this revision.Dec 1 2020, 9:51 AM
Owners added a subscriber: Restricted Owners Package.Dec 1 2020, 9:51 AM
Vulcan added a comment.Dec 1 2020, 9:59 AM

Build failure - The Moirai have given mortals hearts that can endure.

builderr-debug-macos.txt
ld: warning: text-based stub file /System/Library/Frameworks//CoreAudio.framework/CoreAudio.tbd and library file /System/Library/Frameworks//CoreAudio.framework/CoreAudio are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox.tbd and library file /System/Library/Frameworks//AudioToolbox.framework/AudioToolbox are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback.tbd and library file /System/Library/Frameworks//ForceFeedback.framework/ForceFeedback are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreVideo.framework/CoreVideo.tbd and library file /System/Library/Frameworks//CoreVideo.framework/CoreVideo are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//IOKit.framework/IOKit.tbd and library file /System/Library/Frameworks//IOKit.framework/IOKit are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//QuartzCore.framework/QuartzCore.tbd and library file /System/Library/Frameworks//QuartzCore.framework/QuartzCore are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Metal.framework/Metal.tbd and library file /System/Library/Frameworks//Metal.framework/Metal are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenGL.framework/OpenGL.tbd and library file /System/Library/Frameworks//OpenGL.framework/OpenGL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Security.framework/Security.tbd and library file /System/Library/Frameworks//Security.framework/Security are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//OpenAL.framework/OpenAL.tbd and library file /System/Library/Frameworks//OpenAL.framework/OpenAL are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//ApplicationServices.framework/ApplicationServices.tbd and library file /System/Library/Frameworks//ApplicationServices.framework/ApplicationServices are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//Cocoa.framework/Cocoa.tbd and library file /System/Library/Frameworks//Cocoa.framework/Cocoa are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
ld: library not found for -lbc6h
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [../../../binaries/system/pyrogenesis_dbg] Error 1
make: *** [pyrogenesis] Error 2

Link to build: https://jenkins.wildfiregames.com/job/macos-differential/2214/display/redirect

Build failure - The Moirai have given mortals hearts that can endure.

Link to build: https://jenkins.wildfiregames.com/job/vs2015-differential/3310/display/redirect

Build failure - The Moirai have given mortals hearts that can endure.

builderr-debug-gcc7.txt
../../../source/tools/atlas/AtlasUI/General/Observable.cpp: In member function 'void ObservableScopedConnections::Add(const ObservableConnection&)':
../../../source/tools/atlas/AtlasUI/General/Observable.cpp:27:15: error: 'not_fn' is not a member of 'std'
          std::not_fn(std::mem_fn(&ObservableConnection::connected))),
               ^~~~~~
../../../source/tools/atlas/AtlasUI/General/Observable.cpp:27:15: note: suggested alternative: 'mem_fn'
          std::not_fn(std::mem_fn(&ObservableConnection::connected))),
               ^~~~~~
               mem_fn
make[1]: *** [AtlasUI.make:291: obj/AtlasUI_Debug/Observable.o] Error 1
make: *** [Makefile:173: AtlasUI] Error 2

Link to build: https://jenkins.wildfiregames.com/job/docker-differential/3881/display/redirect

wraitii requested review of this revision.Dec 1 2020, 10:05 AM
Stan added a subscriber: Stan.Dec 1 2020, 10:08 AM
Stan added inline comments.
source/tools/atlas/AtlasUI/General/Observable.cpp
22

Doesn't exist in boost I assume?

26

Probably missing some headers now for no PCH :) Linter seems to think so too.

wraitii added inline comments.Dec 1 2020, 10:10 AM
source/tools/atlas/AtlasUI/General/Observable.cpp
22

see comment in observable.h

wraitii abandoned this revision.Dec 1 2020, 10:28 AM

Folded into D3166