Skip to content

Commit c593d97

Browse files
committed
Add documentation for extensions and SAPIs
At the time of writing, documentation seems much easier handled if it's simply bundled into the CMake files. This adds Markdown-based documentation for extensions and SAPIs similar to other CMake-based files in this repository. It can be also refactored in the future if needed or when such need comes.
1 parent 9ea3198 commit c593d97

File tree

85 files changed

+2404
-68
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+2404
-68
lines changed

cmake/cmake/modules/PHP/CheckGethostbynameR.cmake

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ INTERFACE library:
2828
2929
* `PHP::CheckGethostbynameR`
3030
Created when additional system library needs to be linked.
31-
3231
#]=============================================================================]
3332

3433
include_guard(GLOBAL)

cmake/ext/bcmath/CMakeLists.txt

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
1+
#[=============================================================================[
2+
# The bcmath extension
3+
4+
Configure the `bcmath` extension.
5+
6+
This extension provides Basic Calculator (BC) style precision math support.
7+
8+
## EXT_BCMATH
9+
10+
* Default: `OFF`
11+
* Values: `ON|OFF`
12+
13+
Enable the extension.
14+
15+
## EXT_BCMATH_SHARED
16+
17+
* Default: `OFF`
18+
* Values: `ON|OFF`
19+
20+
Build extension as shared.
21+
#]=============================================================================]
22+
123
project(
224
PhpExtensionBcMath
325
LANGUAGES C
@@ -11,7 +33,7 @@ option(EXT_BCMATH "Enable the bcmath extension" OFF)
1133
add_feature_info(
1234
"ext/bcmath"
1335
EXT_BCMATH
14-
"Basic Calculator (BC) style precision math functions support"
36+
"Basic Calculator (BC) style precision math support"
1537
)
1638

1739
cmake_dependent_option(

cmake/ext/bz2/CMakeLists.txt

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,26 @@
1+
#[=============================================================================[
2+
# The bz2 extension
3+
4+
Configure the `bz2` extension.
5+
6+
This extension provides support for reading and writing BZip2 (.bz2) compressed
7+
files.
8+
9+
## EXT_BZ2
10+
11+
* Default: `OFF`
12+
* Values: `ON|OFF`
13+
14+
Enable the extension.
15+
16+
## EXT_BZ2_SHARED
17+
18+
* Default: `OFF`
19+
* Values: `ON|OFF`
20+
21+
Build extension as shared.
22+
#]=============================================================================]
23+
124
project(
225
PhpExtensionBz2
326
LANGUAGES C

cmake/ext/calendar/CMakeLists.txt

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
1+
#[=============================================================================[
2+
# The calendar extension
3+
4+
Configure the `calendar` extension.
5+
6+
This extension provides support for calendar conversion.
7+
8+
## EXT_CALENDAR
9+
10+
* Default: `OFF`
11+
* Values: `ON|OFF`
12+
13+
Enable the extension.
14+
15+
## EXT_CALENDAR_SHARED
16+
17+
* Default: `OFF`
18+
* Values: `ON|OFF`
19+
20+
Build extension as shared.
21+
#]=============================================================================]
22+
123
project(
224
PhpExtensionCalendar
325
LANGUAGES C

cmake/ext/com_dotnet/CMakeLists.txt

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,33 @@
1+
#[=============================================================================[
2+
# The com_dotnet extension
3+
4+
Configure the `com_dotnet` extension.
5+
6+
This extension provides the Component Object Model (COM) and .NET support.
7+
8+
> [!NOTE]
9+
> This extension is available only when the target system is Windows.
10+
11+
## EXT_COM_DOTNET
12+
13+
* Default: `ON`
14+
* Values: `ON|OFF`
15+
16+
Enable the extension.
17+
18+
## EXT_COM_DOTNET_SHARED
19+
20+
* Default: `OFF`
21+
* Values: `ON|OFF`
22+
23+
Build extension as shared.
24+
#]=============================================================================]
25+
126
project(
227
PhpExtensionBz2
328
LANGUAGES C
429
)
530

6-
# Available only for Windows system.
731
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")
832
return()
933
endif()

cmake/ext/ctype/CMakeLists.txt

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,26 @@
1+
#[=============================================================================[
2+
# The ctype extension
3+
4+
Configure the `ctype` extension.
5+
6+
This extension provides support for character type checking according to the
7+
locale.
8+
9+
## EXT_CTYPE
10+
11+
* Default: `ON`
12+
* Values: `ON|OFF`
13+
14+
Enable the extension.
15+
16+
## EXT_CTYPE_SHARED
17+
18+
* Default: `OFF`
19+
* Values: `ON|OFF`
20+
21+
Build extension as shared.
22+
#]=============================================================================]
23+
124
project(
225
PhpExtensionCtype
326
LANGUAGES C

cmake/ext/curl/CMakeLists.txt

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
1+
#[=============================================================================[
2+
# The curl extension
3+
4+
Configure the `curl` extension.
5+
6+
This extension provides support for using CURL - Client URL Library.
7+
8+
## EXT_CURL
9+
10+
* Default: `OFF`
11+
* Values: `ON|OFF`
12+
13+
Enable the extension.
14+
15+
## EXT_CURL_SHARED
16+
17+
* Default: `OFF`
18+
* Values: `ON|OFF`
19+
20+
Build extension as shared.
21+
#]=============================================================================]
22+
123
project(
224
PhpExtensionCurl
325
LANGUAGES C

cmake/ext/date/CMakeLists.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
#[=============================================================================[
2+
# The date extension
3+
4+
Configure the `date` extension.
5+
6+
This extension provides date and time support.
7+
8+
This extension is always enabled.
9+
#]=============================================================================]
10+
111
project(
212
PhpExtensionDate
313
LANGUAGES C

cmake/ext/dba/CMakeLists.txt

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,114 @@
1+
#[=============================================================================[
2+
# The dba extension
3+
4+
Configure the `dba` extension.
5+
6+
This extension provides the database (dbm-style) abstraction layer support.
7+
8+
## EXT_DBA
9+
10+
* Default: `OFF`
11+
* Values: `ON|OFF`
12+
13+
Enable the PHP `dba` extension.
14+
15+
## EXT_DBA_SHARED
16+
17+
* Default: `OFF`
18+
* Values: `ON|OFF`
19+
20+
Build extension as shared library.
21+
22+
## EXT_DBA_CDB
23+
24+
* Default: `ON`
25+
* Values: `ON|OFF`
26+
27+
Enable the bundled constant databases (cdb) support.
28+
29+
## EXT_DBA_CDB_EXTERNAL
30+
31+
* Default: `OFF`
32+
* Values: `ON|OFF`
33+
34+
Use external (system) cdb library instead of the bundled sources.
35+
36+
> [!WARNING]
37+
> At the time of writing external cdb library installed on \*nix systems is most
38+
> likely tinycdb, which isn't supported by PHP. Recommendation is to not enable
39+
> this option and use the bundled cdb library that comes with PHP sources.
40+
41+
## EXT_DBA_DB
42+
43+
* Default: `OFF`
44+
* Values: `ON|OFF`
45+
46+
Enable the Oracle Berkeley DB support.
47+
48+
## EXT_DBA_DB1
49+
50+
* Default: `OFF`
51+
* Values: `ON|OFF`
52+
53+
Enable the Oracle Berkeley DB 1.x support/emulation.
54+
55+
## EXT_DBA_DBM
56+
57+
* Default: `OFF`
58+
* Values: `ON|OFF`
59+
60+
Enable the legacy (original) Berkeley DB style support.
61+
62+
## EXT_DBA_FLATFILE
63+
64+
* Default: `ON`
65+
* Values: `ON|OFF`
66+
67+
Enable the bundled flat-file DBA handler support.
68+
69+
## EXT_DBA_GDBM
70+
71+
* Default: `OFF`
72+
* Values: `ON|OFF`
73+
74+
Enable the GNU dbm (GDBM) support.
75+
76+
## EXT_DBA_INIFILE
77+
78+
* Default: `ON`
79+
* Values: `ON|OFF`
80+
81+
Enable the bundled INI-file DBA handler support.
82+
83+
## EXT_DBA_LMDB
84+
85+
* Default: `OFF`
86+
* Values: `ON|OFF`
87+
88+
Enable the Lightning Memory-Mapped Database (LMDB) support.
89+
90+
## EXT_DBA_NDBM
91+
92+
* Default: `OFF`
93+
* Values: `ON|OFF`
94+
95+
Enable the ndbm support.
96+
97+
## EXT_DBA_QDBM
98+
99+
* Default: `OFF`
100+
* Values: `ON|OFF`
101+
102+
Enable the QDBM support.
103+
104+
## EXT_DBA_TCADB
105+
106+
* Default: `OFF`
107+
* Values: `ON|OFF`
108+
109+
Enable the Tokyo Cabinet abstract DB support.
110+
#]=============================================================================]
111+
1112
project(
2113
PhpExtensionDba
3114
LANGUAGES C

cmake/ext/dl_test/CMakeLists.txt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,21 @@
1+
#[=============================================================================[
2+
# The dl_test extension
3+
4+
Configure the `dl_test` extension.
5+
6+
This extension provides support for testing PHP `dl()` function relevant when
7+
running PHP tests during development.
8+
9+
## EXT_DL_TEST
10+
11+
* Default: `OFF`
12+
* Values: `ON|OFF`
13+
14+
Enable the extension.
15+
16+
This extension is always built as shared when enabled.
17+
#]=============================================================================]
18+
119
project(
220
PhpExtensionDlTest
321
LANGUAGES C

0 commit comments

Comments
 (0)