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

CI: Update Artifact actions to v4 #120

Merged
merged 18 commits into from
Dec 26, 2024
Merged

Conversation

o01eg
Copy link
Contributor

@o01eg o01eg commented Nov 13, 2024

No description provided.

@geoffthemedio

This comment was marked as outdated.

@o01eg
Copy link
Contributor Author

o01eg commented Nov 15, 2024

Yes, macos-11 is dropped, and I'm not sure what happening with Windows.

@o01eg o01eg force-pushed the ci-update-artifact-v4 branch 12 times, most recently from e863616 to 4dd4c31 Compare December 22, 2024 18:15
@o01eg o01eg force-pushed the ci-update-artifact-v4 branch from 37e360e to 4611727 Compare December 23, 2024 09:59
@o01eg o01eg force-pushed the ci-update-artifact-v4 branch from 4611727 to 5289a77 Compare December 23, 2024 10:09
@o01eg
Copy link
Contributor Author

o01eg commented Dec 23, 2024

@geoffthemedio SDL heavily changed installation so new things installed. Also looks like CMake is updated too and shows warnings about compatibility.

@o01eg o01eg force-pushed the ci-update-artifact-v4 branch from 0dfcbe2 to 53e0c0d Compare December 23, 2024 13:39
Copy link
Member

@Vezzra Vezzra left a comment

Choose a reason for hiding this comment

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

I can build the SDK, but I can't build FO with it. Whether I use the SDK I built manually, or try to build the test commit on your master branch (d69a4a24812c73274c8cda233f78e131645c3450), I get build errors, basically this one error multiple times:

In file included from /Users/user/SoftwareProjekte/FO/main/src/client/human/chmain.cpp:1:
In file included from /Users/user/SoftwareProjekte/FO/main/src/client/human/GGHumanClientApp.h:6:
In file included from /Users/user/SoftwareProjekte/FO/main/src/client/human/../../UI/SDLGUI.h:9:
In file included from /Users/user/SoftwareProjekte/FO/main/build/dep/Frameworks/SDL2.framework/Headers/SDL.h:32:
In file included from /Users/user/SoftwareProjekte/FO/main/build/dep/Frameworks/SDL2.framework/Headers/SDL_main.h:25:
/Users/user/SoftwareProjekte/FO/main/build/dep/Frameworks/SDL2.framework/Headers/SDL_stdinc.h:31:10: fatal error: 'SDL_config.h' file not found
#include "SDL_config.h"

@o01eg o01eg force-pushed the ci-update-artifact-v4 branch from 53e0c0d to 98fff57 Compare December 23, 2024 14:22
@o01eg
Copy link
Contributor Author

o01eg commented Dec 23, 2024

Yes, I'm trying to disable SDL framework as it's don't work correctly after installation changes in SDL.

@o01eg o01eg requested a review from Vezzra December 23, 2024 14:50
@o01eg
Copy link
Contributor Author

o01eg commented Dec 23, 2024

Latest try from https://github.com/freeorion/freeorion-sdk/actions/runs/12468283058 should work, but you need to add into FreeOrion's CMakeLists.txt

        COMMAND
           ${CMAKE_COMMAND} -E copy_if_different "$<TARGET_FILE:SDL::SDL>" "$<TARGET_FILE_DIR:freeorion>/../SharedSupport"

@o01eg
Copy link
Contributor Author

o01eg commented Dec 23, 2024

@o01eg
Copy link
Contributor Author

o01eg commented Dec 23, 2024

Copy link
Member

@Vezzra Vezzra left a comment

Choose a reason for hiding this comment

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

I can now build FO (I build commit 5a787653769b836a6d499b2fdd62c6df3929ac56 from your repo), but the app crashes on startup. Apparently, it can't load libSDL2-2.0.0.dylib:

-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               FreeOrion [2663]
Path:                  /Volumes/VOLUME/FreeOrion.app/Contents/MacOS/FreeOrion
Identifier:            org.freeorion.FreeOrion
Version:               0.5.1+ (build 2024-12-23.5a78765) (0.5.1+ o01eg-master (build 2024-12-23.5a78765))
Code Type:             X86-64 (Native)
Parent Process:        launchd [1]
User ID:               501

Date/Time:             2024-12-24 10:22:49.6584 +0100
OS Version:            macOS 12.6 (21G115)
Report Version:        12
Bridge OS Version:     6.6 (19P6067)
Anonymous UUID:        DBE14CFB-5083-F51E-3D62-E711C220B917


Time Awake Since Boot: 6900 seconds

System Integrity Protection: enabled

Crashed Thread:        0

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Reason:    Namespace DYLD, Code 1 Library missing
Library not loaded: '@rpath/libSDL2-2.0.0.dylib'
Referenced from: '/Volumes/VOLUME/FreeOrion.app/Contents/MacOS/FreeOrion'
Reason: tried: '' (no such file), '' (no such file), '' (no such file), '' (no such file), '' (no such file), '' (no such file)
(terminated at launch; ignore backtrace)

