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

Use the vcpkg-enabled version of cesium-native. #1447

Merged
merged 127 commits into from
Aug 16, 2024
Merged

Use the vcpkg-enabled version of cesium-native. #1447

merged 127 commits into from
Aug 16, 2024

Conversation

kring
Copy link
Member

@kring kring commented Jun 6, 2024

This depends on CesiumGS/cesium-native#820.

To do:

  • Create an overlay triplet for Unreal so the above steps aren't necessary.
  • Get all the platforms building on CI.
  • Test the Editor on all platforms:
    • Windows
    • macOS
    • Linux
  • Test packaging for all platforms
    • Windows
    • macOS
    • Linux
    • Android
    • iOS
  • Create overlay ports for abseil and sqlite that rename our symbols to avoid conflicts with the same libraries included in other Unreal plugins.
  • Investigate why the distributions are bigger. Probably because of this.

CC @jherico (thanks for all your work on this on the cesium-native side!)

extern/CMakeLists.txt Outdated Show resolved Hide resolved
Use C++20 and swl::variant instead of std::variant.
@kring
Copy link
Member Author

kring commented Jun 30, 2024

Just dropping a reminder for myself here that this PR also removes the debug section compression on Linux. The compressed debug sections cause linker errors when cross-compiling for Linux from Windows:

PackagingResults: Error: C:/Program Files/Epic Games/UE_5.2/Engine/Plugins/Marketplace/CesiumForUnreal/Intermediate/Build/Linux/x64/UnrealGame/Development/CesiumRuntime/Module.CesiumRuntime.2_of_11.cpp.o:(.debug_gnu_pubtypes) is compressed with ELFCOMPRESS_ZLIB, but lld is not built with zlib support

Now that the binaries aren't so enormous, compressing the debug sections isn't as essential.

@j9liu j9liu added this to the August 2024 Release milestone Jul 23, 2024
It's not really clear why the host paths need to be searched for
libraries and includes, but it seems that they do.
@kring kring marked this pull request as ready for review July 25, 2024 16:02
@kring
Copy link
Member Author

kring commented Jul 25, 2024

This is working well and I believe it's finally ready for review!

@kring
Copy link
Member Author

kring commented Aug 15, 2024

Final testing across all platforms:

❌ means I cannot test because I don't have access to the necessary hardware.

  • Editor
    • Windows x64
    • Linux x64
    • macOS Universal on x64
    • ❌ macOS Universal on ARM64
  • Build Game from Windows
    • Windows x64
    • Android ARM64
  • Build Game from macOS
    • macOS Universal
    • iOS ARM64 - waiting on acceptance of new Apple Developer license agreement. An iOS device might be required to even build, too.
  • Build Game from Linux
    • Linux x64
  • Run Game
    • Windows x64
    • Linux x64
    • macOS Universal on x64
    • ❌ macOS Universal on ARM64
    • ❌ iOS ARM64
    • Android ARM64 (tested on Pixel 6 Pro)

Copy link
Contributor

@j9liu j9liu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kring Looks good to me! Just a few questions and a typo, but it doesn't have to hold up this PR.

Let me know when you're done with testing so I can hit merge!

Source/CesiumEditor/CesiumEditor.Build.cs Outdated Show resolved Hide resolved
Source/CesiumEditor/Private/PCH.h Show resolved Hide resolved
extern/vcpkg-overlays/zlib-ng/portfile.cmake Outdated Show resolved Hide resolved
@kring
Copy link
Member Author

kring commented Aug 16, 2024

Reminder for myself: I need to update CHANGES.md.

@kring
Copy link
Member Author

kring commented Aug 16, 2024

I've addressed the review feedback and tested every platform that I'm currently able to test. Let's not wait for the testing on the remaining platforms and instead get this into main as soon as possible.

@j9liu
Copy link
Contributor

j9liu commented Aug 16, 2024

Thanks @kring ! Merging now 💪

@j9liu j9liu merged commit 23632f2 into main Aug 16, 2024
23 checks passed
@j9liu j9liu deleted the vcpkg branch August 16, 2024 14:40
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.

3 participants