|
5 | 5 |
|
6 | 6 | return function (Preprocessor $p) { |
7 | 7 |
|
| 8 | + $file = new SplFileObject(realpath(__DIR__ . '/../../../../sapi/SWOOLE-VERSION.conf')); |
| 9 | + $swoole_tag = trim($file->current()); |
| 10 | + // $swoole_tag = 'v6.0.1'; |
| 11 | + $file = "swoole-{$swoole_tag}.tar.gz"; |
| 12 | + $url = "https://github.com/swoole/swoole-src/archive/refs/tags/{$swoole_tag}.tar.gz"; |
| 13 | + // v5.1.x 不支持 PHP 8.4 |
| 14 | + // swoole 支持计划 https://wiki.swoole.com/zh-cn/#/version/supported?id=%e6%94%af%e6%8c%81%e8%ae%a1%e5%88%92 |
8 | 15 |
|
9 | 16 | $options = []; |
10 | 17 |
|
11 | 18 | $dependentLibraries = ['curl', 'openssl', 'cares', 'zlib', 'brotli', 'nghttp2', 'sqlite3', 'unix_odbc', 'pgsql', 'libzstd']; |
12 | 19 | $dependentExtensions = ['curl', 'openssl', 'sockets', 'mysqlnd', 'pdo']; |
13 | 20 |
|
14 | | - // v5.1.x 不支持 PHP 8.4 |
15 | | - // swoole 支持计划 https://wiki.swoole.com/zh-cn/#/version/supported?id=%e6%94%af%e6%8c%81%e8%ae%a1%e5%88%92 |
16 | | - |
17 | | - $swoole_tag = 'v6.0.2'; |
18 | | - |
19 | | - $file = new SplFileObject(realpath(__DIR__ . '/../../../../sapi/SWOOLE-VERSION.conf')); |
20 | | - $swoole_tag = trim($file->current()); |
21 | | - |
22 | | - $file = "swoole-{$swoole_tag}.tar.gz"; |
23 | | - $url = "https://github.com/swoole/swoole-src/archive/refs/tags/{$swoole_tag}.tar.gz"; |
24 | | - |
25 | 21 | if ($p->getBuildType() === 'debug') { |
26 | 22 | $options[] = ' --enable-debug '; |
27 | 23 | $options[] = ' --enable-debug-log '; |
|
70 | 66 | ->withDependentLibraries(...$dependentLibraries) |
71 | 67 | ->withDependentExtensions(...$dependentExtensions)); |
72 | 68 |
|
73 | | - $p->withBeforeConfigureScript('swoole', function (Preprocessor $p) { |
74 | | - $cmd = ''; |
75 | | - if ($p->isMacos()) { |
76 | | - $workDir = $p->getPhpSrcDir(); |
77 | | - $cmd = <<<EOF |
78 | | - cd {$workDir}/ |
79 | | - sed -i '' 's/pthread_barrier_init/pthread_barrier_init_x_fake/' ext/swoole/config.m4 |
80 | | -EOF; |
81 | | - } |
82 | | - return $cmd; |
83 | | - |
84 | | - }); |
85 | 69 | if ($p->isMacos()) { |
86 | 70 | # 测试 macos 专有特性 |
87 | 71 | # 定义 _GNU_SOURCE 会隐式启用 _POSIX_C_SOURCE=200112L 和 _XOPEN_SOURCE=600 |
|
105 | 89 |
|
106 | 90 | $p->withExportVariable('ZSTD_CFLAGS', '$(pkg-config --cflags --static libzstd)'); |
107 | 91 | $p->withExportVariable('ZSTD_LIBS', '$(pkg-config --libs --static libzstd)'); |
| 92 | + |
| 93 | + $p->withBeforeConfigureScript('swoole', function (Preprocessor $p) { |
| 94 | + $cmd = ''; |
| 95 | + if ($p->isMacos()) { |
| 96 | + $workDir = $p->getPhpSrcDir(); |
| 97 | + $cmd = <<<EOF |
| 98 | + cd {$workDir}/ |
| 99 | + sed -i '' 's/pthread_barrier_init/pthread_barrier_init_x_fake/' ext/swoole/config.m4 |
| 100 | +EOF; |
| 101 | + } |
| 102 | + return $cmd; |
| 103 | + |
| 104 | + }); |
| 105 | + |
108 | 106 | /* |
109 | 107 | $p->withBeforeConfigureScript('swoole', function () use ($p) { |
110 | 108 | $workDir = $p->getWorkDir(); |
|
0 commit comments