Thread 0 Crashed:
0   dyld                          	       0x10ff0598e __abort_with_payload + 10
1   dyld                          	       0x10ff1ba72 abort_with_payload_wrapper_internal + 80
2   dyld                          	       0x10ff1baa4 abort_with_payload + 9
3   dyld                          	       0x10fec9699 dyld4::halt(char const*) + 615
4   dyld                          	       0x10fec55b5 dyld4::prepare(dyld4::APIs&, dyld3::MachOAnalyzer const*) + 3995
5   dyld                          	       0x10fec44e4 start + 388


Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x0000000002000209  rbx: 0x0000000000000000  rcx: 0x00007ff7bae8d668  rdx: 0x00007ff7bae8dad0
  rdi: 0x0000000000000006  rsi: 0x0000000000000001  rbp: 0x00007ff7bae8d6b0  rsp: 0x00007ff7bae8d668
   r8: 0x00007ff7bae8d6d0   r9: 0x0000000000000000  r10: 0x0000000000000069  r11: 0x0000000000000246
  r12: 0x0000000000000069  r13: 0x00007ff7bae8dad0  r14: 0x0000000000000001  r15: 0x0000000000000006
  rip: 0x000000010ff0598e  rfl: 0x0000000000000246  cr2: 0x0000000105f62000
  
Logical CPU:     0
Error Code:      0x02000209 
Trap Number:     133


Binary Images:
       0x10febf000 -        0x10ff2afff dyld (*) <71febccd-d9dc-3599-9971-2b3407c588a8> /usr/lib/dyld

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=47.1M resident=0K(0%) swapped_out_or_unallocated=47.1M(100%)
Writable regions: Total=9428K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=9428K(100%)

                                VIRTUAL   REGION 
REGION TYPE                        SIZE    COUNT (non-coalesced) 
===========                     =======  ======= 
STACK GUARD                       56.0M        1 
Stack                             8192K        1 
VM_ALLOCATE                         12K        3 
__DATA                             592K        9 
__DATA_CONST                       944K        5 
__LINKEDIT                        21.5M        7 
__TEXT                            25.6M        5 
dyld private memory               1024K        1 
===========                     =======  ======= 
TOTAL                            113.6M       32 

@o01eg
Copy link
Contributor Author

o01eg commented Dec 24, 2024

@Vezzra Did you make changes in FreeOrion's CMakeLists.txt to copy libSDL2-2.0.0.dylib into SharedSupport folder?

@o01eg o01eg requested a review from Vezzra December 24, 2024 14:58
@o01eg
Copy link
Contributor Author

o01eg commented Dec 24, 2024

Oh, I got it built and published as artifact https://github.com/o01eg/freeorion/actions/runs/12485231351

I have no idea but somehow it links to libSDL2-2.0.0.dylib but copies libSDL2.dylib to SharedSupport folder.

@o01eg
Copy link
Contributor Author

o01eg commented Dec 25, 2024

Now I see only libSDL2.dylib in SDK, @Vezzra could you try again?

Edit: Which is broken.

@o01eg o01eg force-pushed the ci-update-artifact-v4 branch from adbdd85 to 7c2927f Compare December 25, 2024 05:51
@o01eg o01eg force-pushed the ci-update-artifact-v4 branch from 7c2927f to a6f1d27 Compare December 25, 2024 06:40
@o01eg
Copy link
Contributor Author

o01eg commented Dec 25, 2024

@Vezzra
Copy link
Member

Vezzra commented Dec 25, 2024

@Vezzra Did you make changes in FreeOrion's CMakeLists.txt to copy libSDL2-2.0.0.dylib into SharedSupport folder?

The line you mentioned above was already there, so I didn't make any changes to CMakeLists.txt.

Copy link
Member

@Vezzra Vezzra left a comment

Choose a reason for hiding this comment

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

Success! I built commit adda0b1 ("Test 20 SDK") of your repo, and have been able to start FO without crash. Also a quick start game worked normally.

The build process pulled in the right FO SDK (FreeOrionSDK_20_Clang-MacOSX-10.15-x86_64), so I guess that means the issues have been fixed.

@o01eg
Copy link
Contributor Author

o01eg commented Dec 25, 2024

@geoffthemedio Does the latest Windows SDK works for you?

@geoffthemedio
Copy link
Member

@geoffthemedio Does the latest Windows SDK works for you?

Self built or specifically the download?

@o01eg
Copy link
Contributor Author

o01eg commented Dec 26, 2024

I suppose downloaded as we mostly use SDKs built by Github Actions.

@geoffthemedio
Copy link
Member

geoffthemedio commented Dec 26, 2024

Downloaded SDK (x64, v143) for Windows built and seems to run OK.

11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:85 : Dependency versions from headers:
11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:88 : Boost: 1_83
11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:88 : FreeType: 2.9.0
11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:88 : GLEW: 2.2.0
11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:88 : PNG: 1.6.37
11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:88 : Python: 3.9.10
11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:88 : SDL: 2.26.0
11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:88 : libvorbis: Xiph.Org libVorbis 1.3.5
11:25:25.132012 {0x00001b8c} [info] client : DependencyVersions.cpp:88 : zlib: 1.2.11

@o01eg o01eg merged commit 7293ba9 into freeorion:master Dec 26, 2024
7 checks passed
@o01eg o01eg deleted the ci-update-artifact-v4 branch December 26, 2024 11:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants