Update windows.yml
This commit is contained in:
@@ -7,7 +7,11 @@ jobs:
|
|||||||
build:
|
build:
|
||||||
runs-on: windows-2022
|
runs-on: windows-2022
|
||||||
|
|
||||||
|
env:
|
||||||
|
VCPKG_DEFAULT_TRIPLET: x64-windows
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
# ── 1. Checkout Fritzing source ──────────────────────────────────────
|
||||||
- name: Checkout fritzing-app
|
- name: Checkout fritzing-app
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
@@ -20,58 +24,61 @@ jobs:
|
|||||||
repository: fritzing/fritzing-parts
|
repository: fritzing/fritzing-parts
|
||||||
path: fritzing-parts
|
path: fritzing-parts
|
||||||
|
|
||||||
- name: Setup MSVC
|
# ── 2. Setup MSVC 2022 64-bit environment ────────────────────────────
|
||||||
|
- name: Setup MSVC environment
|
||||||
uses: ilammy/msvc-dev-cmd@v1
|
uses: ilammy/msvc-dev-cmd@v1
|
||||||
|
with:
|
||||||
|
arch: amd64
|
||||||
|
|
||||||
|
# ── 3. Install Qt 6.7.3 (latest LTS at time of writing) ─────────────
|
||||||
|
# Arch label for MSVC 2022 / 2019 64-bit is identical
|
||||||
- name: Install Qt
|
- name: Install Qt
|
||||||
uses: jurplel/install-qt-action@v4
|
uses: jurplel/install-qt-action@v4
|
||||||
with:
|
with:
|
||||||
version: '6.5.3'
|
version: '6.7.3'
|
||||||
host: 'windows'
|
host: 'windows'
|
||||||
target: 'desktop'
|
target: 'desktop'
|
||||||
arch: 'win64_msvc2019_64'
|
arch: 'win64_msvc2019_64'
|
||||||
|
modules: 'qt5compat'
|
||||||
|
cache: true
|
||||||
|
|
||||||
- name: Install Boost
|
# ── 4. Install C++ dependencies via vcpkg ────────────────────────────
|
||||||
|
# vcpkg is pre-installed on windows-2022 runners.
|
||||||
|
# boost headers-only, libgit2-static, quazip, openssl
|
||||||
|
- name: Install dependencies with vcpkg
|
||||||
run: |
|
run: |
|
||||||
Invoke-WebRequest -Uri https://boostorg.jfrog.io/artifactory/main/release/1.83.0/source/boost_1_83_0.zip -OutFile boost.zip
|
vcpkg install boost-filesystem boost-optional boost-assign `
|
||||||
Expand-Archive boost.zip -DestinationPath .
|
libgit2 quazip openssl `
|
||||||
Rename-Item boost_1_83_0 boost
|
--triplet x64-windows
|
||||||
shell: powershell
|
shell: pwsh
|
||||||
|
|
||||||
- name: Build libgit2
|
# ── 5. Build libgit2 (vcpkg already handles this, kept for reference) ─
|
||||||
|
# libgit2 from vcpkg is at the latest stable release automatically.
|
||||||
|
|
||||||
|
# ── 6. Configure and build Fritzing ─────────────────────────────────
|
||||||
|
- name: Configure Fritzing (qmake)
|
||||||
|
working-directory: fritzing-app
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/libgit2/libgit2.git
|
qmake phoenix.pro ^
|
||||||
cd libgit2
|
BOOST_PATH="%VCPKG_ROOT%\installed\x64-windows\include" ^
|
||||||
mkdir build
|
LIBGIT2_PATH="%VCPKG_ROOT%\installed\x64-windows"
|
||||||
cd build
|
|
||||||
cmake .. -DBUILD_SHARED_LIBS=OFF
|
|
||||||
cmake --build . --config Release
|
|
||||||
shell: cmd
|
shell: cmd
|
||||||
|
|
||||||
- name: Build ngspice
|
- name: Build Fritzing (nmake)
|
||||||
run: |
|
working-directory: fritzing-app
|
||||||
git clone https://git.code.sf.net/p/ngspice/ngspice
|
run: nmake release
|
||||||
cd ngspice
|
|
||||||
# Simplified, usually requires MSYS2 or complex MSVC build.
|
|
||||||
# Fritzing CI has prebuilt binaries via vcpkg or similar.
|
|
||||||
# Here we leave it as placeholder for ngspice library path.
|
|
||||||
continue-on-error: true
|
|
||||||
|
|
||||||
- name: Build Fritzing
|
|
||||||
run: |
|
|
||||||
cd fritzing-app
|
|
||||||
qmake phoenix.pro
|
|
||||||
nmake release
|
|
||||||
shell: cmd
|
shell: cmd
|
||||||
|
|
||||||
- name: Run windeployqt
|
# ── 7. Deploy Qt runtime DLLs next to the executable ────────────────
|
||||||
run: |
|
- name: Deploy Qt (windeployqt)
|
||||||
cd fritzing-app/release
|
working-directory: fritzing-app/release
|
||||||
windeployqt Fritzing.exe
|
run: windeployqt Fritzing.exe
|
||||||
shell: cmd
|
shell: cmd
|
||||||
|
|
||||||
- name: Upload Artifact
|
# ── 8. Upload the finished build as a downloadable artifact ─────────
|
||||||
|
- name: Upload build artifact
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: fritzing-windows-build
|
name: fritzing-windows-x64
|
||||||
path: fritzing-app/release/
|
path: fritzing-app/release/
|
||||||
|
retention-days: 14
|
||||||
|
|||||||
Reference in New Issue
Block a user