Canon SDK support for Linux #52
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tahoma2D macOS Build | |
on: [push, pull_request] | |
jobs: | |
macOS: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
lfs: true | |
- name: Install Dependencies | |
run: | | |
ci-scripts/osx/tahoma-install.sh | |
brew install ccache | |
mkdir /Users/runner/.ccache | |
- uses: actions/cache@v4 | |
with: | |
path: | | |
/Users/runner/.ccache | |
/Users/runner/work/tahoma2d/taoma2d/thirdparty/aom | |
/Users/runner/work/tahoma2d/taoma2d/thirdparty/ffmpeg | |
/Users/runner/work/tahoma2d/taoma2d/thirdparty/opencv | |
key: ${{ runner.os }}-${{ github.sha }} | |
restore-keys: ${{ runner.os }}- | |
- name: Get CanonSDK | |
if: ${{ (github.repository_owner == 'tahoma2d' || github.repository_owner == 'manongjohn') && github.event_name == 'push' }} | |
run: | | |
wget --header="Authorization: token ${{ secrets.TAHOMA2D_TOKEN }}" --header="Accept:application/octet-stream" -O EDSDK_Macintosh.zip https://api.github.com/repos/tahoma2d/CanonSDK/releases/assets/223415237 | |
unzip EDSDK_Macintosh.zip -d EDSDK_Macintosh | |
unzip EDSDK_Macintosh/Macintosh.dmg.zip -d EDSDK_Macintosh | |
7z x EDSDK_Macintosh/Macintosh.dmg -oEDSDK_Macintosh | |
mv EDSDK_Macintosh/Macintosh/EDSDK/* thirdparty/canon | |
cd thirdparty/canon/framework/EDSDK.framework/Versions | |
rm Current | |
ln -s A Current | |
cd .. | |
rm Resources EDSDK | |
ln -s Versions/Current/Resources Resources | |
ln -s Versions/Current/EDSDK EDSDK | |
- name: Get 3rd Party Apps | |
run: | | |
ci-scripts/osx/tahoma-get3rdpartyapps.sh | |
- name: Build ffmpeg | |
run: | | |
export PATH="/usr/local/opt/ccache/libexec:$PATH" | |
ci-scripts/osx/tahoma-buildffmpeg.sh | |
- name: Build OpenCV | |
run: | | |
export PATH="/usr/local/opt/ccache/libexec:$PATH" | |
ci-scripts/osx/tahoma-buildopencv.sh | |
- name: Build libgphoto2 | |
run: | | |
export PATH="/usr/local/opt/ccache/libexec:$PATH" | |
ci-scripts/osx/tahoma-buildlibgphoto2.sh | |
- name: Build Tahoma2D | |
run: | | |
export PATH="/usr/local/opt/ccache/libexec:$PATH" | |
ci-scripts/osx/tahoma-build.sh | |
- name: Create Package | |
run: bash ./ci-scripts/osx/tahoma-buildpkg.sh | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: Tahoma2D-portable-osx.dmg | |
path: toonz/build/Tahoma2D-portable-osx.dmg | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: Tahoma2D-install-osx.pkg | |
path: toonz/build/Tahoma2D-install-osx.pkg | |
- name: Get Nightly Release Date | |
if: ${{ github.repository_owner == 'tahoma2d' && github.event_name == 'push' && github.ref == 'refs/heads/master' }} | |
run: | | |
echo "NIGHTLYDATE=$(date '+%Y-%m-%d')" >> $GITHUB_ENV | |
echo "NIGHTLYDATETIME=$(date '+%Y-%m-%d %H:%M:%S %Z')" >> $GITHUB_ENV | |
- name: Create/Update Nightlies Tag | |
if: ${{ github.repository_owner == 'tahoma2d' && github.event_name == 'push' && github.ref == 'refs/heads/master' }} | |
run: | | |
git remote add nightly_repo https://tahoma2d:${{ secrets.TAHOMA2D_TOKEN }}@github.com/tahoma2d/tahoma2d_nightlies.git | |
git config lfs.https://tahoma2d:${{ secrets.TAHOMA2D_TOKEN }}@github.com/tahoma2d/tahoma2d_nightlies.git.lfs.locksverify false | |
git fetch --unshallow | |
git tag -f nightly | |
git push -f origin nightly | |
git tag -f nightly-${{ github.sha }} | |
git config --unset-all http.https://github.com/.extraheader | |
git push -f nightly_repo nightly-${{ github.sha }} | |
git remote rm nightly_repo | |
- name: Update Latest Nightly Release | |
if: ${{ github.repository_owner == 'tahoma2d' && github.event_name == 'push' && github.ref == 'refs/heads/master' }} | |
uses: ncipollo/release-action@v1 | |
with: | |
allowUpdates: true | |
artifactErrorsFailBuild: false | |
artifacts: toonz/build/Tahoma2D-portable-osx.dmg,toonz/build/Tahoma2D-install-osx.pkg | |
artifactContentType: "raw" | |
body: ${{ github.event.head_commit.message }} | |
name: Latest Nightly ${{ env.NIGHTLYDATE }} | |
prerelease: true | |
replacesArtifacts: true | |
tag: nightly | |
token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Create Nightlies Release | |
if: ${{ github.repository_owner == 'tahoma2d' && github.event_name == 'push' && github.ref == 'refs/heads/master' }} | |
uses: ncipollo/release-action@v1 | |
with: | |
allowUpdates: true | |
artifactErrorsFailBuild: false | |
artifacts: toonz/build/Tahoma2D-portable-osx.dmg,toonz/build/Tahoma2D-install-osx.pkg | |
artifactContentType: "raw" | |
body: ${{ github.event.head_commit.message }} | |
name: ${{ env.NIGHTLYDATETIME }} | |
omitBodyDuringUpdate: true | |
omitNameDuringUpdate: true | |
owner: tahoma2d | |
prerelease: true | |
replacesArtifacts: true | |
repo: tahoma2d_nightlies | |
tag: nightly-${{ github.sha }} | |
token: ${{ secrets.TAHOMA2D_TOKEN }} |