-<?xml version="1.0" encoding="UTF-8" ?>
-<package version="2.0" xmlns="http://pear.php.net/dtd/package-2.0"
- xmlns:tasks="http://pear.php.net/dtd/tasks-1.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="
- http://pear.php.net/dtd/tasks-1.0
- http://pear.php.net/dtd/tasks-1.0.xsd
- http://pear.php.net/dtd/package-2.0
- http://pear.php.net/dtd/package-2.0.xsd">
+<?xml version="1.0" encoding="UTF-8"?>
+<package xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0" xsi:schemaLocation=" http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
<name>psi</name>
<channel>pecl.php.net</channel>
<summary>PHP System Interface / POSIX Standard Interface</summary>
PSI is a PHP extension, which provides a foreign function interface through libffi and/or libjit.
The acronym PSI may be read as:
-
PHP System Interface
- POSIX Standard Interface
-
-The latter because PSI can be configured to include declarations for most of the base definitions
-and system interfaces of POSIX.1-2008 (http://pubs.opengroup.org/onlinepubs/9699919799/).
]]></description>
<lead>
<name>Michael Wallner</name>
<email>mike@php.net</email>
<active>yes</active>
</lead>
- <date>2016-04-14</date>
+ <date>2016-11-23</date>
<version>
<release>0.1.0dev</release>
<api>0.1.0</api>
<file role="doc" name="README.md"/>
<file role="doc" name="THANKS"/>
<file role="doc" name="TODO"/>
+ <file role="src" name=".gdbinit"/>
<file role="src" name="config.m4"/>
<file role="src" name="Makefile.frag"/>
<file role="src" name="php_psi.h"/>
+ <file role="src" name="php_psi_predef.h.in"/>
+ <dir name="m4">
+ <dir name="ax">
+ <file role="src" name="ax_check_compile_flag.m4"/>
+ <file role="src" name="ax_check_sign.m4"/>
+ <file role="src" name="ax_pthread.m4"/>
+ </dir>
+ <dir name="psi">
+ <file role="src" name="psi.m4"/>
+ <file role="src" name="psi_const.m4"/>
+ <file role="src" name="psi_type.m4"/>
+ </dir>
+ </dir>
+ <dir name="psi.d">
+ <file role="src" name="arpa_inet.psi"/>
+ <file role="src" name="errno.psi"/>
+ <file role="src" name="getopt.psi"/>
+ <file role="src" name="glob.psi"/>
+ <file role="src" name="netdb.psi"/>
+ <file role="src" name="stat.psi"/>
+ <file role="src" name="stdio.psi"/>
+ <file role="src" name="stdlib.psi"/>
+ <file role="src" name="string.psi"/>
+ <file role="src" name="syslog.psi"/>
+ <file role="src" name="time.psi"/>
+ <file role="src" name="uname.psi"/>
+ </dir>
+ <dir name="scripts">
+ <file role="src" name="_include.php"/>
+ <file role="src" name="gen_calc_basic.php"/>
+ <file role="src" name="gen_calc_bin.php"/>
+ <file role="src" name="gen_calc_bool.php"/>
+ <file role="src" name="gen_calc_cast.php"/>
+ <file role="src" name="gen_calc_cmp.php"/>
+ <file role="src" name="gen_calc_oper.php"/>
+ <file role="src" name="gen_calc_unary.php"/>
+ <file role="src" name="gen_package_xml.php"/>
+ <file role="src" name="gen_travis_yml.php"/>
+ </dir>
<dir name="src">
- <file role="src" name="calc.c"/>
- <file role="src" name="calc.h"/>
+ <file role="src" name="builtin.c"/>
+ <file role="src" name="call.c"/>
<file role="src" name="context.c"/>
- <file role="src" name="context.h"/>
+ <file role="src" name="cpp.c"/>
+ <file role="src" name="cpp_tokiter.c"/>
<file role="src" name="data.c"/>
- <file role="src" name="data.h"/>
- <file role="src" name="engine.c"/>
- <file role="src" name="engine.h"/>
+ <file role="src" name="debug.c"/>
+ <file role="src" name="dump.c"/>
<file role="src" name="error.c"/>
- <file role="src" name="error.h"/>
<file role="src" name="libffi.c"/>
- <file role="src" name="libffi.h"/>
<file role="src" name="libjit.c"/>
- <file role="src" name="libjit.h"/>
<file role="src" name="marshal.c"/>
- <file role="src" name="marshal.h"/>
<file role="src" name="module.c"/>
<file role="src" name="parser.c"/>
- <file role="src" name="parser.h"/>
- <file role="src" name="parser.re"/>
- <file role="src" name="parser_def.h"/>
+ <file role="src" name="parser_scan.c"/>
+ <file role="src" name="parser_scan.re"/>
<file role="src" name="parser_proc.c"/>
- <file role="src" name="parser_proc.h"/>
- <file role="src" name="parser_proc.inc"/>
+ <file role="src" name="plist.c"/>
<file role="src" name="token.c"/>
+ <file role="src" name="validate.c"/>
+ <file role="src" name="builtin.h"/>
+ <file role="src" name="calc.h"/>
+ <file role="src" name="call.h"/>
+ <file role="src" name="context.h"/>
+ <file role="src" name="cpp.h"/>
+ <file role="src" name="data.h"/>
+ <file role="src" name="debug.h"/>
+ <file role="src" name="dl.h"/>
+ <file role="src" name="dump.h"/>
+ <file role="src" name="error.h"/>
+ <file role="src" name="libffi.h"/>
+ <file role="src" name="libffi_compat.h"/>
+ <file role="src" name="libjit.h"/>
+ <file role="src" name="marshal.h"/>
+ <file role="src" name="parser.h"/>
+ <file role="src" name="parser_proc.h"/>
+ <file role="src" name="plist.h"/>
<file role="src" name="token.h"/>
<file role="src" name="types.h"/>
+ <file role="src" name="validate.h"/>
+ <file role="src" name="parser_proc_grammar.y"/>
+ <dir name="calc">
+ <file role="src" name="basic.h"/>
+ <file role="src" name="bin.h"/>
+ <file role="src" name="bool.h"/>
+ <file role="src" name="cast.h"/>
+ <file role="src" name="cmp.h"/>
+ <file role="src" name="oper.h"/>
+ <file role="src" name="unary.h"/>
+ </dir>
<dir name="types">
- <file role="src" name="const_type.c"/>
- <file role="src" name="const_type.h"/>
- <file role="src" name="constant.c"/>
- <file role="src" name="constant.h"/>
- <file role="src" name="constants.c"/>
- <file role="src" name="constants.h"/>
+ <file role="src" name="assert_stmt.c"/>
+ <file role="src" name="const.c"/>
+ <file role="src" name="cpp_exp.c"/>
+ <file role="src" name="cpp_macro_call.c"/>
+ <file role="src" name="cpp_macro_decl.c"/>
<file role="src" name="decl.c"/>
- <file role="src" name="decl.h"/>
<file role="src" name="decl_abi.c"/>
- <file role="src" name="decl_abi.h"/>
<file role="src" name="decl_arg.c"/>
- <file role="src" name="decl_arg.h"/>
- <file role="src" name="decl_args.c"/>
- <file role="src" name="decl_args.h"/>
- <file role="src" name="decl_callinfo.h"/>
<file role="src" name="decl_enum.c"/>
- <file role="src" name="decl_enum.h"/>
<file role="src" name="decl_enum_item.c"/>
- <file role="src" name="decl_enum_item.h"/>
- <file role="src" name="decl_enum_items.c"/>
- <file role="src" name="decl_enum_items.h"/>
- <file role="src" name="decl_enums.c"/>
- <file role="src" name="decl_enums.h"/>
+ <file role="src" name="decl_extvar.c"/>
<file role="src" name="decl_file.c"/>
- <file role="src" name="decl_file.h"/>
- <file role="src" name="decl_libs.c"/>
- <file role="src" name="decl_libs.h"/>
<file role="src" name="decl_struct.c"/>
- <file role="src" name="decl_struct.h"/>
- <file role="src" name="decl_struct_layout.c"/>
- <file role="src" name="decl_struct_layout.h"/>
- <file role="src" name="decl_structs.c"/>
- <file role="src" name="decl_structs.h"/>
<file role="src" name="decl_type.c"/>
- <file role="src" name="decl_type.h"/>
- <file role="src" name="decl_typedefs.c"/>
- <file role="src" name="decl_typedefs.h"/>
<file role="src" name="decl_union.c"/>
- <file role="src" name="decl_union.h"/>
- <file role="src" name="decl_unions.c"/>
- <file role="src" name="decl_unions.h"/>
<file role="src" name="decl_var.c"/>
- <file role="src" name="decl_var.h"/>
- <file role="src" name="decl_vars.c"/>
- <file role="src" name="decl_vars.h"/>
- <file role="src" name="decls.c"/>
- <file role="src" name="decls.h"/>
- <file role="src" name="free_call.c"/>
- <file role="src" name="free_call.h"/>
- <file role="src" name="free_calls.c"/>
- <file role="src" name="free_calls.h"/>
+ <file role="src" name="free_exp.c"/>
<file role="src" name="free_stmt.c"/>
- <file role="src" name="free_stmt.h"/>
<file role="src" name="impl.c"/>
- <file role="src" name="impl.h"/>
<file role="src" name="impl_arg.c"/>
- <file role="src" name="impl_arg.h"/>
- <file role="src" name="impl_args.c"/>
- <file role="src" name="impl_args.h"/>
<file role="src" name="impl_def_val.c"/>
- <file role="src" name="impl_def_val.h"/>
<file role="src" name="impl_func.c"/>
- <file role="src" name="impl_func.h"/>
- <file role="src" name="impl_stmt.c"/>
- <file role="src" name="impl_stmt.h"/>
- <file role="src" name="impl_stmts.c"/>
- <file role="src" name="impl_stmts.h"/>
<file role="src" name="impl_type.c"/>
+ <file role="src" name="impl_var.c"/>
+ <file role="src" name="layout.c"/>
+ <file role="src" name="let_callback.c"/>
+ <file role="src" name="let_calloc.c"/>
+ <file role="src" name="let_exp.c"/>
+ <file role="src" name="let_func.c"/>
+ <file role="src" name="let_stmt.c"/>
+ <file role="src" name="num_exp.c"/>
+ <file role="src" name="number.c"/>
+ <file role="src" name="return_exp.c"/>
+ <file role="src" name="return_stmt.c"/>
+ <file role="src" name="set_exp.c"/>
+ <file role="src" name="set_func.c"/>
+ <file role="src" name="set_stmt.c"/>
+ <file role="src" name="assert_stmt.h"/>
+ <file role="src" name="const.h"/>
+ <file role="src" name="cpp_exp.h"/>
+ <file role="src" name="cpp_macro_call.h"/>
+ <file role="src" name="cpp_macro_decl.h"/>
+ <file role="src" name="decl.h"/>
+ <file role="src" name="decl_abi.h"/>
+ <file role="src" name="decl_arg.h"/>
+ <file role="src" name="decl_enum.h"/>
+ <file role="src" name="decl_enum_item.h"/>
+ <file role="src" name="decl_extvar.h"/>
+ <file role="src" name="decl_file.h"/>
+ <file role="src" name="decl_struct.h"/>
+ <file role="src" name="decl_type.h"/>
+ <file role="src" name="decl_union.h"/>
+ <file role="src" name="decl_var.h"/>
+ <file role="src" name="free_exp.h"/>
+ <file role="src" name="free_stmt.h"/>
+ <file role="src" name="impl.h"/>
+ <file role="src" name="impl_arg.h"/>
+ <file role="src" name="impl_def_val.h"/>
+ <file role="src" name="impl_func.h"/>
<file role="src" name="impl_type.h"/>
<file role="src" name="impl_val.h"/>
- <file role="src" name="impl_var.c"/>
<file role="src" name="impl_var.h"/>
- <file role="src" name="impls.c"/>
- <file role="src" name="impls.h"/>
- <file role="src" name="let_callback.c"/>
+ <file role="src" name="layout.h"/>
<file role="src" name="let_callback.h"/>
- <file role="src" name="let_calloc.c"/>
<file role="src" name="let_calloc.h"/>
- <file role="src" name="let_func.c"/>
+ <file role="src" name="let_exp.h"/>
<file role="src" name="let_func.h"/>
- <file role="src" name="let_stmt.c"/>
<file role="src" name="let_stmt.h"/>
- <file role="src" name="let_val.c"/>
- <file role="src" name="let_val.h"/>
- <file role="src" name="let_vals.c"/>
- <file role="src" name="let_vals.h"/>
- <file role="src" name="num_exp.c"/>
<file role="src" name="num_exp.h"/>
- <file role="src" name="return_stmt.c"/>
+ <file role="src" name="number.h"/>
+ <file role="src" name="return_exp.h"/>
<file role="src" name="return_stmt.h"/>
- <file role="src" name="set_func.c"/>
+ <file role="src" name="set_exp.h"/>
<file role="src" name="set_func.h"/>
- <file role="src" name="set_stmt.c"/>
<file role="src" name="set_stmt.h"/>
- <file role="src" name="set_value.c"/>
- <file role="src" name="set_value.h"/>
- <file role="src" name="set_values.c"/>
- <file role="src" name="set_values.h"/>
</dir>
</dir>
<dir name="tests">
+ <dir name="arpa_inet">
+ <file role="test" name="inet001.phpt"/>
+ <file role="test" name="inet002.phpt"/>
+ <file role="test" name="ntoh001.phpt"/>
+ </dir>
+ <dir name="calc">
+ <file role="test" name="calc001.phpt"/>
+ <file role="test" name="calc.psi"/>
+ </dir>
+ <dir name="div">
+ <file role="test" name="div001.phpt"/>
+ <file role="test" name="ldiv001.phpt"/>
+ <file role="test" name="lldiv001.phpt"/>
+ </dir>
+ <dir name="getopt">
+ <file role="test" name="getopt001.phpt"/>
+ <file role="test" name="getopt002.phpt"/>
+ </dir>
+ <dir name="glob">
+ <file role="test" name="glob001.phpt"/>
+ <file role="test" name="glob002.phpt"/>
+ <file role="test" name="glob003.phpt"/>
+ <file role="test" name="glob004.phpt"/>
+ </dir>
+ <dir name="iconv">
+ <file role="test" name="iconv001.phpt"/>
+ <file role="test" name="iconv002.phpt"/>
+ <file role="test" name="iconv.psi"/>
+ </dir>
+ <dir name="idn">
+ <file role="test" name="idn001.phpt"/>
+ <file role="test" name="idn002.phpt"/>
+ <file role="test" name="idn003.phpt"/>
+ <file role="test" name="idn004.phpt"/>
+ <file role="test" name="idn.psi"/>
+ </dir>
+ <dir name="ndbm">
+ <file role="test" name="ndbm001.phpt"/>
+ <file role="test" name="gdbm.psi"/>
+ <file role="test" name="ndbm.psi"/>
+ </dir>
+ <dir name="netdb">
+ <file role="test" name="gai001.phpt"/>
+ </dir>
+ <dir name="parser">
+ <file role="test" name="cpp001.phpt"/>
+ <file role="test" name="cpp002.phpt"/>
+ <file role="test" name="cpp003.phpt"/>
+ <file role="test" name="cpp004.phpt"/>
+ <file role="test" name="dump001.phpt"/>
+ <file role="test" name="enum001.phpt"/>
+ <file role="test" name="validate001.phpt"/>
+ <file role="test" name="validate002.phpt"/>
+ <file role="test" name="validate003.phpt"/>
+ <file role="test" name="validate004.phpt"/>
+ <file role="test" name="validate005.phpt"/>
+ <file role="test" name="validate006.phpt"/>
+ <file role="test" name="validate007.phpt"/>
+ <dir name="cpp003">
+ <file role="test" name="prescan.psi"/>
+ </dir>
+ <dir name="cpp004">
+ <file role="test" name="builtins.psi"/>
+ </dir>
+ </dir>
+ <dir name="pipe">
+ <file role="test" name="pipe001.phpt"/>
+ <file role="test" name="pipe.psi"/>
+ </dir>
+ <dir name="sqlite">
+ <file role="test" name="sqlite001.db"/>
+ <file role="test" name="sqlite001.phpt"/>
+ <file role="test" name="sqlite.psi"/>
+ </dir>
+ <dir name="stat">
+ <file role="test" name="stat001.phpt"/>
+ <file role="test" name="stat002.phpt"/>
+ </dir>
+ <dir name="stdio">
+ <file role="test" name="fopen001.phpt"/>
+ <file role="test" name="printf001.phpt"/>
+ </dir>
+ <dir name="time">
+ <file role="test" name="tzname001.phpt"/>
+ <file role="test" name="asc_gmtime001.phpt"/>
+ <file role="test" name="gettimeofday001.phpt"/>
+ <file role="test" name="nanosleep001.phpt"/>
+ <file role="test" name="times001.phpt"/>
+ </dir>
+ <dir name="uname">
+ <file role="test" name="uname001.phpt"/>
+ <file role="test" name="uname002.phpt"/>
+ </dir>
+ <dir name="yaml">
+ <file role="test" name="yaml001.phpt"/>
+ <file role="test" name="yaml.psi"/>
+ </dir>
</dir>
</dir>
</contents>
<dependencies>
<required>
<php>
- <min>7.0.0-dev</min>
+ <min>7.2.0-dev</min>
</php>
<pearinstaller>
<min>1.4.1</min>
<providesextension>psi</providesextension>
<extsrcrelease>
</extsrcrelease>
- <changelog />
+ <changelog/>
</package>