mirror of
https://github.com/php/php-src.git
synced 2024-11-24 02:15:04 +08:00
1ad08256f3
This patch adds missing newlines, trims multiple redundant final newlines into a single one, and trims redundant leading newlines. According to POSIX, a line is a sequence of zero or more non-' <newline>' characters plus a terminating '<newline>' character. [1] Files should normally have at least one final newline character. C89 [2] and later standards [3] mention a final newline: "A source file that is not empty shall end in a new-line character, which shall not be immediately preceded by a backslash character." Although it is not mandatory for all files to have a final newline fixed, a more consistent and homogeneous approach brings less of commit differences issues and a better development experience in certain text editors and IDEs. [1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206 [2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2 [3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
44 lines
1.3 KiB
Plaintext
44 lines
1.3 KiB
Plaintext
WHAT IT IS
|
|
|
|
It's a tool for automatically creating the basic framework for a PHP extension.
|
|
|
|
HOW TO USE IT
|
|
|
|
Very simple. First, change to the ext/ directory of the PHP sources. Then
|
|
run the following
|
|
|
|
php ext_skel.php --ext extension_name
|
|
|
|
and everything you need will be placed in directory ext/extension_name.
|
|
|
|
If you don't need to test the existence of any external header files,
|
|
libraries or functions in them, the extension is ready to be compiled in
|
|
PHP. To compile the extension, run the following:
|
|
|
|
./buildconf; ./configure --enable-extension_name; make
|
|
|
|
The definition of PHP_extension_NAME_VERSION will be present in the
|
|
php_extension_name.h and injected into the zend_extension_entry definition. This
|
|
is required by the PECL website for the version string conformity checks
|
|
against package.xml
|
|
|
|
SOURCE AND HEADER FILE NAME
|
|
|
|
The ext_skel.php script generates 'extension_name.c' and 'php_extension_name.h'
|
|
as the main source and header files. Keep these names.
|
|
|
|
extension functions (User functions) must be named
|
|
|
|
extension_name_function()
|
|
|
|
When you need to expose extension functions to other extensions, expose functions
|
|
strictly needed by others. Exposed internal function must be named
|
|
|
|
php_extension_name_function()
|
|
|
|
See also CODING_STANDARDS.
|
|
|
|
OTHER OPTIONS
|
|
|
|
Run php ext_skel.php --help to see the available options.
|