ci: install visual c++ 2010 redist on windows installer
This commit is contained in:
+25
-25
@@ -2,7 +2,7 @@ name: CMake
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
branches:
|
||||
- master
|
||||
|
||||
env:
|
||||
@@ -24,49 +24,49 @@ jobs:
|
||||
- name: Set package name
|
||||
shell: bash
|
||||
run: echo "::set-env name=PKGNAME::$(echo Olive-${GITHUB_SHA::8}-Windows-x86_64)"
|
||||
|
||||
|
||||
- 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 ${{runner.workspace}}/build
|
||||
|
||||
|
||||
- name: Enable Developer Command Prompt
|
||||
uses: ilammy/msvc-dev-cmd@v1.3.0
|
||||
|
||||
|
||||
- name: Acquire Qt
|
||||
uses: jurplel/install-qt-action@v2.8.0
|
||||
with:
|
||||
version: 5.15.1
|
||||
|
||||
|
||||
- name: Acquire FFmpeg
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/ffmpeg-win.7z && 7z x ffmpeg-win.7z
|
||||
|
||||
|
||||
- name: Acquire OpenColorIO
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/ocio-win.7z && 7z x ocio-win.7z
|
||||
|
||||
|
||||
- name: Acquire OpenEXR
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/openexr-win.7z && 7z x openexr-win.7z
|
||||
|
||||
|
||||
- name: Acquire OpenImageIO
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/oiio-win.7z && 7z x oiio-win.7z
|
||||
|
||||
|
||||
- name: Acquire libpng
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/libpng-win.7z && 7z x libpng-win.7z
|
||||
|
||||
|
||||
- name: Acquire libtiff
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/libtiff-win.7z && 7z x libtiff-win.7z
|
||||
|
||||
|
||||
- name: Acquire turbojpeg
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/turbojpeg-win.7z && 7z x turbojpeg-win.7z
|
||||
|
||||
|
||||
- name: Acquire zlib
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/zlib-win.7z && 7z x zlib-win.7z
|
||||
|
||||
|
||||
- name: Acquire Boost
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/boost-win.7z && 7z x boost-win.7z
|
||||
|
||||
|
||||
- name: Acquire Crashpad
|
||||
run: curl -fLOSs --retry 3 http://olivevideoeditor.org/deps/crashpad-win.7z && 7z x crashpad-win.7z
|
||||
|
||||
@@ -75,8 +75,8 @@ jobs:
|
||||
# access regardless of the host operating system
|
||||
shell: bash
|
||||
working-directory: ${{runner.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.
|
||||
# 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: PATH=$GITHUB_WORKSPACE:$PATH cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -G "Ninja"
|
||||
|
||||
@@ -89,7 +89,7 @@ jobs:
|
||||
- name: Test
|
||||
working-directory: ${{runner.workspace}}/build
|
||||
shell: bash
|
||||
# Execute tests defined by the CMake configuration.
|
||||
# Execute tests defined by the CMake configuration.
|
||||
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
|
||||
run: ctest -C $BUILD_TYPE
|
||||
|
||||
@@ -97,44 +97,44 @@ jobs:
|
||||
working-directory: ${{runner.workspace}}/build
|
||||
shell: cmd
|
||||
run: mkdir olive-editor && copy app\olive-editor.exe olive-editor && copy app\olive-editor.pdb olive-editor && windeployqt olive-editor\olive-editor.exe && copy %GITHUB_WORKSPACE%\bin\*.dll olive-editor && copy %GITHUB_WORKSPACE%\out\Default\crashpad_handler.exe olive-editor
|
||||
|
||||
|
||||
- name: Deploy Installer
|
||||
working-directory: ${{runner.workspace}}/build
|
||||
shell: cmd
|
||||
run: copy %GITHUB_WORKSPACE%\app\packaging\windows\nsis\* . && copy %GITHUB_WORKSPACE%\LICENSE . && "C:/Program Files (x86)/NSIS/makensis.exe" -V4 -DX64 "-XOutFile %PKGNAME%.exe" olive.nsi
|
||||
|
||||
run: curl -fLOSs https://download.microsoft.com/download/3/2/2/3224B87F-CFA0-4E70-BDA3-3DE650EFEBA5/vcredist_x64.exe && copy %GITHUB_WORKSPACE%\app\packaging\windows\nsis\* . && copy %GITHUB_WORKSPACE%\LICENSE . && "C:/Program Files (x86)/NSIS/makensis.exe" -V4 -DX64 "-XOutFile %PKGNAME%.exe" olive.nsi
|
||||
|
||||
- name: Deploy Portable
|
||||
working-directory: ${{runner.workspace}}/build
|
||||
shell: cmd
|
||||
run: type NUL > olive-editor\portable && 7z a %PKGNAME%.zip olive-editor
|
||||
|
||||
|
||||
- name: Export Crashpad Symbols and Upload To Server
|
||||
working-directory: ${{runner.workspace}}/build
|
||||
shell: cmd
|
||||
env:
|
||||
GH_AUTH_KEY: ${{secrets.GH_AUTH_KEY}}
|
||||
run: curl -fLSs --retry 3 https://github.com/google/breakpad/blob/master/src/tools/windows/binaries/dump_syms.exe?raw=true > dump_syms.exe && dump_syms app\olive-editor.pdb > olive-editor.sym && curl -X POST -F symfile=@olive-editor.sym -F key="%GH_AUTH_KEY%" https://olivevideoeditor.org/crashpad/symbols.php
|
||||
|
||||
|
||||
- name: Upload Installer to Nightly Page
|
||||
shell: bash
|
||||
working-directory: ${{runner.workspace}}/build
|
||||
env:
|
||||
GH_AUTH_KEY: ${{secrets.GH_AUTH_KEY}}
|
||||
run: curl -X POST -F file=@$PKGNAME.exe -F key="$GH_AUTH_KEY" -F hash="$GITHUB_SHA" -F time="$(git -C $GITHUB_WORKSPACE show -s --format=%ct)" -F comment="$(git -C $GITHUB_WORKSPACE show -s --format=%B)" https://olivevideoeditor.org/dl/push.php
|
||||
|
||||
|
||||
- name: Upload Portable to Nightly Page
|
||||
shell: bash
|
||||
working-directory: ${{runner.workspace}}/build
|
||||
env:
|
||||
GH_AUTH_KEY: ${{secrets.GH_AUTH_KEY}}
|
||||
run: curl -X POST -F file=@$PKGNAME.zip -F key="$GH_AUTH_KEY" -F hash="$GITHUB_SHA" -F time="$(git -C $GITHUB_WORKSPACE show -s --format=%ct)" -F comment="$(git -C $GITHUB_WORKSPACE show -s --format=%B)" https://olivevideoeditor.org/dl/push.php
|
||||
|
||||
|
||||
- name: Upload Installer Artifact
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{env.PKGNAME}}.exe
|
||||
path: ${{runner.workspace}}/build/${{env.PKGNAME}}.exe
|
||||
|
||||
|
||||
- name: Upload Portable Artifact
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
|
||||
@@ -32,35 +32,35 @@ InstallDir "$PROGRAMFILES32\${APP_NAME}"
|
||||
|
||||
!insertmacro MUI_LANGUAGE "English"
|
||||
|
||||
Section "Olive (required)"
|
||||
|
||||
SectionIn RO
|
||||
|
||||
SetOutPath $INSTDIR
|
||||
|
||||
File /r olive-editor\*
|
||||
|
||||
WriteUninstaller "$INSTDIR\uninstall.exe"
|
||||
Section "Olive"
|
||||
SectionIn RO
|
||||
SetOutPath $INSTDIR
|
||||
File /r olive-editor\*
|
||||
WriteUninstaller "$INSTDIR\uninstall.exe"
|
||||
|
||||
# Install Visual C++ 2010 Redistributable
|
||||
File "vcredist_x64.exe"
|
||||
ExecWait '"$INSTDIR\vcredist_x64.exe" /quiet'
|
||||
Delete "$INSTDIR\vcredist_x64.exe"
|
||||
SectionEnd
|
||||
|
||||
Section "Create Desktop shortcut"
|
||||
CreateShortCut "$DESKTOP\${APP_NAME}.lnk" "$INSTDIR\${APP_TARGET}.exe"
|
||||
CreateShortCut "$DESKTOP\${APP_NAME}.lnk" "$INSTDIR\${APP_TARGET}.exe"
|
||||
SectionEnd
|
||||
|
||||
Section "Create Start Menu shortcut"
|
||||
CreateDirectory "$SMPROGRAMS\${APP_NAME}"
|
||||
CreateShortCut "$SMPROGRAMS\${APP_NAME}\${APP_NAME}.lnk" "$INSTDIR\${APP_TARGET}.exe"
|
||||
CreateShortCut "$SMPROGRAMS\${APP_NAME}\Uninstall ${APP_NAME}.lnk" "$INSTDIR\uninstall.exe"
|
||||
CreateDirectory "$SMPROGRAMS\${APP_NAME}"
|
||||
CreateShortCut "$SMPROGRAMS\${APP_NAME}\${APP_NAME}.lnk" "$INSTDIR\${APP_TARGET}.exe"
|
||||
CreateShortCut "$SMPROGRAMS\${APP_NAME}\Uninstall ${APP_NAME}.lnk" "$INSTDIR\uninstall.exe"
|
||||
SectionEnd
|
||||
|
||||
Section "Associate *.ove files with Olive"
|
||||
WriteRegStr HKCR ".ove" "" "OliveEditor.OVEFile"
|
||||
WriteRegStr HKCR ".ove" "Content Type" "application/vnd.olive-project"
|
||||
WriteRegStr HKCR "OliveEditor.OVEFile" "" "Olive project file"
|
||||
WriteRegStr HKCR "OliveEditor.OVEFile\DefaultIcon" "" "$INSTDIR\olive-editor.exe,1"
|
||||
WriteRegStr HKCR "OliveEditor.OVEFile\shell\open\command" "" "$\"$INSTDIR\olive-editor.exe$\" $\"%1$\""
|
||||
System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v (0x08000000, 0, 0, 0)'
|
||||
WriteRegStr HKCR ".ove" "" "OliveEditor.OVEFile"
|
||||
WriteRegStr HKCR ".ove" "Content Type" "application/vnd.olive-project"
|
||||
WriteRegStr HKCR "OliveEditor.OVEFile" "" "Olive project file"
|
||||
WriteRegStr HKCR "OliveEditor.OVEFile\DefaultIcon" "" "$INSTDIR\olive-editor.exe,1"
|
||||
WriteRegStr HKCR "OliveEditor.OVEFile\shell\open\command" "" "$\"$INSTDIR\olive-editor.exe$\" $\"%1$\""
|
||||
System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v (0x08000000, 0, 0, 0)'
|
||||
SectionEnd
|
||||
|
||||
UninstPage uninstConfirm
|
||||
@@ -68,18 +68,18 @@ UninstPage instfiles
|
||||
|
||||
Section "uninstall"
|
||||
|
||||
rmdir /r "$INSTDIR"
|
||||
rmdir /r "$INSTDIR"
|
||||
|
||||
Delete "$DESKTOP\${APP_NAME}.lnk"
|
||||
rmdir /r "$SMPROGRAMS\${APP_NAME}"
|
||||
|
||||
DeleteRegKey HKCR ".ove"
|
||||
DeleteRegKey HKCR "OliveEditor.OVEFile"
|
||||
DeleteRegKey HKCR "OliveEditor.OVEFile\DefaultIcon" ""
|
||||
DeleteRegKey HKCR "OliveEditor.OVEFile\shell\open\command" ""
|
||||
System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v (0x08000000, 0, 0, 0)'
|
||||
Delete "$DESKTOP\${APP_NAME}.lnk"
|
||||
rmdir /r "$SMPROGRAMS\${APP_NAME}"
|
||||
|
||||
DeleteRegKey HKCR ".ove"
|
||||
DeleteRegKey HKCR "OliveEditor.OVEFile"
|
||||
DeleteRegKey HKCR "OliveEditor.OVEFile\DefaultIcon" ""
|
||||
DeleteRegKey HKCR "OliveEditor.OVEFile\shell\open\command" ""
|
||||
System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v (0x08000000, 0, 0, 0)'
|
||||
SectionEnd
|
||||
|
||||
Function LaunchOlive
|
||||
ExecShell "" "$INSTDIR\${APP_TARGET}.exe"
|
||||
ExecShell "" "$INSTDIR\${APP_TARGET}.exe"
|
||||
FunctionEnd
|
||||
|
||||
Reference in New Issue
Block a user