builder->getExt('pdo_sqlite') !== null) { throw new WrongUsageException('swoole-hook-sqlite provides pdo_sqlite, if you enable sqlite hook for swoole, you must remove pdo_sqlite extension.'); } } public function getUnixConfigureArg(bool $shared = false): string { // enable swoole pgsql hook return '--enable-swoole-sqlite'; } public function runCliCheckUnix(): void { // skip if not enable swoole if ($this->builder->getExt('swoole') === null) { return; } $sharedExtensions = $this->getSharedExtensionLoadString(); [$ret, $out] = shell()->execWithResult(BUILD_BIN_PATH . '/php -n' . $sharedExtensions . ' --ri "' . $this->getDistName() . '"'); $out = implode('', $out); if ($ret !== 0) { throw new RuntimeException('extension ' . $this->getName() . ' failed compile check: php-cli returned ' . $ret); } if (!str_contains($out, 'coroutine_sqlite')) { throw new RuntimeException('swoole sqlite hook is not enabled correctly.'); } } }