jingjingxyk / swoole-cli

SWOOLE-CLI is a php binary distribution composed swoole & php-core & cli & php-fpm and mostly of common extensions.
10 stars 0 forks source link

swoole-cli 各分支的功能区别 #82

Open jingjingxyk opened 1 year ago

jingjingxyk commented 1 year ago

swoole-cli 各分支功能区别

构建环境 alpine 3.17

分支名称 与主分支的区别 PHP 版本 C 编译器
main 主分支是在 PHP源码基础之上裁剪、优化、添加新功能 8.1.12(固定) clang(固定)
experiment 在 main 分支基础上改进,新增功能特性 8.1.12(固定) clang(固定)
experiment_v4.8.x 在 experiment 分支基础上改进,
swoole版本固定为v4.8.x,
openssl版本为 V1,
curl库不启用 http2、http3支持
8.1.12(固定) clang(固定)
build_native_php 在 experiment 分支基础上改进,
用于构建原生的PHP版本,
可构建生成包含swow扩展的二进制文件 ,PHP源码未裁剪
8.2.4 (允许指定其它版本) clang(默认), gcc
build_native_php_sfx_micro 在 build_native_php 分支基础上改进,
只构建 phpmicro 版本
8.2.4 (允许指定其它版本) clang(默认), gcc
build_php_8.2 与 build_native_php 分支保持一致 8.2.4 (允许指定其它次版本) clang(默认), gcc
build_php_7.4 在 build_native_php 分支基础上改进,
swoole版本固定为v4.8.x,
openssl版本为 V1,
curl库不启用 http2、http3支持
7.4.33 (允许指定其它次版本) clang(默认), gcc
build_php_7.3 在 build_php_7.4 分支基础上改进,gd、zip、imagick扩展 未能启用 7.3.33 (允许指定其它次版本) gcc(固定)
jingjingxyk commented 1 year ago

experiment 分支新增:

  1. 允许指定扩展下载地址
  2. 下载库或者扩展,可以使用curl 也可以使用 git 等方式
  3. 新增简易webui 辅助: https://swoole-cli-ui.jingjingxyk.com/
  4. 新增快速初始化PHP 运行环境脚本setup-php-runtime.sh
  5. 编译gd 扩展,扩展启用依赖 libavif 库,为了支持 avif 格式的图片(已验证完毕) ,暂未合并

build_native_php分支新增:

  1. 继承 experiment 分支功能
  2. 可指定 PHP 版本,例如: --with-php-version=8.1.20
  3. 可指定 C 编译器 为GCC,例如: --with-c-compiler=gcc
  4. 可指定 构建类型,用于新增扩展时,验证扩展启用参数,例如: --with-build-type=dev
  5. 可指定 http 代理,用于下载,扩展和依赖库 ,例如: --with-http-proxy=http://192.168.3.8015:1080
  6. 可编译swow扩展的PHP可执行文件,例如: php prepare.php -swoole +swow
jingjingxyk commented 1 year ago

origin issue : https://github.com/swoole/swoole-cli/issues/273