From 90a43c13a1ef03859fd48911615d3c42cf2f4de8 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 17:12:50 -0500 Subject: [PATCH 01/58] chore(libheifactions)#: Create test action --- .github/workflows/test-action.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/test-action.yml diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml new file mode 100644 index 0000000000..15a61d6b6d --- /dev/null +++ b/.github/workflows/test-action.yml @@ -0,0 +1,18 @@ +name: GitHub Actions Demo +run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 +on: [push] +jobs: + Explore-GitHub-Actions: + runs-on: ubuntu-latest + steps: + - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." + - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" + - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." + - name: Check out repository code + uses: actions/checkout@v4 + - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." + - run: echo "🖥️ The workflow is now ready to test your code on the runner." + - name: List files in the repository + run: | + ls ${{ github.workspace }} + - run: echo "🍏 This job's status is ${{ job.status }}." From 29460c45b96746f5f59f2a65705d6bd1c7fe232f Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 17:39:17 -0500 Subject: [PATCH 02/58] chore(libheifactions)#: Test changes to workflow --- .github/workflows/test-action.yml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 15a61d6b6d..b9663668e4 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -1,18 +1,18 @@ name: GitHub Actions Demo run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 -on: [push] +on: + push: + branches: + - cyro/feat/libheif-build-actions + jobs: - Explore-GitHub-Actions: - runs-on: ubuntu-latest - steps: - - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." - - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" - - run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." - - name: Check out repository code - uses: actions/checkout@v4 - - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." - - run: echo "🖥️ The workflow is now ready to test your code on the runner." - - name: List files in the repository - run: | - ls ${{ github.workspace }} - - run: echo "🍏 This job's status is ${{ job.status }}." + Build-Libheif-All-Platforms: + runs-on: ubuntu-latest + steps: + - name: Check out repository code + uses: actions/checkout@v4 + - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." + - name: List files in the repository + run: | + ls ${{ github.workspace }} + - run: echo "🍏 This job's status is ${{ job.status }}." From 70efe2d623be6d0f09a0ab8afbc52ee6f4963f15 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:18:19 -0500 Subject: [PATCH 03/58] chore(libheifactions)#: Test build steps --- .github/workflows/test-action.yml | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index b9663668e4..87a72c52bb 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -11,8 +11,26 @@ jobs: steps: - name: Check out repository code uses: actions/checkout@v4 + - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." - - name: List files in the repository + + - name: "CD into repo directory" run: | - ls ${{ github.workspace }} - - run: echo "🍏 This job's status is ${{ job.status }}." + cd ${{ github.workspace }} + + - name: "Make build directory" + run: mkdir build + + - name: Create output directory variable + run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" + + - name: CD into build directory + run: cd build + + - name: Configure CMake + run: cmake --preset=release-noplugins .. + + - name: Build libheif + run: make + + - run: From fff72d337692704360e72dc93a3c69cfe9d053a1 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:20:21 -0500 Subject: [PATCH 04/58] chore(libheifactions)#: Remove hanging run tag --- .github/workflows/test-action.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 87a72c52bb..798aa23b88 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -11,14 +11,14 @@ jobs: steps: - name: Check out repository code uses: actions/checkout@v4 - + - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." - name: "CD into repo directory" run: | cd ${{ github.workspace }} - - name: "Make build directory" + - name: Make build directory run: mkdir build - name: Create output directory variable @@ -32,5 +32,3 @@ jobs: - name: Build libheif run: make - - - run: From e2e4b5ef0133c1fdb94a949a7c6ad768c77b9ff4 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:25:26 -0500 Subject: [PATCH 05/58] chore(libheifactions)#: List dir contents for debug --- .github/workflows/test-action.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 798aa23b88..cfa1f8f776 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -1,5 +1,5 @@ -name: GitHub Actions Demo -run-name: ${{ github.actor }} is testing out GitHub Actions 🚀 +name: Build libheif +run-name: ${{ github.actor }} is building libheif on: push: branches: @@ -12,11 +12,14 @@ jobs: - name: Check out repository code uses: actions/checkout@v4 - - run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." + - run: echo "The ${{ github.repository }} cloned" - name: "CD into repo directory" run: | cd ${{ github.workspace }} + + - name: "[Debug] List directory contents" + run: "ls -lah" - name: Make build directory run: mkdir build From 87a8e7f7d1417ca9a9244fc4938e1a2df3433e57 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:30:12 -0500 Subject: [PATCH 06/58] chore(libheifactions)#: Use absolute path for cmake --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index cfa1f8f776..abb5c924cd 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -31,7 +31,7 @@ jobs: run: cd build - name: Configure CMake - run: cmake --preset=release-noplugins .. + run: cmake --preset=release-noplugins ${{ github.workspace }} - name: Build libheif run: make From c25ed0021240d97662dc294980f54bacfc89e666 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:36:30 -0500 Subject: [PATCH 07/58] chore(libheifactions)#: Test artifact upload --- .github/workflows/test-action.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index abb5c924cd..58235bdf3e 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -35,3 +35,9 @@ jobs: - name: Build libheif run: make + + - name: Archive and put a pretty bow on it + uses: actions/upload-artifact@v4 + with: + name: libheif + path: ./out From 6a435ef0c74aaaf8746c84ad314820853ac9b702 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:40:43 -0500 Subject: [PATCH 08/58] chore(libheifactions)#: Make using all available runner threads and properly use build output variable for archiving --- .github/workflows/test-action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 58235bdf3e..e672e5e8ab 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -34,10 +34,10 @@ jobs: run: cmake --preset=release-noplugins ${{ github.workspace }} - name: Build libheif - run: make + run: make -j$(grep -c processor /proc/cpuinfo) - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: name: libheif - path: ./out + path: $build-output-dir/out From b56d8154c2e57c70b9618a08e8ed96ad7c9b5712 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:43:33 -0500 Subject: [PATCH 09/58] chore(libheifactions)#: Adjust archive directory target --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index e672e5e8ab..d2f7c56b4b 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -40,4 +40,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: libheif - path: $build-output-dir/out + path: $build-output-dir/libheif From 5f7117e1c5f29843bdb7da14c2b0e746e2aec910 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:47:08 -0500 Subject: [PATCH 10/58] chore(libheifactions)#: Maybe you do it this way instead --- .github/workflows/test-action.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index d2f7c56b4b..99f9873e48 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -25,6 +25,7 @@ jobs: run: mkdir build - name: Create output directory variable + id: buildoutput run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" - name: CD into build directory @@ -40,4 +41,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: libheif - path: $build-output-dir/libheif + path: ${{ steps.buildoutput.outputs.build-output-dir }} From aba351cc64e410d962fa4c58515239ba765d501d Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:50:41 -0500 Subject: [PATCH 11/58] chore(libheifactions)#: More debug --- .github/workflows/test-action.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 99f9873e48..9ed0a8977e 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -37,6 +37,12 @@ jobs: - name: Build libheif run: make -j$(grep -c processor /proc/cpuinfo) + - name: "[Debug] List build directory contents again" + run: ls -lah + + - name: "[Debug] List libheif directory" + run: ls -lah ./libheif + - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: From df33e073371f12aca372b74eaff0fa19435b1811 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:55:37 -0500 Subject: [PATCH 12/58] chore(libheifactions)#: Add working directories since cd doesn't stick per step --- .github/workflows/test-action.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 9ed0a8977e..e1fc9a6234 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -28,19 +28,20 @@ jobs: id: buildoutput run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" - - name: CD into build directory - run: cd build - - name: Configure CMake - run: cmake --preset=release-noplugins ${{ github.workspace }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + run: cmake --preset=release-noplugins .. - name: Build libheif + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: make -j$(grep -c processor /proc/cpuinfo) - name: "[Debug] List build directory contents again" + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: ls -lah - name: "[Debug] List libheif directory" + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: ls -lah ./libheif - name: Archive and put a pretty bow on it From be54ab003d9303b633b86a5a42321d949cea1cfb Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 24 Jul 2024 18:58:23 -0500 Subject: [PATCH 13/58] chore(libheifactions)#: Adjust archive target --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index e1fc9a6234..2072868789 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -48,4 +48,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: libheif - path: ${{ steps.buildoutput.outputs.build-output-dir }} + path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif From 269c05627c823b5f1619421c565a49f521332372 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 16:57:29 -0500 Subject: [PATCH 14/58] chore(libheifactions)#: Test build matrix --- .github/workflows/test-action.yml | 40 +++++++++++++++++++++++-------- 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 2072868789..4414d5e7e9 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -7,19 +7,39 @@ on: jobs: Build-Libheif-All-Platforms: - runs-on: ubuntu-latest + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest] + build_type: [Release] + c_compiler: [clang, cl] + include: + - os: windows-latest + c_compiler: cl + cpp_compiler: cl + dir_list: dir + + - os: ubuntu-latest + c_compiler: clang + cpp_compiler: clang + dir_list: ls -lah + exclude: + - os: windows-latest + c_compiler: clang + cpp_compiler: clang + + - os: ubuntu-latest + c_compiler: cl + cpp_compiler: cl + steps: - name: Check out repository code uses: actions/checkout@v4 - - run: echo "The ${{ github.repository }} cloned" - - - name: "CD into repo directory" - run: | - cd ${{ github.workspace }} + - run: echo "${{ github.repository }} cloned" - name: "[Debug] List directory contents" - run: "ls -lah" + run: ${{ matrix.dir_list }} - name: Make build directory run: mkdir build @@ -34,15 +54,15 @@ jobs: - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: make -j$(grep -c processor /proc/cpuinfo) + run: make - name: "[Debug] List build directory contents again" working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: ls -lah + run: ${{ matrix.dir_list }} - name: "[Debug] List libheif directory" working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: ls -lah ./libheif + run: ${{ matrix.dir_list }} "./libheif" - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 From 540b8aca65896e16cb4e0d682a507f77415b6109 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 16:58:48 -0500 Subject: [PATCH 15/58] chore(libheifactions)#: Fix missing matrix keys --- .github/workflows/test-action.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 4414d5e7e9..d789bdffe3 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -13,6 +13,8 @@ jobs: os: [ubuntu-latest, windows-latest] build_type: [Release] c_compiler: [clang, cl] + cpp_compiler: [clang, cl] + dir_list: [dir, ls -lah] include: - os: windows-latest c_compiler: cl From 5bedf25bce4e68f27557c08808dfc119d47d10f0 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:02:27 -0500 Subject: [PATCH 16/58] chore(libheifactions)#: Exclude dir keys from mutually-exclusive operating systems --- .github/workflows/test-action.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index d789bdffe3..72dcc137aa 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -29,10 +29,12 @@ jobs: - os: windows-latest c_compiler: clang cpp_compiler: clang + dir_list: ls -lah - os: ubuntu-latest c_compiler: cl cpp_compiler: cl + dir_list: dir steps: - name: Check out repository code From a60de969c4a27d4b5c9d49cfaac13dd8056f7d07 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:08:21 -0500 Subject: [PATCH 17/58] chore(libheifactions)#: Use separate jobs instead of a matrix --- .github/workflows/test-action.yml | 75 ++++++++++++++++++------------- 1 file changed, 45 insertions(+), 30 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 72dcc137aa..e67e2198be 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -6,35 +6,49 @@ on: - cyro/feat/libheif-build-actions jobs: - Build-Libheif-All-Platforms: - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-latest, windows-latest] - build_type: [Release] - c_compiler: [clang, cl] - cpp_compiler: [clang, cl] - dir_list: [dir, ls -lah] - include: - - os: windows-latest - c_compiler: cl - cpp_compiler: cl - dir_list: dir + Build-Linux: + runs-on: ubuntu-latest + + steps: + - name: Check out repository code + uses: actions/checkout@v4 - - os: ubuntu-latest - c_compiler: clang - cpp_compiler: clang - dir_list: ls -lah - exclude: - - os: windows-latest - c_compiler: clang - cpp_compiler: clang - dir_list: ls -lah + - run: echo "${{ github.repository }} cloned" + + - name: "[Debug] List directory contents" + run: ls -lah + + - name: Make build directory + run: mkdir build + + - name: Create output directory variable + id: buildoutput + run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" + + - name: Configure CMake + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + run: cmake --preset=release-noplugins .. - - os: ubuntu-latest - c_compiler: cl - cpp_compiler: cl - dir_list: dir + - name: Build libheif + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + run: make + + - name: "[Debug] List build directory contents again" + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + run: ls -lah + + - name: "[Debug] List libheif directory" + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + run: "ls -lah ./libheif" + + - name: Archive and put a pretty bow on it + uses: actions/upload-artifact@v4 + with: + name: libheif + path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif + + Build-Windows: + runs-on: windows-latest steps: - name: Check out repository code @@ -43,7 +57,7 @@ jobs: - run: echo "${{ github.repository }} cloned" - name: "[Debug] List directory contents" - run: ${{ matrix.dir_list }} + run: dir - name: Make build directory run: mkdir build @@ -62,14 +76,15 @@ jobs: - name: "[Debug] List build directory contents again" working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: ${{ matrix.dir_list }} + run: dir - name: "[Debug] List libheif directory" working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: ${{ matrix.dir_list }} "./libheif" + run: dir "./libheif" - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: name: libheif path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif + From 9c3a6dfecf8c242a793fa1fc21c80c0025ffaccc Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:15:09 -0500 Subject: [PATCH 18/58] chore(libheifactions)#: Explicitly specify bash shell for creation of build output variable --- .github/workflows/test-action.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index e67e2198be..a86f17491a 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -23,7 +23,8 @@ jobs: - name: Create output directory variable id: buildoutput - run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" + shell: bash + run: echo "build-output-dir='${{ github.workspace }}/build'" >> "$GITHUB_OUTPUT" - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} @@ -64,6 +65,7 @@ jobs: - name: Create output directory variable id: buildoutput + shell: bash run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" - name: Configure CMake From 381545562f651a72fa0bc7f6a69633b7b05cee29 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:25:30 -0500 Subject: [PATCH 19/58] chore(libheifactions)#Use powershell syntax for output directory variable instead of bash on windows configiguration --- .github/workflows/test-action.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index a86f17491a..854d755c98 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -23,7 +23,6 @@ jobs: - name: Create output directory variable id: buildoutput - shell: bash run: echo "build-output-dir='${{ github.workspace }}/build'" >> "$GITHUB_OUTPUT" - name: Configure CMake @@ -50,7 +49,7 @@ jobs: Build-Windows: runs-on: windows-latest - + steps: - name: Check out repository code uses: actions/checkout@v4 @@ -65,8 +64,7 @@ jobs: - name: Create output directory variable id: buildoutput - shell: bash - run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" + run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 3c326e7cc526e54eddbc7e4dd3d95532c64080a6 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:27:52 -0500 Subject: [PATCH 20/58] chore(libheifactions)#: Fix mislabeled build output variable usage --- .github/workflows/test-action.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 854d755c98..1517f6f68b 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -26,26 +26,26 @@ jobs: run: echo "build-output-dir='${{ github.workspace }}/build'" >> "$GITHUB_OUTPUT" - name: Configure CMake - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + working-directory: ${{ steps.buildoutput.outputs.buildoutput }} run: cmake --preset=release-noplugins .. - name: Build libheif - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + working-directory: ${{ steps.buildoutput.outputs.buildoutput }} run: make - name: "[Debug] List build directory contents again" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + working-directory: ${{ steps.buildoutput.outputs.buildoutput }} run: ls -lah - name: "[Debug] List libheif directory" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + working-directory: ${{ steps.buildoutput.outputs.buildoutput }} run: "ls -lah ./libheif" - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: name: libheif - path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif + path: ${{ steps.buildoutput.outputs.buildoutput }}/libheif Build-Windows: runs-on: windows-latest @@ -67,24 +67,24 @@ jobs: run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" - name: Configure CMake - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + working-directory: ${{ steps.buildoutput.outputs.buildoutput }} run: cmake --preset=release-noplugins .. - name: Build libheif - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + working-directory: ${{ steps.buildoutput.outputs.buildoutput }} run: make - name: "[Debug] List build directory contents again" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + working-directory: ${{ steps.buildoutput.outputs.buildoutput }} run: dir - name: "[Debug] List libheif directory" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + working-directory: ${{ steps.buildoutput.outputs.buildoutput }} run: dir "./libheif" - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: name: libheif - path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif + path: ${{ steps.buildoutput.outputs.buildoutput }}/libheif From 84bfbcb30693fc25c9da2febed32a0a380b67a85 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:33:31 -0500 Subject: [PATCH 21/58] chore(libheifactions)#: Fix sneaky quotes messing up the build output path --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 1517f6f68b..34585e740f 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -23,7 +23,7 @@ jobs: - name: Create output directory variable id: buildoutput - run: echo "build-output-dir='${{ github.workspace }}/build'" >> "$GITHUB_OUTPUT" + run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.buildoutput }} From ae96191f0fe6efa848068539526a9878349b685d Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:36:48 -0500 Subject: [PATCH 22/58] chore(libheifactions)#: Re-un-fix the actually incorrect usage of the build output variable --- .github/workflows/test-action.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 34585e740f..a24ccd830b 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -26,26 +26,26 @@ jobs: run: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" - name: Configure CMake - working-directory: ${{ steps.buildoutput.outputs.buildoutput }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: cmake --preset=release-noplugins .. - name: Build libheif - working-directory: ${{ steps.buildoutput.outputs.buildoutput }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: make - name: "[Debug] List build directory contents again" - working-directory: ${{ steps.buildoutput.outputs.buildoutput }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: ls -lah - name: "[Debug] List libheif directory" - working-directory: ${{ steps.buildoutput.outputs.buildoutput }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: "ls -lah ./libheif" - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: name: libheif - path: ${{ steps.buildoutput.outputs.buildoutput }}/libheif + path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif Build-Windows: runs-on: windows-latest @@ -67,24 +67,24 @@ jobs: run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" - name: Configure CMake - working-directory: ${{ steps.buildoutput.outputs.buildoutput }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: cmake --preset=release-noplugins .. - name: Build libheif - working-directory: ${{ steps.buildoutput.outputs.buildoutput }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: make - name: "[Debug] List build directory contents again" - working-directory: ${{ steps.buildoutput.outputs.buildoutput }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: dir - name: "[Debug] List libheif directory" - working-directory: ${{ steps.buildoutput.outputs.buildoutput }} + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: dir "./libheif" - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: name: libheif - path: ${{ steps.buildoutput.outputs.buildoutput }}/libheif + path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif From 248905093822d339367044d91986d32d5fe608ab Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:44:08 -0500 Subject: [PATCH 23/58] chore(libheifactions)#: Add more logging for debug --- .github/workflows/test-action.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index a24ccd830b..e03167f980 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -5,6 +5,8 @@ on: branches: - cyro/feat/libheif-build-actions +# on: workflow_dispatch + jobs: Build-Linux: runs-on: ubuntu-latest @@ -69,6 +71,10 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: cmake --preset=release-noplugins .. + + - name: "[Debug] List build config" + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + run: dir - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 6352e83102ddeed0366da9695c08136d04cd654f Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:46:49 -0500 Subject: [PATCH 24/58] chore(libheifactions)#: Add more logging to linux build for debug --- .github/workflows/test-action.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index e03167f980..b4da43b313 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -30,6 +30,10 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: cmake --preset=release-noplugins .. + + - name: "[Debug] List build config" + working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} + run: ls -lah - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 5115dda4d6b7bdceab8022af34fd31c345478ce6 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:57:54 -0500 Subject: [PATCH 25/58] chore(libheifactions)#: Use cmake on windows to build the project instead --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index b4da43b313..7c121382be 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -82,7 +82,7 @@ jobs: - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: make + run: cmake --build . --config Release - name: "[Debug] List build directory contents again" working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 1e99ba54202b415d20687857c82237a2f5d59754 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 17:59:21 -0500 Subject: [PATCH 26/58] chore(libheifactions)#: Change archive target due to build process differences on windows --- .github/workflows/test-action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 7c121382be..65d2deecaf 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -90,11 +90,11 @@ jobs: - name: "[Debug] List libheif directory" working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: dir "./libheif" + run: dir "./libheif/Release" - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: name: libheif - path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif + path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif/Release From 6daf118b18874dd3aea5a8020e66d67ac027b8c2 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 25 Jul 2024 18:01:41 -0500 Subject: [PATCH 27/58] chore(libheifactions)#: Fix conflicting artifact names --- .github/workflows/test-action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 65d2deecaf..77ca9d8e2c 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -50,7 +50,7 @@ jobs: - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: - name: libheif + name: libheif-linux path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif Build-Windows: @@ -95,6 +95,6 @@ jobs: - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: - name: libheif + name: libheif-windows path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif/Release From fd0077a6cd620a140b0e10c2ee4e247e942723e0 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 16:47:06 -0500 Subject: [PATCH 28/58] chore(libheifactions)#: Try installing AOM on windows runner to see if it makes the library not broken --- .github/workflows/test-action.yml | 34 ++++--------------------------- 1 file changed, 4 insertions(+), 30 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 77ca9d8e2c..055e15c156 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -16,9 +16,6 @@ jobs: uses: actions/checkout@v4 - run: echo "${{ github.repository }} cloned" - - - name: "[Debug] List directory contents" - run: ls -lah - name: Make build directory run: mkdir build @@ -30,23 +27,11 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: cmake --preset=release-noplugins .. - - - name: "[Debug] List build config" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: ls -lah - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: make - - name: "[Debug] List build directory contents again" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: ls -lah - - - name: "[Debug] List libheif directory" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: "ls -lah ./libheif" - - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: @@ -61,9 +46,6 @@ jobs: uses: actions/checkout@v4 - run: echo "${{ github.repository }} cloned" - - - name: "[Debug] List directory contents" - run: dir - name: Make build directory run: mkdir build @@ -72,26 +54,18 @@ jobs: id: buildoutput run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" + - name: Grab AOM for basic AVIF encoding/decoding + working-directory: ${{ github.workspace }}/third-party + run: ./aom.cmd + - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: cmake --preset=release-noplugins .. - - - name: "[Debug] List build config" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: dir - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: cmake --build . --config Release - - name: "[Debug] List build directory contents again" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: dir - - - name: "[Debug] List libheif directory" - working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: dir "./libheif/Release" - - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: From 2b36df27ac1de6f4bb02bb0dd1981759ea9fd186 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 16:57:17 -0500 Subject: [PATCH 29/58] chore(libheifactions)#: Grab ninja beforehand so that AOM can be installed properly --- .github/workflows/test-action.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 055e15c156..ff850c68f8 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -54,6 +54,9 @@ jobs: id: buildoutput run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" + - name: Install ninja-build tool + uses: seanmiddleditch/gha-setup-ninja@v5 + - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party run: ./aom.cmd From a15d8ce66d1016e0fc3141921375ff7d2ccfe84d Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 16:58:01 -0500 Subject: [PATCH 30/58] chore(libheifactions)#: Remove trailing run --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index ff850c68f8..88cc0ed754 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -55,7 +55,7 @@ jobs: run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" - name: Install ninja-build tool - uses: seanmiddleditch/gha-setup-ninja@v5 + uses: seanmiddleditch/gha-setup-ninja@master - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party From 821313e4b2fac6a8f9d4e626452e1f895abe4a64 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 17:02:15 -0500 Subject: [PATCH 31/58] chore(libheifactions)#: Install nasm as a dependency for building AOM with ninja --- .github/workflows/test-action.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 88cc0ed754..41cf17032d 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -40,7 +40,6 @@ jobs: Build-Windows: runs-on: windows-latest - steps: - name: Check out repository code uses: actions/checkout@v4 @@ -56,6 +55,9 @@ jobs: - name: Install ninja-build tool uses: seanmiddleditch/gha-setup-ninja@master + + - name: Install nasm + uses: ilammy/setup-nasm@v1 - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party From e8bd120b3efd87810778298d91bff99e4738c0d5 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 17:11:33 -0500 Subject: [PATCH 32/58] chore(libheifactions)#: Move dependencies to the top, maybe that'll fix the weird path issue --- .github/workflows/test-action.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 41cf17032d..4c650d6b59 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -41,6 +41,10 @@ jobs: Build-Windows: runs-on: windows-latest steps: + - uses: ilammy/setup-nasm@v1 + - uses: seanmiddleditch/gha-setup-ninja@master + + - name: Check out repository code uses: actions/checkout@v4 @@ -53,12 +57,6 @@ jobs: id: buildoutput run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" - - name: Install ninja-build tool - uses: seanmiddleditch/gha-setup-ninja@master - - - name: Install nasm - uses: ilammy/setup-nasm@v1 - - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party run: ./aom.cmd From a86ef32325ed47a767ceae3a7587d09d2c723d13 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 17:15:00 -0500 Subject: [PATCH 33/58] chore(libheifactions)#: Try doing nasm and ninja setup just before aom --- .github/workflows/test-action.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 4c650d6b59..a88f518d5e 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -41,10 +41,6 @@ jobs: Build-Windows: runs-on: windows-latest steps: - - uses: ilammy/setup-nasm@v1 - - uses: seanmiddleditch/gha-setup-ninja@master - - - name: Check out repository code uses: actions/checkout@v4 @@ -57,6 +53,8 @@ jobs: id: buildoutput run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" + - uses: ilammy/setup-nasm@v1 + - uses: seanmiddleditch/gha-setup-ninja@master - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party run: ./aom.cmd From 620832d692a6f831acb27751c0c98c61e69714d6 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 17:25:59 -0500 Subject: [PATCH 34/58] chore(libheifactions)#: Display contents of ninja build file to figure out what is happening --- .github/workflows/test-action.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index a88f518d5e..ec4578a2ef 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -57,7 +57,9 @@ jobs: - uses: seanmiddleditch/gha-setup-ninja@master - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party - run: ./aom.cmd + run: | + ./aom.cmd + cat ./build.libavif - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 9f880f7fa3be6e9cb85fa5c7f8efb4a1d421c410 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 17:29:35 -0500 Subject: [PATCH 35/58] chore(libheifactions)#: Actually cat this time --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index ec4578a2ef..a0ed597034 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -59,7 +59,7 @@ jobs: working-directory: ${{ github.workspace }}/third-party run: | ./aom.cmd - cat ./build.libavif + cat ./aom/build.libavif - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 47711a6d0ac3c1b8101c79fd49c065ec177d5768 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 17:34:22 -0500 Subject: [PATCH 36/58] chore(libheifactions)#: Apparently build.libavif is not a file --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index a0ed597034..4bcfa45565 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -59,7 +59,7 @@ jobs: working-directory: ${{ github.workspace }}/third-party run: | ./aom.cmd - cat ./aom/build.libavif + dir ./aom/build.libavif - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 82769abf8cade295a4edfae225ed59e29bf72f28 Mon Sep 17 00:00:00 2001 From: Cyro Date: Mon, 29 Jul 2024 17:36:29 -0500 Subject: [PATCH 37/58] chore(libheifactions)#: See what's going wrong in build.ninja --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 4bcfa45565..f353c27d0b 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -59,7 +59,7 @@ jobs: working-directory: ${{ github.workspace }}/third-party run: | ./aom.cmd - dir ./aom/build.libavif + cat ./aom/build.libavif/build.ninja - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From fcd898088d0605718ebd9ca9f557a7019f6006c4 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Tue, 6 Aug 2024 14:58:17 -0500 Subject: [PATCH 38/58] chore(libheifactions)#: Try using bash for grabbing AOM to avoid weirdness with $ parsing --- .github/workflows/test-action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index f353c27d0b..960a6ade16 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -57,6 +57,7 @@ jobs: - uses: seanmiddleditch/gha-setup-ninja@master - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party + shell: bash run: | ./aom.cmd cat ./aom/build.libavif/build.ninja From ed4a6b77e0fdf8e4ec1d38d94cbb6e54dd41ca0e Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Tue, 6 Aug 2024 15:04:01 -0500 Subject: [PATCH 39/58] chore(libheifactions)#: Explicitly call bash when running aom.cmd to make sure it's not just calling command prompt or powershell to run it --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 960a6ade16..d7fe38cf2d 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -59,7 +59,7 @@ jobs: working-directory: ${{ github.workspace }}/third-party shell: bash run: | - ./aom.cmd + bash aom.cmd cat ./aom/build.libavif/build.ninja - name: Configure CMake From b86e26c5165f81a2614a03ee8d1d08dca8f1bc9d Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Tue, 6 Aug 2024 15:15:21 -0500 Subject: [PATCH 40/58] chore(libheifactions)#: Add pkg config path to cmake command to try and make it discover AOM --- .github/workflows/test-action.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index d7fe38cf2d..201e1b5a4f 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -60,11 +60,10 @@ jobs: shell: bash run: | bash aom.cmd - cat ./aom/build.libavif/build.ninja - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: cmake --preset=release-noplugins .. + run: $Env:PKG_CONFIG_PATH = "${{ github.workspace }}/third-party/aom/dist/lib/pkgconfig"; cmake --preset=release-noplugins .. - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 45fcc35fdec17eb01ffb3cf50622a1e30b6e2a22 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Tue, 6 Aug 2024 15:36:12 -0500 Subject: [PATCH 41/58] chore(libheifactions)#: Add AOM pkgconfig to cmake file since it's the only way it can be built anyways --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 44aa369827..faf54e020a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,6 +7,7 @@ project(libheif LANGUAGES C CXX VERSION 1.17.6) # With v2.0.0, we can reset this to more closely follow the real version name, i.e. "2.0.0". # CMake 3.17.0 added "MACHO_COMPATIBILITY_VERSION", but we are currently stuck at cmake 3.16.3. set(MACOS_COMPATIBLE_VERSION "17.0.0") +set(ENV{PKG_CONFIG_PATH} "${CMAKE_SOURCE_DIR}/third-party/aom/dist/lib/pkgconfig") # https://cmake.org/cmake/help/v3.1/policy/CMP0054.html cmake_policy(VERSION 3.0...3.22) From 1435b7157874dc73aed34a69dcf0cdba7f676deb Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Tue, 6 Aug 2024 18:32:16 -0500 Subject: [PATCH 42/58] chore(libheifactions)#: Maybe try putting the pkg config in the presets --- CMakePresets.json | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakePresets.json b/CMakePresets.json index b62e2dd2bd..af05858f23 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -120,6 +120,7 @@ "WITH_OpenJPEG_DECODER" : "OFF", "WITH_OpenJPEG_ENCODER" : "OFF", "WITH_FFMPEG_DECODER" : "OFF", + "PKG_CONFIG_PATH": "third-party/aom/dist/lib/pkgconfig", "WITH_REDUCED_VISIBILITY" : "ON", "WITH_DEFLATE_HEADER_COMPRESSION" : "OFF", From 7db48e7dfa02b4dc13a32c743cc2807846c122ea Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Tue, 6 Aug 2024 18:40:43 -0500 Subject: [PATCH 43/58] chore(libheifactions)#: More explicit definition of the variable might work? --- .github/workflows/test-action.yml | 4 +++- CMakeLists.txt | 1 - CMakePresets.json | 1 - 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 201e1b5a4f..372528c50e 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -63,7 +63,9 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} - run: $Env:PKG_CONFIG_PATH = "${{ github.workspace }}/third-party/aom/dist/lib/pkgconfig"; cmake --preset=release-noplugins .. + run: | + echo "${{ github.workspace }}\third-party\aom\dist\lib\pkgconfig" >> "$Env:PKG_CONFIG_PATH" + cmake --preset=release-noplugins .. - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} diff --git a/CMakeLists.txt b/CMakeLists.txt index faf54e020a..44aa369827 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,7 +7,6 @@ project(libheif LANGUAGES C CXX VERSION 1.17.6) # With v2.0.0, we can reset this to more closely follow the real version name, i.e. "2.0.0". # CMake 3.17.0 added "MACHO_COMPATIBILITY_VERSION", but we are currently stuck at cmake 3.16.3. set(MACOS_COMPATIBLE_VERSION "17.0.0") -set(ENV{PKG_CONFIG_PATH} "${CMAKE_SOURCE_DIR}/third-party/aom/dist/lib/pkgconfig") # https://cmake.org/cmake/help/v3.1/policy/CMP0054.html cmake_policy(VERSION 3.0...3.22) diff --git a/CMakePresets.json b/CMakePresets.json index af05858f23..b62e2dd2bd 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -120,7 +120,6 @@ "WITH_OpenJPEG_DECODER" : "OFF", "WITH_OpenJPEG_ENCODER" : "OFF", "WITH_FFMPEG_DECODER" : "OFF", - "PKG_CONFIG_PATH": "third-party/aom/dist/lib/pkgconfig", "WITH_REDUCED_VISIBILITY" : "ON", "WITH_DEFLATE_HEADER_COMPRESSION" : "OFF", From eca445cc726aa1d93882bb8dc14a104869e3e748 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Wed, 7 Aug 2024 16:29:51 -0500 Subject: [PATCH 44/58] chore(libheifactions)#: Try using AOM_INCLUDE_DIR on the root AOM folder --- .github/workflows/test-action.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 372528c50e..cdceb685fb 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -64,8 +64,7 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - echo "${{ github.workspace }}\third-party\aom\dist\lib\pkgconfig" >> "$Env:PKG_CONFIG_PATH" - cmake --preset=release-noplugins .. + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 8a3e72bc14c984284d6c145ff9d70b4ba61bf56a Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 15:59:46 -0500 Subject: [PATCH 45/58] chore(libheifactions)#: Point more directly at the AOM build files to see if maybe that works --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index cdceb685fb..9352e88cdb 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -64,7 +64,7 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom\aom" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 3c15cd6f3414a1251387de323b5c466a29cbc5cc Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 16:09:36 -0500 Subject: [PATCH 46/58] chore(libheifactions)#: Point both the library and include flags at the same folder so it might magically figure it out --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 9352e88cdb..b8fce05cc6 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -64,7 +64,7 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom\aom" + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 17a925b226202f34d8f06a7412ad94128b3611eb Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 16:21:40 -0500 Subject: [PATCH 47/58] chore(libheifactions)#: Point library path at static library directly --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index b8fce05cc6..d9f6a6db81 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -64,7 +64,7 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom" + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\build.libavif\libaom.a" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From e791cdbf201cff2bb892d2646a82160f819dadd9 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 16:52:38 -0500 Subject: [PATCH 48/58] chore(libheifactions)#: Point library path at libavif build folder instead to see if it'll find the right stuff --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index d9f6a6db81..a552e397f5 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -64,7 +64,7 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\build.libavif\libaom.a" + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\build.libavif" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From b95cd85806702a37ea71b6ffe0230910a986c55d Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 17:11:11 -0500 Subject: [PATCH 49/58] chore(libheifactions)#: Maybe this one is better? --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index a552e397f5..b413088437 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -64,7 +64,7 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\build.libavif" + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\dist\lib\libaom.a" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 156603a3871a40ffd161490c9b233cd9ce8d0d3d Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 17:40:11 -0500 Subject: [PATCH 50/58] chore(libheifactions)#: Use .lib extension for windows instead of .a which is only for linux --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index b413088437..d5572bdbc8 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -64,7 +64,7 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\dist\lib\libaom.a" + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\dist\lib\libaom.lib" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 929c7a0a2adafc162adbd4733e3f139925627eec Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 18:03:27 -0500 Subject: [PATCH 51/58] chore(libheifactions)#: Try running with powershell in vain --- .github/workflows/test-action.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index d5572bdbc8..2ae4df56d5 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -57,9 +57,8 @@ jobs: - uses: seanmiddleditch/gha-setup-ninja@master - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party - shell: bash run: | - bash aom.cmd + .\aom.cmd - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From a7ece4ef5fa0cc7dd0c7f8c8765d387ed4c87c6d Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 18:17:59 -0500 Subject: [PATCH 52/58] chore(libheifactions)#: Don't even bother with the AOM script and just do it in the action --- .github/workflows/test-action.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 2ae4df56d5..4801f42a56 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -58,7 +58,15 @@ jobs: - name: Grab AOM for basic AVIF encoding/decoding working-directory: ${{ github.workspace }}/third-party run: | - .\aom.cmd + git clone -b v3.9.0 --depth 1 https://aomedia.googlesource.com/aom + + cd aom + + cmake -S . -B build.libavif -G Ninja -DCMAKE_INSTALL_PREFIX="${{ github.workspace }}/third-party/aom/dist" -DCMAKE_BUILD_TYPE=Release -DENABLE_DOCS=0 -DENABLE_EXAMPLES=0 -DENABLE_TESTDATA=0 -DENABLE_TESTS=0 -DENABLE_TOOLS=0 + ninja -C build.libavif + ninja -C build.libavif install + + cd .. - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From 3ff8214705b6b1096a0b175c2be0e0dec8168ad3 Mon Sep 17 00:00:00 2001 From: BlueCyro Date: Thu, 8 Aug 2024 18:27:15 -0500 Subject: [PATCH 53/58] chore(libheifactions)#: Try the .a file again now that bash isn't being used --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 4801f42a56..64d6477a43 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -71,7 +71,7 @@ jobs: - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\dist\lib\libaom.lib" + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\dist\lib\libaom.a" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} From b72b8e567ac28b8b1a05ad9208b5ec4e9efa017c Mon Sep 17 00:00:00 2001 From: "Jae Lo Presti [j4]" Date: Mon, 16 Sep 2024 04:29:26 +0300 Subject: [PATCH 54/58] ci: working build of library + AOM --- .github/workflows/test-action.yml | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 64d6477a43..262710b2e6 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -2,10 +2,7 @@ name: Build libheif run-name: ${{ github.actor }} is building libheif on: push: - branches: - - cyro/feat/libheif-build-actions - -# on: workflow_dispatch + workflow_dispatch: jobs: Build-Linux: @@ -44,8 +41,6 @@ jobs: - name: Check out repository code uses: actions/checkout@v4 - - run: echo "${{ github.repository }} cloned" - - name: Make build directory run: mkdir build @@ -54,24 +49,29 @@ jobs: run: echo "build-output-dir=${{ github.workspace }}/build" >> "$Env:GITHUB_OUTPUT" - uses: ilammy/setup-nasm@v1 - - uses: seanmiddleditch/gha-setup-ninja@master - - name: Grab AOM for basic AVIF encoding/decoding - working-directory: ${{ github.workspace }}/third-party + + - name: Compile AOM run: | - git clone -b v3.9.0 --depth 1 https://aomedia.googlesource.com/aom + cd "${{ github.workspace }}\third-party" + + git clone -b v3.6.0 --depth 1 https://aomedia.googlesource.com/aom cd aom - cmake -S . -B build.libavif -G Ninja -DCMAKE_INSTALL_PREFIX="${{ github.workspace }}/third-party/aom/dist" -DCMAKE_BUILD_TYPE=Release -DENABLE_DOCS=0 -DENABLE_EXAMPLES=0 -DENABLE_TESTDATA=0 -DENABLE_TESTS=0 -DENABLE_TOOLS=0 - ninja -C build.libavif - ninja -C build.libavif install + mkdir buildx - cd .. + cd buildx + + cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_DOCS=0 -DENABLE_EXAMPLES=0 -DENABLE_TESTDATA=0 -DENABLE_TESTS=0 -DENABLE_TOOLS=0 .. + + cmake --build . --config Release + + tree /f . - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | - cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\dist\lib\libaom.a" + cmake --preset=release-noplugins .. -DAOM_INCLUDE_DIR="${{ github.workspace }}\third-party\aom" -DAOM_LIBRARY="${{ github.workspace }}\third-party\aom\buildx\Release\aom.lib" - name: Build libheif working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} @@ -82,4 +82,3 @@ jobs: with: name: libheif-windows path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif/Release - From 5d8e4ec55ce79c0ebeacfa1732267898f9044f23 Mon Sep 17 00:00:00 2001 From: "Jae Lo Presti [j4]" Date: Mon, 16 Sep 2024 04:30:13 +0300 Subject: [PATCH 55/58] chore: move workflow to more explicit name --- .github/workflows/{test-action.yml => ydms-build.yaml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{test-action.yml => ydms-build.yaml} (100%) diff --git a/.github/workflows/test-action.yml b/.github/workflows/ydms-build.yaml similarity index 100% rename from .github/workflows/test-action.yml rename to .github/workflows/ydms-build.yaml From dfb183b30bf2732d22e0c22415a8e0cd370b6e5c Mon Sep 17 00:00:00 2001 From: "Jae Lo Presti [j4]" Date: Mon, 16 Sep 2024 04:36:03 +0300 Subject: [PATCH 56/58] ci: cleanup AOM build command --- .github/workflows/ydms-build.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/ydms-build.yaml b/.github/workflows/ydms-build.yaml index 262710b2e6..aa9ede88f5 100644 --- a/.github/workflows/ydms-build.yaml +++ b/.github/workflows/ydms-build.yaml @@ -66,8 +66,6 @@ jobs: cmake --build . --config Release - tree /f . - - name: Configure CMake working-directory: ${{ steps.buildoutput.outputs.build-output-dir }} run: | From e536fb6c3d7055871ab92cc5b64462c2a2aafa4a Mon Sep 17 00:00:00 2001 From: "Jae Lo Presti [j4]" Date: Fri, 17 Jan 2025 17:55:08 +0200 Subject: [PATCH 57/58] feat: native ARM builds --- .github/workflows/ydms-build.yaml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ydms-build.yaml b/.github/workflows/ydms-build.yaml index aa9ede88f5..9297bb17a4 100644 --- a/.github/workflows/ydms-build.yaml +++ b/.github/workflows/ydms-build.yaml @@ -6,13 +6,24 @@ on: jobs: Build-Linux: - runs-on: ubuntu-latest + strategy: + matrix: + osver: [ubuntu-latest, ubuntu-24.04-arm] + + runs-on: ${{ matrix.osver }} steps: - name: Check out repository code uses: actions/checkout@v4 - - run: echo "${{ github.repository }} cloned" + - name: Set dist name + run: | + if ${{ matrix.osver == 'ubuntu-24.04-arm' }}; then + echo "distname=libheif-linux-arm" >> "$GITHUB_ENV" + else + echo "distname=libheif-linux" >> "$GITHUB_ENV" + fi + - name: Make build directory run: mkdir build @@ -32,7 +43,7 @@ jobs: - name: Archive and put a pretty bow on it uses: actions/upload-artifact@v4 with: - name: libheif-linux + name: ${{ env.distname }} path: ${{ steps.buildoutput.outputs.build-output-dir }}/libheif Build-Windows: From 69032c2eed3578c21ca9b2b60f7a4ef00a908667 Mon Sep 17 00:00:00 2001 From: "Jae Lo Presti [j4]" Date: Fri, 17 Jan 2025 17:59:45 +0200 Subject: [PATCH 58/58] feat: install libaom --- .github/workflows/ydms-build.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/ydms-build.yaml b/.github/workflows/ydms-build.yaml index 9297bb17a4..4f995ed68e 100644 --- a/.github/workflows/ydms-build.yaml +++ b/.github/workflows/ydms-build.yaml @@ -24,6 +24,11 @@ jobs: echo "distname=libheif-linux" >> "$GITHUB_ENV" fi + - name: Install libaom + run: | + sudo apt-get update + sudo apt-get install -y libaom-dev + - name: Make build directory run: mkdir build