Files
dependabot[bot] 64eda543e6 build(deps): bump actions/upload-artifact from 7.0.1 to 7.0.2 (#9028)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 7.0.1 to 7.0.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a...cf430e030ddbb5b0abf93d22962f4752f3646cd9)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: 7.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-15 19:43:00 +02:00

267 lines
8.1 KiB
YAML

on:
workflow_dispatch:
schedule:
- cron: 0 6 * * *
push:
branches:
- main
paths:
- .github/build/windows/download-configure.sh
- .github/build/shared/download-dependencies.sh
- .github/workflows/daily.yml
pull_request:
branches:
- main
paths:
- .github/workflows/daily.yml
permissions:
contents: read
name: Daily
jobs:
change_log:
name: 'Create ChangeLog.md'
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #v7.0.1
with:
fetch-depth: 0
persist-credentials: false
- name: Install dependencies
run: npm install -g git+https://github.com/CookPete/auto-changelog.git#5ba380ad0044dd5be1b2bf4067f64d87202c98bd #v2.5.0
- name: Create ChangeLog.md
run: |
export NEXT_VERSION=$(grep -oP "PACKAGE_VERSION='\K[0-9\.-]*" configure)
git tag $NEXT_VERSION
auto-changelog --sort-commits date
mkdir artifacts
mv ChangeLog.md artifacts/ChangeLog.md
- name: Upload ChangeLog.md
uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 #v7.0.2
with:
name: ChangeLog
path: artifacts
build_linux:
name: 'Linux Q${{matrix.quantum}}-x64 hdri=${{matrix.hdri}} (${{matrix.modules}}) (${{ matrix.compiler }})'
container:
image: ubuntu:22.04
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
compiler: [ gcc, clang ]
quantum: [ 8, 16, 32, 64 ]
hdri: [ yes, no ]
modules: [ 'with-modules', 'without-modules' ]
exclude:
- quantum: 8
hdri: yes
- quantum: 32
hdri: no
- quantum: 64
hdri: no
include:
- compiler: gcc
cxx_compiler: g++
compiler_flags: -Wall -Wextra -Werror -Wno-builtin-declaration-mismatch -Wno-missing-field-initializers
packages: gcc g++
- compiler: clang
cxx_compiler: clang++ -Wno-unused-command-line-argument
compiler_flags: -Wall -Wextra -Werror -Wno-unused-function -Wno-incompatible-library-redeclaration -Wno-compound-token-split-by-macro -Wno-missing-field-initializers
packages: clang libstdc++-11-dev
steps:
- name: Install dependencies
run: |
set -e
export DEBIAN_FRONTEND=noninteractive
apt update
apt-get install -y autoconf curl libltdl-dev make pkg-config unzip ${{ matrix.packages }}
- name: Clone msttcorefonts
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #v7.0.1
with:
repository: ImageMagick/msttcorefonts
persist-credentials: false
- name: Install msttcorefonts
run: |
set -e
./install.sh
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #v7.0.1
with:
persist-credentials: false
- name: Download dependencies
shell: bash
run: |
bash .github/build/shared/download-dependencies.sh --dependencies-artifact linux-x64-static.zip
mv Artifacts /tmp/dependencies
- name: Configure ImageMagick
env:
CC: ${{ matrix.compiler }}
CXX: ${{ matrix.cxx_compiler }}
CFLAGS: ${{ matrix.compiler_flags }}
CXXFLAGS: ${{ matrix.compiler_flags }}
CPPFLAGS: -I/tmp/dependencies/include
LDFLAGS: -L/tmp/dependencies/lib -L/tmp/dependencies/lib/x86_64-linux-gnu
PKG_CONFIG_PATH: /tmp/dependencies/lib/pkgconfig:/tmp/dependencies/lib/x86_64-linux-gnu/pkgconfig
PKG_CONFIG: pkg-config --static
ac_cv_c_volatile: yes
run: |
./configure --with-perl --with-quantum-depth=${{matrix.quantum}} --enable-hdri=${{matrix.hdri}} --${{matrix.modules}}
- name: Build ImageMagick
run: |
make install
- name: Test ImageMagick
run: |
make check || exit_code=$?
if [ "$exit_code" != "0" ] ; then cat ./test-suite.log ; fi
exit $exit_code
- name: Test PerlMagick
run: |
cd PerlMagick
make test TEST_VERBOSE=1
build_windows:
name: Windows ${{matrix.quantum}}${{matrix.hdri_flag}}-${{matrix.architecture}} (${{matrix.buildType}})
needs:
- change_log
runs-on: windows-2025-vs2026
strategy:
fail-fast: false
matrix:
architecture: [ x64, arm64, x86 ]
buildType: [ dynamic, static ]
quantum: [ Q8, Q16, Q32 ]
hdri: [ hdri, noHdri ]
exclude:
- quantum: Q8
hdri: hdri
- quantum: Q32
hdri: noHdri
include:
- hdri: hdri
hdri_flag: -HDRI
steps:
- name: Clone ImageMagick
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #v7.0.1
with:
path: ImageMagick
persist-credentials: false
- name: Download configure
shell: cmd
run: |
ImageMagick\.github\build\windows\download-configure.cmd
- name: Download dependencies
shell: cmd
run: |
ImageMagick\.github\build\windows\download-dependencies.cmd windows-${{matrix.architecture}}-${{matrix.buildType}}-openMP.zip
- name: Download ChangeLog.md
uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 #v8.0.2
with:
name: ChangeLog
path: ImageMagick
- name: Configure ImageMagick
shell: cmd
working-directory: Configure
run: |
Configure.Release.x64.exe /noWizard /VS2026 /deprecated /${{matrix.architecture}} /${{matrix.buildType}} /${{matrix.quantum}} /${{matrix.hdri}}
- name: Build ImageMagick
shell: cmd
run: |
call "C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\Tools\VsDevCmd.bat"
msbuild /m /t:Rebuild /p:Configuration=Release,Platform=${{matrix.architecture}}
build_windows_zero_configuration:
name: 'Windows Q16-HDRI-x64 (zero configuration ${{matrix.buildType}})'
runs-on: windows-2025-vs2026
strategy:
fail-fast: false
matrix:
buildType: [ dynamic, static ]
steps:
- name: Clone ImageMagick
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #v7.0.1
with:
path: ImageMagick
persist-credentials: false
- name: Download configure
shell: cmd
run: |
ImageMagick\.github\build\windows\download-configure.cmd
- name: Download dependencies
shell: cmd
run: |
ImageMagick\.github\build\windows\download-dependencies.cmd windows-x64-${{matrix.buildType}}-openMP.zip
- name: Configure ImageMagick
shell: cmd
working-directory: Configure
run: |
Configure.Release.x64.exe /noWizard /VS2026 /x64 /${{matrix.buildType}} /zeroConfigurationSupport
- name: Build ImageMagick
shell: cmd
run: |
call "C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\Tools\VsDevCmd.bat"
msbuild /m /t:Rebuild /p:Configuration=Release,Platform=x64
build_msys2:
name: MSYS2 Q16-${{matrix.toolchain}}
runs-on: windows-2025
strategy:
matrix:
include: [
{ msystem: clang64, toolchain: clang-x86_64 },
{ msystem: mingw64, toolchain: x86_64 },
{ msystem: ucrt64, toolchain: ucrt-x86_64 },
]
fail-fast: false
steps:
- name: Prepare git
run: git config --global core.autocrlf false
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #v7.0.1
with:
persist-credentials: false
- uses: msys2/setup-msys2@ec48f7c5447b3140e2b088413ae3a55687bccb6e #v2.33.0
with:
install: mingw-w64-${{ matrix.toolchain }}-toolchain base-devel binutils
update: true
cache: false
- name: Build ImageMagick
run: cd .github/build/msys2 && makepkg-mingw --noconfirm --syncdeps
env:
MINGW_ARCH: ${{ matrix.msystem }}
PKGEXT: ".pkg.tar.xz"
shell: msys2 {0}