-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathbuild.yml
More file actions
82 lines (72 loc) · 2.26 KB
/
build.yml
File metadata and controls
82 lines (72 loc) · 2.26 KB
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
82
name: Build Windows Installer
on:
workflow_dispatch: # solo manual
jobs:
build-windows-installer:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
# --- Instalar WiX Toolset (para CPack) ---
- name: Install WiX Toolset
run: choco install wixtoolset -y
shell: powershell
# --- Configurar MSYS2 ---
- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
update: true
msystem: MINGW64
install: >
mingw-w64-x86_64-toolchain
mingw-w64-x86_64-cmake
mingw-w64-x86_64-pkg-config
mingw-w64-x86_64-opencv
mingw-w64-x86_64-libraw
mingw-w64-x86_64-eigen3
mingw-w64-x86_64-cli11
mingw-w64-x86_64-gettext
mingw-w64-x86_64-cairo
mingw-w64-x86_64-wxwidgets3.2-msw
mingw-w64-x86_64-wxwidgets3.2-common
# --- Configurar (CMake) ---
- name: Configure (CMake)
shell: msys2 {0}
run: |
cmake -G "MinGW Makefiles" \
-B build \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH=/mingw64 \
-DBUILD_SHARED_LIBS=ON
# --- Construir ---
- name: Build
shell: msys2 {0}
run: cmake --build build --config Release --parallel
# --- Copiar DLLs necesarias ---
- name: Copy Required DLLs
shell: msys2 {0}
run: |
cd build
for dll in $(ldd rango.exe dynaRangeGui.exe | grep -o '/mingw64/bin/[^ ]*' | sort -u); do
cp "$dll" .
done
# --- Generar Instalador ---
- name: Generate Installer
shell: msys2 {0}
run: |
cd build
cpack -G WIX # Genera el archivo .msi
# --- Muestra el log de WiX si el paso anterior falla ---
- name: Display WiX Log on Error
if: failure()
shell: msys2 {0}
run: |
echo "--- WiX Log Content ---"
cat build/_CPack_Packages/win64/WIX/wix.log
echo "--- End of WiX Log ---"
# --- Subir Instalador ---
- name: Upload Installer
uses: actions/upload-artifact@v4
with:
name: dynaRange-windows-installer
path: |
build/*.msi