Skip to content

Commit a3c6e25

Browse files
authored
Merge pull request #442 from seiya-git/add-win-ci
add win ci
2 parents 8b4ca86 + ec0babc commit a3c6e25

File tree

3 files changed

+59
-5
lines changed

3 files changed

+59
-5
lines changed

.github/workflows/ci.yml

+54-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
cc: gcc
2222

2323
steps:
24-
- uses: actions/checkout@v2
24+
- uses: actions/checkout@v4
2525
with:
2626
submodules: true
2727
- name: install deps (ubuntu)
@@ -42,3 +42,56 @@ jobs:
4242
run: |
4343
make test-sync
4444
make test -j2 -k
45+
build-win:
46+
runs-on: windows-latest
47+
steps:
48+
- name: Git checkout
49+
uses: actions/checkout@v4
50+
with:
51+
submodules: true
52+
- name: Parse AviSynth+ release metadata
53+
uses: actions/github-script@v7
54+
with:
55+
script: |
56+
const req = await github.request('https://api.github.com/repos/avisynth/avisynthplus/releases');
57+
const data = req.data;
58+
let avstag = '';
59+
for(let rel of data){
60+
if(rel.prerelease||rel.draft){
61+
continue;
62+
}
63+
avstag = rel.tag_name;
64+
if(avstag != ''){
65+
break;
66+
}
67+
}
68+
core.exportVariable('AVS_TAG', avstag);
69+
- name: Add MSBuild to PATH
70+
uses: microsoft/setup-msbuild@v2
71+
with:
72+
msbuild-architecture: x64
73+
- name: Make builds...
74+
run: |
75+
cd ..
76+
git clone https://github.com/AviSynth/AviSynthPlus.git --branch "${{ env.AVS_TAG }}" --depth 1
77+
cd ffms2
78+
vcpkg install ffmpeg[avcodec,avdevice,avfilter,avformat,swresample,swscale,zlib,bzip2,core,dav1d,gpl,version3,lzma,openssl,xml2]:x86-windows-static
79+
vcpkg install ffmpeg[avcodec,avdevice,avfilter,avformat,swresample,swscale,zlib,bzip2,core,dav1d,gpl,version3,lzma,openssl,xml2]:x64-windows-static
80+
vcpkg integrate install
81+
MSBuild.exe /t:Rebuild /p:PlatformToolset=v143 /m /p:Configuration=Release /p:Platform=x86 "./build-msvc/ffms2.sln"
82+
MSBuild.exe /t:Rebuild /p:PlatformToolset=v143 /m /p:Configuration=Release /p:Platform=x64 "./build-msvc/ffms2.sln"
83+
cmake -E copy "build-msvc\bin\Win32\Release\ffms2.dll" "dist\x86\ffms2.dll"
84+
cmake -E copy "build-msvc\bin\Win32\Release\ffms2.lib" "dist\x86\ffms2.lib"
85+
cmake -E copy "build-msvc\bin\Win32\Release\ffmsindex.exe" "dist\x86\ffmsindex.exe"
86+
cmake -E copy "build-msvc\bin\x64\Release\ffms2.dll" "dist\x64\ffms2.dll"
87+
cmake -E copy "build-msvc\bin\x64\Release\ffms2.lib" "dist\x64\ffms2.lib"
88+
cmake -E copy "build-msvc\bin\x64\Release\ffmsindex.exe" "dist\x64\ffmsindex.exe"
89+
cmake -E copy_directory "include" "dist\include"
90+
cmake -E copy_directory "doc" "dist\doc"
91+
cmake -E copy "etc\FFMS2.avsi" "dist\FFMS2.avsi"
92+
cmake -E copy "COPYING" "dist\COPYING"
93+
- name: Upload artifact
94+
uses: actions/upload-artifact@v4
95+
with:
96+
name: ffms2_build_win
97+
path: dist

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
/deps
44
/testing
55
/todo.txt
6+
/dist
67

