summaryrefslogtreecommitdiff
path: root/README.EXT_SKEL
blob: 1b4dc12ba3dffec2c3f1b37838f525f6a3b06ce7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
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.