-
Notifications
You must be signed in to change notification settings - Fork 5
81 lines (81 loc) · 3.53 KB
/
imagemagick.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
name: Build imagemagick
on:
workflow_dispatch:
inputs:
php:
description: PHP version to build for
required: true
defaults:
run:
shell: cmd
jobs:
build:
strategy:
matrix:
arch: [x64, x86]
runs-on: windows-2022
steps:
- name: Checkout winlib-builder
uses: actions/checkout@v4
with:
path: winlib-builder
- name: Checkout imagemagick
uses: actions/checkout@v4
with:
path: imagemagick-windows
repository: ImageMagick/ImageMagick-Windows.git
ref: main
- name: Setup msbuild
uses: microsoft/setup-msbuild@v2
- name: Compute virtual inputs
id: virtuals
run: powershell winlib-builder/scripts/compute-virtuals -version ${{github.event.inputs.php}} -arch ${{matrix.arch}}
- name: Fetch dependencies
run: cd imagemagick-windows && CloneRepositories.cmd
- name: Patch imagemagick
run: cd imagemagick-windows\VisualMagick\configure && git apply --ignore-whitespace ..\..\..\winlib-builder\patches\imagemagick.patch
- name: Configure imagemagick
run: |
cd imagemagick-windows\VisualMagick\configure
msbuild /p:Configuration=Release;Platform=Win32;Platformtoolset=v142 configure.2019.sln
if "${{steps.virtuals.outputs.vsnum}}" == "16" (
start /wait configure /noWizard /${{matrix.arch}} /noHdri /noOpenCL /deprecated /VS2019
) else if "${{steps.virtuals.outputs.vsnum}}" == "15" (
start /wait configure /noWizard /${{matrix.arch}} /noHdri /noOpenCL /deprecated /VS2017
)
- name: Build imagemagick
run: cd imagemagick-windows\VisualMagick && msbuild /p:Configuration=Release;Platform=${{steps.virtuals.outputs.msarch}};PlatformToolset=${{steps.virtuals.outputs.msts}};WindowsTargetPlatformVersion=${{steps.virtuals.outputs.winsdk}} VisualDynamicMT.sln
- name: Install imagemagick
run: |
cd imagemagick-windows\VisualMagick
xcopy bin\* ..\..\install\bin\*
del ..\..\install\bin\CORE_RL_aom_.pdb
del ..\..\install\bin\CORE_RL_brotli_.pdb
del ..\..\install\bin\CORE_RL_croco_.pdb
del ..\..\install\bin\CORE_RL_ffi_.pdb
del ..\..\install\bin\CORE_RL_highway_.pdb
del ..\..\install\bin\CORE_RL_libde265_.pdb
del ..\..\install\bin\CORE_RL_pixman_.pdb
del ..\..\install\bin\CORE_RL_raqm_.pdb
del ..\..\install\bin\*fuzzer.pdb
xcopy ..\ImageMagick\MagickCore\*.h ..\..\install\include\MagickCore\*
del ..\..\install\include\MagickCore\*-private.h
xcopy ..\ImageMagick\MagickWand\*.h ..\..\install\include\MagickWand\*
del ..\..\install\include\MagickWand\*-private.h
xcopy lib\*.lib ..\..\install\lib\*
xcopy lib\*.exp ..\..\install\lib\*
xcopy lib\*.pdb ..\..\install\lib\*
del ..\..\install\lib\CORE_RL_aom_.pdb
del ..\..\install\lib\CORE_RL_brotli_.pdb
del ..\..\install\lib\CORE_RL_croco_.pdb
del ..\..\install\lib\CORE_RL_ffi_.pdb
del ..\..\install\lib\CORE_RL_highway_.pdb
del ..\..\install\lib\CORE_RL_libde265_.pdb
del ..\..\install\lib\CORE_RL_pixman_.pdb
del ..\..\install\lib\CORE_RL_raqm_.pdb
xcopy ..\ImageMagick\LICENSE ..\..\install\*
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: ImageMagick-${{steps.virtuals.outputs.vs}}-${{matrix.arch}}
path: install