mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-20 23:35:37 +08:00
only disable openmp for rh devtoolset-10
This commit is contained in:
@@ -12,7 +12,7 @@ class imagick extends Extension
|
|||||||
{
|
{
|
||||||
public function patchBeforeMake(): bool
|
public function patchBeforeMake(): bool
|
||||||
{
|
{
|
||||||
if (getenv('SPC_LIBC') !== 'musl') {
|
if (getenv('SPC_LIBC') === 'glibc' && str_contains(getenv('CC'), 'devtoolset-10')) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
// imagick with calls omp_pause_all which requires -lgomp, on non-musl we build imagick without openmp
|
// imagick with calls omp_pause_all which requires -lgomp, on non-musl we build imagick without openmp
|
||||||
|
|||||||
@@ -18,8 +18,11 @@ trait imagemagick
|
|||||||
*/
|
*/
|
||||||
protected function build(): void
|
protected function build(): void
|
||||||
{
|
{
|
||||||
// TODO: glibc rh 10 toolset's libgomp.a was built without -fPIC -fPIE so we can't use openmp without depending on libgomp.so
|
$openmp = '--enable-openmp';
|
||||||
$openmp = getenv('SPC_LIBC') === 'musl' ? '--enable-openmp' : '--disable-openmp';
|
// TODO: glibc rh 10 toolset's libgomp.a was built without -fPIC so we can't use openmp without depending on libgomp.so
|
||||||
|
if (getenv('SPC_LIBC') === 'glibc' && str_contains(getenv('CC'), 'devtoolset-10')) {
|
||||||
|
$openmp = '--disable-openmp';
|
||||||
|
}
|
||||||
$extra = "--without-jxl --without-x {$openmp} ";
|
$extra = "--without-jxl --without-x {$openmp} ";
|
||||||
$required_libs = '';
|
$required_libs = '';
|
||||||
$optional_libs = [
|
$optional_libs = [
|
||||||
|
|||||||
@@ -144,7 +144,7 @@ class SPCConfigUtil
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// patch: imagick (imagemagick wrapper) for linux needs libgomp
|
// patch: imagick (imagemagick wrapper) for linux needs libgomp
|
||||||
if (in_array('imagemagick', $libraries) && PHP_OS_FAMILY === 'Linux' && getenv('SPC_LIBC') === 'musl') {
|
if (in_array('imagemagick', $libraries) && PHP_OS_FAMILY === 'Linux' && !(getenv('SPC_LIBC') === 'glibc' && str_contains(getenv('CC'), 'devtoolset-10'))) {
|
||||||
$short_name[] = '-lgomp';
|
$short_name[] = '-lgomp';
|
||||||
}
|
}
|
||||||
return implode(' ', $short_name);
|
return implode(' ', $short_name);
|
||||||
|
|||||||
Reference in New Issue
Block a user