mirror of
https://github.com/ImageMagick/ImageMagick.git
synced 2026-10-23 08:15:23 +02:00
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>
267 lines
8.1 KiB
YAML
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}
|