FLTK logo

[master] c1a7c4a - Fix GitHub Actions (CI) for Windows builds

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 All Forums  |  Back to fltk.commit  ]
 
Previous Message ]Next Message ]

[master] c1a7c4a - Fix GitHub Actions (CI) for Windows builds "Albrecht Schlosser" Nov 25, 2022  
 
commit c1a7c4af042a593b4b3a1df3e750b0cc80362486
Author:     Albrecht Schlosser <albrechts.fltk@online.de>
AuthorDate: Fri Nov 25 17:24:18 2022 +0100
Commit:     Albrecht Schlosser <albrechts.fltk@online.de>
CommitDate: Fri Nov 25 17:24:18 2022 +0100

    Fix GitHub Actions (CI) for Windows builds
    
    This was necessary because the latest GitHub "runner" image (20221120.1)
    includes incompatible image libs (libjpeg, libpng, and zlib). This
    caused `fluid-cmd.exe` to fail with error code -1073741511. For further
    information please refer to this GitHub Issue:
      https://github.com/actions/runner-images/issues/6627
    
    The previous runner version (20221027.1) did not include these libs
    and our build used the internal libs and worked.
    
    The fix is to disable the search for system libs in CMake.
    
    Note: this does not explain *why* these libs are incompatible.

 .github/workflows/build.yml | 26 ++++++++++----------------
 1 file changed, 10 insertions(+), 16 deletions(-)

diff --git .github/workflows/build.yml .github/workflows/build.yml
index 0083bf8..763d46f 100644
--- .github/workflows/build.yml
+++ .github/workflows/build.yml
@@ -103,32 +103,26 @@ jobs:
       run: cmake --build . --config $BUILD_TYPE
 
   build-windows:
-    # The CMake configure and build commands are platform agnostic and should work equally
-    # well on Windows or Mac.  You can convert this to a matrix build if you need
-    # cross-platform coverage.
-    # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
+    # This build config has been minimized. Please see other configs for further advice.
+    # We don't use the "bash" shell (defaults to PowerShell) and avoid using environment
+    # variables as far as possible and useful.
+    #
+    # Note:
+    # We *must* disable system image libs to make sure we don't find incompatible ones on
+    # GitHub Actions runners "windows-latest" (since Nov. 22, 2022, version: 20221120.1).
+
     runs-on: windows-latest
 
     steps:
     - uses: actions/checkout@v2
 
     - name: Create Build Environment
-      # Some projects don't allow in-source building, so create a separate build directory
-      # We'll use this as our working directory for all subsequent commands
       run: cmake -E make_directory ${{github.workspace}}/build
 
     - name: Configure CMake
-      # Use a bash shell so we can use the same syntax for environment variable
-      # access regardless of the host operating system
-      shell: bash
       working-directory: ${{github.workspace}}/build
-      # Note the current convention is to use the -S and -B options here to specify source
-      # and build directories, but this is only available with CMake 3.13 and higher.
-      # The CMake binaries on the Github Actions machines are (as of this writing) 3.12
-      run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE
+      run: cmake -D OPTION_USE_SYSTEM_LIBJPEG:BOOL=OFF -D OPTION_USE_SYSTEM_LIBPNG:BOOL=OFF -D OPTION_USE_SYSTEM_ZLIB:BOOL=OFF ..
 
     - name: Build
       working-directory: ${{github.workspace}}/build
-      shell: bash
-      # Execute the build.  You can specify a specific target with "--target <NAME>"
-      run: cmake --build . --config $BUILD_TYPE
+      run: cmake --build . --config Release
Direct Link to Message ]
 
     
Previous Message ]Next Message ]
 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.