Skip to content

Fix compilation with MSVC: No dllexport when class is fully inlined… #1509

Fix compilation with MSVC: No dllexport when class is fully inlined…

Fix compilation with MSVC: No dllexport when class is fully inlined… #1509

Workflow file for this run

name: msys2
on:
workflow_dispatch:
push:
paths:
- '**'
- '!.github/**'
- '.github/workflows/msys2.yml'
pull_request:
paths:
- '**'
- '!.github/**'
- '.github/workflows/msys2.yml'
jobs:
msys2:
runs-on: ${{matrix.arch.runs-on}}
strategy:
fail-fast: false
matrix:
wx-version: ['3.2', 'master'] # <v3.2.7 cannot be compiled with clang-19
arch:
- msystem: clang64
runs-on: windows-latest
- msystem: clangarm64
runs-on: windows-11-arm
package-suffix: '-arm64'
steps:
- uses: msys2/setup-msys2@v2
with:
msystem: ${{matrix.arch.msystem}}
update: true
install: >-
bison
flex
patch
pacboy: >-
cmake:p
make:p
clang:p
clang-tools-extra:p
zlib:p
libssh:p
hunspell:p
openssl:p
sqlite3:p
llvm-openmp:p
libmariadbclient:p
ntldd:p
postgresql:p
# WxWidgets
- name: Checkout
uses: actions/checkout@v6
with:
repository: wxWidgets/wxWidgets
ref: ${{matrix.wx-version}}
submodules: recursive
path: wxWidgets
- name: build and install wxWidgets
shell: msys2 {0}
run: |
mkdir wxWidgets/build-release
cd wxWidgets/build-release
cmake .. -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$HOME/root" -DwxBUILD_DEBUG_LEVEL=0 -DwxBUILD_MONOLITHIC=1 -DwxBUILD_SAMPLES=SOME -DwxUSE_STL=1
mingw32-make -j$(nproc) && PATH="/${{matrix.arch.msystem}}/bin:$PATH" mingw32-make install
# wx-config-msys2
- name: Checkout
uses: actions/checkout@v6
with:
repository: eranif/wx-config-msys2
path: wx-config-msys2
- name: build and install wx-config-msys2
shell: msys2 {0}
run: |
mkdir wx-config-msys2/build-release
cd wx-config-msys2/build-release
cmake .. -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$HOME/root"
mingw32-make -j$(nproc) install
#add $HOME/root/bin to PATH
# Codelite
- name: Checkout
uses: actions/checkout@v6
with:
submodules: recursive
- name: build and create Codelite installer
shell: msys2 {0}
run: |
mkdir build-release
cd build-release
MSYS2_BASE=$(cygpath -u "${{runner.temp}}")/msys64 PATH="$HOME/root/bin:$PATH" cmake .. -G"MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DWXWIN="$HOME/root" -Wno-dev -DBUILD_TESTING=0 -DCMAKE_POLICY_VERSION_MINIMUM=3.5
PATH="$HOME/root/bin:$PATH" mingw32-make -j$(nproc) install
PATH="$HOME/root/bin:$PATH" mingw32-make -j$(nproc) setup
# ctest --output-on-failure # Missing dll near test executables
# Upload and test installer
- name: artifact
uses: actions/upload-artifact@v7
with:
name: codelite-installer-wx-${{matrix.wx-version}}${{matrix.arch.package-suffix}}
path: |
build-release/installer/**.*
- name: Run installer
shell: pwsh
run: Start-Process -wait -FilePath .\build-release\installer\codelite-*-*.exe -ArgumentList "/SILENT /SP- /SUPPRESSMSGBOXES /NOICONS /NORESTART"
- name: Show content of installation
shell: bash
run: ls -lR "/C/Program Files/Codelite"