From 6dfd35348f03fa3e9c4c60c7bf89a9c3b38c2a64 Mon Sep 17 00:00:00 2001 From: DubbleClick Date: Tue, 17 Oct 2023 20:16:41 +0200 Subject: [PATCH] fix order of imagick libs --- config/lib.json | 4 ++-- src/SPC/builder/extension/imagick.php | 5 ++--- src/SPC/builder/unix/library/imagemagick.php | 3 ++- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/config/lib.json b/config/lib.json index c4102323..0dd26ed5 100644 --- a/config/lib.json +++ b/config/lib.json @@ -122,8 +122,8 @@ "source": "imagemagick", "static-libs-unix": [ "libMagick++-7.Q16HDRI.a", - "libMagickCore-7.Q16HDRI.a", - "libMagickWand-7.Q16HDRI.a" + "libMagickWand-7.Q16HDRI.a", + "libMagickCore-7.Q16HDRI.a" ], "lib-depends": [ "zlib", diff --git a/src/SPC/builder/extension/imagick.php b/src/SPC/builder/extension/imagick.php index 41a1c20e..ef965d58 100644 --- a/src/SPC/builder/extension/imagick.php +++ b/src/SPC/builder/extension/imagick.php @@ -10,12 +10,11 @@ use SPC\util\CustomExt; #[CustomExt('imagick')] class imagick extends Extension { - public function patchBeforeBuildconf(): bool + public function patchBeforeMake(): bool { // imagick may call omp_pause_all which requires -lgomp $extra_libs = $this->builder->getOption('extra-libs', ''); - $libf = BUILD_LIB_PATH; - $extra_libs .= " {$libf}/libMagick++-7.Q16HDRI.a {$libf}/libMagickWand-7.Q16HDRI.a {$libf}/libMagickCore-7.Q16HDRI.a -lgomp "; + $extra_libs .= ' -lgomp '; $this->builder->setOption('extra-libs', $extra_libs); return true; } diff --git a/src/SPC/builder/unix/library/imagemagick.php b/src/SPC/builder/unix/library/imagemagick.php index f33aa87d..7e291e8c 100644 --- a/src/SPC/builder/unix/library/imagemagick.php +++ b/src/SPC/builder/unix/library/imagemagick.php @@ -4,6 +4,7 @@ declare(strict_types=1); namespace SPC\builder\unix\library; +use SPC\builder\linux\library\LinuxLibraryBase; use SPC\exception\FileSystemException; use SPC\exception\RuntimeException; use SPC\store\FileSystem; @@ -30,7 +31,7 @@ trait imagemagick ]; foreach ($optional_libs as $lib => $option) { $extra .= $this->builder->getLib($lib) ? "--with-{$option} " : "--without-{$option} "; - if ($this->builder->getLib($lib)) { + if ($this->builder->getLib($lib) instanceof LinuxLibraryBase) { $required_libs .= ' ' . $this->builder->getLib($lib)->getStaticLibFiles(); } }