Skip to content

added deployment target for OSX #17

added deployment target for OSX

added deployment target for OSX #17

Workflow file for this run

name: Windows x64 Build
on:
push:
branches:
- main
workflow_dispatch:
jobs:
build:
runs-on: windows-latest
permissions:
contents: write
defaults:
run:
shell: msys2 {0}
steps:
- name: Get version
uses: actions/checkout@v4
with:
path: repo
- name: Install msys2
uses: msys2/setup-msys2@v2
with:
location: C:\msys2
update: true
msystem: MINGW64
install: |
git
wget
xz
pacboy: |
gcc:p
cmake:p
autotools:p
ninja:p
gtkmm3:p
lcms2:p
fftw:p
lensfun:p
mimalloc:p
opencolorio:p
- name: Install exiv2
run: |
wget https://github.com/Exiv2/exiv2/releases/download/v0.27.7/exiv2-0.27.7-Source.tar.gz
tar xzf exiv2-0.27.7-Source.tar.gz
mkdir build-exiv2
cd build-exiv2
cmake \
-GNinja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=c:/msys2/msys64/usr/local \
-DEXIV2_ENABLE_WIN_UNICODE=1 \
-DEXIV2_ENABLE_BMFF=1 \
../exiv2-0.27.7-Source
ninja install
cd ..
- name: Install LibRaw
run: |
git clone --depth 1 https://github.com/LibRaw/LibRaw.git
cd LibRaw
autoreconf -i
CPPFLAGS=-DUSE_X3FTOOLS ./configure --prefix=c:/msys2/msys64/usr/local
make -j
make install
cd ..
- name: Install CTL
run: |
git clone --depth 1 https://github.com/ampas/CTL.git
mkdir build-CTL
cd build-CTL
cmake \
-GNinja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=c:/msys2/msys64/usr/local \
-DCMAKE_CXX_FLAGS=-fpermissive \
../CTL
ninja install
cd ..
- name: Configure build
run: |
export ART_DIR="ART-$(cat repo/version.txt)"
wget https://bitbucket.org/agriggio/art/downloads/${ART_DIR}.tar.xz
tar xJf ${ART_DIR}.tar.xz
mkdir build
cd build
export PKG_CONFIG_PATH=c:/msys2/msys64/usr/local/lib/pkgconfig
cmake \
-GNinja \
-DCMAKE_BUILD_TYPE=Release \
-DENABLE_LIBRAW=1 \
-DENABLE_OCIO=1 \
-DENABLE_CTL=1 \
-DCTL_INCLUDE_DIR=/usr/local/include/CTL \
-DCMAKE_LIBRARY_PATH=/usr/local/lib \
-DBUILD_BUNDLE=1 \
../${ART_DIR}
cd ..
- name: Build
run: |
cmake --build build --target install
- name: Include Lensfun
run: |
lensfun-update-data
- name: Create bundle
run: |
cd build/Release
python ../../ART-$(cat ../../repo/version.txt)/tools/win/bundle_ART.py \
-o ../../bundle -v -E -I -m c:/msys2/msys64
- name: Create installer
working-directory: bundle
shell: pwsh
run: |
choco install innosetup
iscc /F"installer" "WindowsInnoSetup.iss"
- name: Prepare artifact name
run: |
ARTIFACT_NAME="ART_$(cat repo/version.txt)_Win64.exe"
echo "ARTIFACT_NAME=$ARTIFACT_NAME" >> "$(cygpath -u $GITHUB_ENV)"
mv installer.exe ${ARTIFACT_NAME}
echo "RELEASE_TAG=v$(cat repo/version.txt)" >> "$(cygpath -u $GITHUB_ENV)"
- name: Publish release
uses: ncipollo/release-action@v1
with:
tag: ${{ env.RELEASE_TAG }}
body: ${{ env.RELEASE_TAG }}
allowUpdates: true
makeLatest: true
artifacts: ${{ env.ARTIFACT_NAME }}