229c4abc0f
Some checks failed
Build (Windows Cross-Compile on Ubuntu) / build_windows (push) Failing after 2m11s
65 lines
1.9 KiB
YAML
65 lines
1.9 KiB
YAML
name: Build (Windows Cross-Compile on Ubuntu)
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build_windows:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Check out repository (recursively with submodules)
|
|
uses: actions/checkout@v3
|
|
with:
|
|
submodules: true
|
|
fetch-depth: 0
|
|
|
|
- name: Install cross-compile toolchain & libs
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y \
|
|
build-essential \
|
|
mingw-w64 \
|
|
pkg-config-mingw-w64-x86-64 \
|
|
cmake
|
|
|
|
# Attempt to install cross-compiled dependencies.
|
|
# NOTE: Some of these may not be available on your Ubuntu version.
|
|
# If "Unable to locate package ..." occurs, remove or handle them.
|
|
sudo apt-get install -y \
|
|
mingw-w64-x86-64-glew \
|
|
mingw-w64-x86-64-glfw \
|
|
mingw-w64-x86-64-yaml-cpp \
|
|
mingw-w64-x86-64-lua5.3
|
|
|
|
- name: Build for Windows with MinGW
|
|
run: |
|
|
# Clean old artifacts (if your Makefile supports it)
|
|
make clean || true
|
|
|
|
# Cross-compile using the MinGW-w64 toolchain
|
|
# Override CC/CXX so Make uses x86_64-w64-mingw32-gcc/g++
|
|
make \
|
|
CC=x86_64-w64-mingw32-gcc \
|
|
CXX=x86_64-w64-mingw32-g++ \
|
|
LD=x86_64-w64-mingw32-ld
|
|
|
|
# If your Makefile automatically detects the MinGW environment,
|
|
# you may not need these overrides.
|
|
|
|
- name: Prepare release folder
|
|
run: |
|
|
mkdir -p release
|
|
# Example: if your Makefile produces "TesseractEngine.exe" in root or build/
|
|
# Copy it into the release folder for artifact uploading
|
|
cp TesseractEngine.exe release/ || true
|
|
cp build/TesseractEngine.exe release/ || true
|
|
|
|
- name: Upload release artifacts
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: TesseractEngine-WinCross
|
|
path: release
|