78
# /build-msvc/
89
/build-msvc/*.sdf

build-msvc/ffms2.vcxproj

+4-4
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@
105105
</ClCompile>
106106
<Link>
107107
<SubSystem>Windows</SubSystem>
108-
<AdditionalDependencies>psapi.lib;uuid.lib;oleaut32.lib;shlwapi.lib;gdi32.lib;vfw32.lib;secur32.lib;ws2_32.lib;mfplat.lib;mfuuid.lib;strmiids.lib;ole32.lib;user32.lib;bcrypt.lib;%(AdditionalDependencies)</AdditionalDependencies>
108+
<AdditionalDependencies>psapi.lib;uuid.lib;oleaut32.lib;shlwapi.lib;gdi32.lib;vfw32.lib;secur32.lib;ws2_32.lib;mfplat.lib;mfuuid.lib;strmiids.lib;ole32.lib;user32.lib;bcrypt.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
109109
</Link>
110110
</ItemDefinitionGroup>
111111
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
@@ -117,7 +117,7 @@
117117
</ClCompile>
118118
<Link>
119119
<SubSystem>Windows</SubSystem>
120-
<AdditionalDependencies>psapi.lib;uuid.lib;oleaut32.lib;shlwapi.lib;gdi32.lib;vfw32.lib;secur32.lib;ws2_32.lib;mfplat.lib;mfuuid.lib;strmiids.lib;ole32.lib;user32.lib;bcrypt.lib;%(AdditionalDependencies)</AdditionalDependencies>
120+
<AdditionalDependencies>psapi.lib;uuid.lib;oleaut32.lib;shlwapi.lib;gdi32.lib;vfw32.lib;secur32.lib;ws2_32.lib;mfplat.lib;mfuuid.lib;strmiids.lib;ole32.lib;user32.lib;bcrypt.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
121121
</Link>
122122
</ItemDefinitionGroup>
123123
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@@ -133,7 +133,7 @@
133133
<SubSystem>Windows</SubSystem>
134134
<EnableCOMDATFolding>true</EnableCOMDATFolding>
135135
<OptimizeReferences>true</OptimizeReferences>
136-
<AdditionalDependencies>psapi.lib;uuid.lib;oleaut32.lib;shlwapi.lib;gdi32.lib;vfw32.lib;secur32.lib;ws2_32.lib;mfplat.lib;mfuuid.lib;strmiids.lib;ole32.lib;user32.lib;bcrypt.lib;%(AdditionalDependencies)</AdditionalDependencies>
136+
<AdditionalDependencies>psapi.lib;uuid.lib;oleaut32.lib;shlwapi.lib;gdi32.lib;vfw32.lib;secur32.lib;ws2_32.lib;mfplat.lib;mfuuid.lib;strmiids.lib;ole32.lib;user32.lib;bcrypt.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
137137
</Link>
138138
</ItemDefinitionGroup>
139139
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -149,7 +149,7 @@
149149
<SubSystem>Windows</SubSystem>
150150
<EnableCOMDATFolding>true</EnableCOMDATFolding>
151151
<OptimizeReferences>true</OptimizeReferences>
152-
<AdditionalDependencies>psapi.lib;uuid.lib;oleaut32.lib;shlwapi.lib;gdi32.lib;vfw32.lib;secur32.lib;ws2_32.lib;mfplat.lib;mfuuid.lib;strmiids.lib;ole32.lib;user32.lib;bcrypt.lib;%(AdditionalDependencies)</AdditionalDependencies>
152+
<AdditionalDependencies>psapi.lib;uuid.lib;oleaut32.lib;shlwapi.lib;gdi32.lib;vfw32.lib;secur32.lib;ws2_32.lib;mfplat.lib;mfuuid.lib;strmiids.lib;ole32.lib;user32.lib;bcrypt.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
153153
</Link>
154154
</ItemDefinitionGroup>
155155
<ItemGroup>

0 commit comments

Comments
 (0)