@@ -82,51 +82,51 @@ cause issues for C developers today.
8282PHP build system is a collection of various files across the php-src repository:
8383
8484```sh
85- <php-src>/
86- └─ build/
87- ├─ ax_*.m4 # https://github.com/autoconf-archive/autoconf-archive
88- ├─ config-stubs # Adds extension and SAPI config*.m4 stubs to configure
89- ├─ config.guess # https://git.savannah.gnu.org/cgit/config.git
90- ├─ config.sub # https://git.savannah.gnu.org/cgit/config.git
91- ├─ genif.sh # Generator for the internal_functions* files
92- ├─ libtool.m4 # Forked https://git.savannah.gnu.org/cgit/libtool.git
93- ├─ ltmain.sh # Forked https://git.savannah.gnu.org/cgit/libtool.git
94- ├─ Makefile.global # Root Makefile template when configure is run
95- ├─ order_by_dep.awk # Used by genif.sh
96- ├─ php.m4 # PHP Autoconf macros
97- ├─ pkg.m4 # https://gitlab.freedesktop.org/pkg-config/pkg-config
98- ├─ print_include.awk # Used by genif.sh
99- └─ shtool # https://www.gnu.org/software/shtool/
100- └─ ext/
101- └─ bcmath/
102- └─ config.m4 # Extension' s Autoconf file
103- └─ date/
104- └─ config0.m4 # Suffix 0 priority adds file before other config.m4 extension files
105- └─ mysqlnd/
106- └─ config9.m4 # Suffix 9 priority adds file after other config.m4 files
107- └─ opcache/
108- └─ jit/
109- └─ Makefile.frag # Makefile fragment for OPcache Jit
110- └─ config.m4 # Autoconf file for OPcache extension
111- └─ main/
112- ├─ build-defs.h # Generated by configure
113- ├─ build-defs.h.in # Template for build definitions
114- ├─ php_config.h # Generated by configure
115- ├─ php_config.h.in # Generated header template by buildconf
116- └─ php_version.h # Generated by release managers using ` configure`
117- ├─ pear/
118- └─ sapi/
119- └─ cli/
120- └─ config.m4 # Autoconf M4 file for SAPI
121- ├─ scripts/
122- └─ TSRM/
123- ├─ threads.m4 # Autoconf macros for pthreads
124- └─ tsrm.m4 # Autoconf macros for TSRM
125- └─ Zend/
126- ├─ Makefile.frag # Makefile fragment for Zend engine
127- └─ Zend.m4 # Autoconf macros for Zend engine
128- ├─ buildconf # Wrapper for autoconf and autoheader tools
129- └─ configure.ac # Autoconf main input file for creating configure script
85+ 🗁 <php-src>
86+ └─🗁 build
87+ ├─📄 ax_*.m4 # https://github.com/autoconf-archive/autoconf-archive
88+ ├─📄 config-stubs # Adds extension and SAPI config*.m4 stubs to configure
89+ ├─📄 config.guess # https://git.savannah.gnu.org/cgit/config.git
90+ ├─📄 config.sub # https://git.savannah.gnu.org/cgit/config.git
91+ ├─📄 genif.sh # Generator for the internal_functions* files
92+ ├─📄 libtool.m4 # Forked https://git.savannah.gnu.org/cgit/libtool.git
93+ ├─📄 ltmain.sh # Forked https://git.savannah.gnu.org/cgit/libtool.git
94+ ├─📄 Makefile.global # Root Makefile template when configure is run
95+ ├─📄 order_by_dep.awk # Used by genif.sh
96+ ├─📄 php.m4 # PHP Autoconf macros
97+ ├─📄 pkg.m4 # https://gitlab.freedesktop.org/pkg-config/pkg-config
98+ ├─📄 print_include.awk # Used by genif.sh
99+ └─📄 shtool # https://www.gnu.org/software/shtool/
100+ └─🗁 ext
101+ └─🗁 bcmath
102+ └─📄 config.m4 # Extension' s Autoconf file
103+ └─🗁 date
104+ └─📄 config0.m4 # Suffix 0 priority adds file before other config.m4 extension files
105+ └─🗁 mysqlnd
106+ └─📄 config9.m4 # Suffix 9 priority adds file after other config.m4 files
107+ └─🗁 opcache
108+ └─🗁 jit
109+ └─📄 Makefile.frag # Makefile fragment for OPcache Jit
110+ └─📄 config.m4 # Autoconf file for OPcache extension
111+ └─🗁 main
112+ ├─📄 build-defs.h # Generated by configure
113+ ├─📄 build-defs.h.in # Template for build definitions
114+ ├─📄 php_config.h # Generated by configure
115+ ├─📄 php_config.h.in # Generated header template by buildconf
116+ └─📄 php_version.h # Generated by release managers using ` configure`
117+ ├─🗁 pear
118+ └─🗁 sapi
119+ └─🗁 cli
120+ └─📄 config.m4 # Autoconf M4 file for SAPI
121+ ├─🗁 scripts
122+ └─🗁 TSRM
123+ ├─📄 threads.m4 # Autoconf macros for pthreads
124+ └─📄 tsrm.m4 # Autoconf macros for TSRM
125+ └─🗁 Zend
126+ ├─📄 Makefile.frag # Makefile fragment for Zend engine
127+ └─📄 Zend.m4 # Autoconf macros for Zend engine
128+ ├─📄 buildconf # Wrapper for autoconf and autoheader tools
129+ └─📄 configure.ac # Autoconf main input file for creating configure script
130130` ` `
131131
132132# # 3. Build system diagram
@@ -379,33 +379,33 @@ build phase upon the `make` invocation.
379379Autotools-based PHP build system files related to ` bison` and ` re2c` :
380380
381381` ` ` sh
382- < php-src> /
383- └─ build/
384- └─ php.m4 # Autoconf macros with re2c and bison macros
385- └─ ext/
386- └─ json/
387- └─ Makefile.frag # Makefile fragment
388- └─ pdo/
389- └─ Makefile.frag # Makefile fragment
390- └─ pdo_mysql/
391- └─ Makefile.frag # Makefile fragment
392- └─ pdo_pgsql/
393- └─ Makefile.frag # Makefile fragment
394- └─ pdo_sqlite/
395- └─ Makefile.frag # Makefile fragment
396- └─ phar/
397- └─ Makefile.frag # Makefile fragment
398- └─ standard/
399- └─ Makefile.frag # Makefile fragment
400- └─ sapi/
401- └─ phpdbg/
402- └─ Makefile.frag # Makefile fragment
403- └─ scripts/
404- └─ dev/
405- └─ genfiles # Parser and lexer files generator helper
406- └─ Zend/
407- └─ Makefile.frag # Part of Makefile related to Zend files
408- └─ configure.ac # Minimum re2c and bison versions settings
382+ 🗁 < php-src>
383+ └─🗁 build
384+ └─📄 php.m4 # Autoconf macros with re2c and bison macros
385+ └─🗁 ext
386+ └─🗁 json
387+ └─📄 Makefile.frag # Makefile fragment
388+ └─🗁 pdo
389+ └─📄 Makefile.frag # Makefile fragment
390+ └─🗁 pdo_mysql
391+ └─📄 Makefile.frag # Makefile fragment
392+ └─🗁 pdo_pgsql
393+ └─📄 Makefile.frag # Makefile fragment
394+ └─🗁 pdo_sqlite
395+ └─📄 Makefile.frag # Makefile fragment
396+ └─🗁 phar
397+ └─📄 Makefile.frag # Makefile fragment
398+ └─🗁 standard
399+ └─📄 Makefile.frag # Makefile fragment
400+ └─🗁 sapi
401+ └─🗁 phpdbg
402+ └─📄 Makefile.frag # Makefile fragment
403+ └─🗁 scripts
404+ └─🗁 dev
405+ └─📄 genfiles # Parser and lexer files generator helper
406+ └─🗁 Zend
407+ └─📄 Makefile.frag # Part of Makefile related to Zend files
408+ └─📄 configure.ac # Minimum re2c and bison versions settings
409409` ` `
410410
411411# # 10. See more
0 commit comments